VPN arkasında NFS: açılışta bağlama mı, istek üzerine otomatik bağlama mı?
Açılışta bağlama, henüz açılmamış olabilecek bir tünele takılır. Otomatik bağlama ilk erişimi bekler ve VPN bağımlılığı tetikleyiciye değil, bağlama birimine aittir.
İki yapılandırma aynı sorunu çözer ve zıt yönlerde başarısız olur. Paylaşımı açılışta bağlamak her hizmete ya orada olan ya da açılışın neden durduğunu açıklayan bir dosya sistemi verir. İstek üzerine otomatik bağlama makineye hızlı bir açılış verir ve beklemeyi yola ilk dokunan kişiye devreder. Bir VPN arkasında ikincisi genellikle daha iyi bir takastır ve nedeni tünelin açılış sırasının göremediği bir düzen dayatmasıdır.
Açılışta bağlama ve otomatik bağlama
Açılışta bağlamayı düşünmek kolaydır. Dosya sistemi hedefi bağlamayı bekler, ona bağımlılık bildiren hizmetler sonra başlar ve sunucuya erişilemiyorsa makine seçeneklere göre ya bekler ya başarısız olur. Aşağıdaki her şey o tek kararı devralır.
Otomatik bağlama bunu tersine çevirir. Yol hemen vardır, gerçek bağlama bir şey onu açtığında gerçekleşir ve erken başlayan hizmetler henüz açılmamış bir tünele takılmaz.
Karşılaştırma gecikmeyi kimin emmesi gerektiğine iner. Kullanıcı çalışabilmeden önce paylaşıma ihtiyaç duyan bir iş istasyonu muhtemelen beklemelidir. Çantada açılan bir dizüstü ya da paylaşımı isteğe bağlı olan bir sunucu beklememelidir.
Hiçbir seçenek eksik bir yolu düzeltmez. İkisi de yalnızca arızanın ne zaman gözlemleneceğine karar verir.
fstab satırı, seçenek seçenek
Var olan bir OpenVPN istemci örneğinin [email protected], sunucunun files.corp.example ve bağlama noktasının /mnt/work olduğunu varsayalım. Üçünü de kendi sitenizin yetkili değerleriyle değiştirin. Çalışan bir satır şöyle görünür:
files.corp.example:/export/work /mnt/work nfs _netdev,nofail,x-systemd.automount,[email protected],x-systemd.mount-timeout=30s 0 0
_netdev bağlamayı ağ gerektiren olarak işaretler ve hiçbir tünel adı vermez. nofail paylaşımı normal dosya sistemi hedefi için isteğe bağlı tutar. x-systemd.automount hemen bağlamak yerine istek üzerine tetikleyici oluşturur.
x-systemd.requires= bağlama denemesini VPN birimine bağlayan kısımdır ve tetikleyiciye değil, bağlama işlemine aittir. Geniş bir düzeni otomatik bağlama biriminin kendisine koymak, insanların sonra systemd'nin kimsenin iki kez okumadığı bir dille şikayet ettiği döngüler yaratma yoludur.
x-systemd.mount-timeout=30s ilk bağlama komutunu sınırlar. Sonrasında olan hiçbir şeyi sınırlamaz ve bu, bu seçenekle ilgili en yaygın yanlış anlamadır.
«Başladı» ne anlama gelmez
Adını verdiğiniz VPN birimi için etkin olmanın ne anlama geldiğini denetleyin. Bir tünel hizmeti, dosya sunucusuna giden yol var olmadan ya da özel ad çözülmeden kendini başlamış olarak bildirebilir ve ondan sonra sıralamak size hiçbir şey kazandırmaz. Neredeyse her başarısız deneme bu boşlukta yaşar. Birim durumu yerine yola ve çözümleyiciye bakmadıkça görünmez de olur.
Varsa, bağlantı sahibinin kendi hazır olma sinyalini ek önkoşul olarak kullanın. Sabit bir uyku, masanızda çalışan ve daha yavaş bir ağda ya da yeniden bağlanmadan sonra başarısız olan bir tahmindir.
Örnek yoldaki üretilmiş birimleri inceleyin: mnt-work.automount ve mnt-work.mount. Gözden geçirilmiş bir fstab değişikliğinden sonra systemd'yi yeniden yükleyin ve ilgisiz girdileri çalıştıran geniş bir bağlama komutu yerine o birimleri doğrudan yönetin.
Buraya bir uyarı daha girer. Açılışta /mnt/work öğesine dokunan bir hizmet hâlâ bağlamayı tetikler ve hâlâ onu bekler, bu yüzden paylaşımı isteğe bağlı olarak işaretlemek her uygulamayı sabırlı yapmaz.
Bağlamadan sonrası başka bir arızadır
NFS bağlandıktan sonra, dosya sisteminin yeniden deneme ve kurtarma davranışı daha sonraki bir kesintinin bir okumaya ya da yazmaya ne yapacağını belirler. Ayarladığınız bağlama zaman aşımının buna etkisi yoktur.
Yumuşak bağlama bazı beklemeleri kısaltır ve hata anlam bilimini değiştirir; hedef daha hızlı bir açılış olduğunda kolayca gözden kaçan veri bütünlüğü sonuçlarıyla birlikte. Açılıştan iki saniye kazanmak için onu seçmek nadiren iyi bir takastır. Gereksinim gerçekten kesinti sırasında sınırlı bir işlemse, bu uygulama düzeyinde bir karardır, fstab bayrağı değil.
Tünel düştüğünde yazmanın ortasında olan bir sürece ne olması gerektiğine karar verin ve yazın. O yanıt herhangi bir seçenek dizisinden daha yararlıdır.
Bir değil dört durumu deneyin
Tünel erişilebilirken normal açılış kolay durumdur ve neredeyse hiçbir şey kanıtlamaz. Dizinin doğru yazıldığını doğrular ve başka bir şeyi değil. VPN yokken ilk erişimi, sonra tünel açıldığında toparlanmayı, sonra başarılı bir bağlamadan sonra denetimli bir kesintiyi deneyin.
Dört durum, dört gözlem ve notlar fstab girdisinin yanına gider. Sonraki kişi tersine mühendislik yapması gereken bir yapılandırma yerine davranışı devralır.