VxRail hiper bütünleşik altyapısı ile basit yönetim ve otomatik kontrol imkânı sunarken VxVerify gibi araçlarla sistem tutarlılığını denetlemeyi hedefler. Ancak her kontrol aracı gibi VxVerify da zaman zaman yanlış alarmlar üretebilir.
Bu makalemde vCenter sunucusunun NTP sunucularına ulaşamadığını iddia eden ntp_reach: NTP not reachable from vCenter hatasını ve bu uyarının gerçek bir sistem arızası mı yoksa sahte bir alarm mı olduğunu nasıl ayırt edebileceğinizi tüm detaylarıyla ele alacağız.
VxVerify çalıştırıldığında aşağıdaki gibi bir tablo ile karşılaşabilirsiniz.
#========================#======#=========#====================================================================#==============#
| Hostname / Category |Status Dell_KB | Warnings or Failures, unless tests Passed ; Product S.N. |
#========================#======#=========#====================================================================#==============#
| vCenter_root | Failure 296462| ntp_reach: NTP not reachable from vCenter |
Bu satırda belirtilen durum vCenter sunucusunun NTP sunucularıyla bağlantı kuramadığı anlamına gelir. Ancak bu her zaman doğru değildir. VxVerify bu testi SSH ile bağlandığı vCenter’da ntpq komutu üzerinden reach değerini okuyarak yapar. Eğer komut çalıştırılamazsa ya da shell ortamı uyumsuzsa hatalı bir uyarı üretilebilir.
Adım Adım Gerçek Durumu Analiz Etme
1. vCenter ve VxRail Manager Üzerinden NTP Bağlantı Testi
İlk olarak gerçekten NTP sunucularına erişim sağlanıp sağlanmadığını aşağıdaki şekilde test ediniz.
- Hem vCenter Server Appliance (VCSA) hem de VxRail Manager sunucusuna
rootkullanıcısı ile SSH bağlantısı kurun. - Aşağıdaki komutu çalıştırınız.
ntpq -p
Hatalı (Problemli) Çıktı Örneği:
remote refid st t when poll reach delay offset jitter
======================================================================================
0.tr.pool.ntp.org .INIT. 16 u - 64 0 0.000 0.000 0.000
1.tr.pool.ntp.org .INIT. 16 u - 64 0 0.000 0.000 0.000
Burada reach sütununun değeri 0 olarak görünüyor. Bu sistemin henüz NTP sunucularına ulaşamadığını veya konfigürasyonun hatalı olduğunu gösterir.
Sağlıklı (Başarılı) Çıktı Örneği:
remote refid st t when poll reach delay offset jitter
========================================================================================
0.tr.pool.ntp.org 195.87.197.172 2 u 6 128 377 0.123 0.534 0.178
1.tr.pool.ntp.org 193.140.100.100 2 u 32 128 377 0.117 0.624 0.190
reach değeri 377 olan bu çıktı sistemin NTP sunucularıyla aktif olarak iletişim kurduğunu gösterir. Gecikme (delay), sapma (offset) ve titreme (jitter) değerleri de oldukça sağlıklıdır. Bu durumda VxVerify’ın hatası gerçek dışı bir alarmdır.
Neden Bu Hata Görülüyor? (VxVerify Bug)
VxVerify, ntpq çıktısını doğru şekilde okuyabilmek için vCenter üzerinde bash shell ortamına ihtiyaç duyar. Ancak VCSA’lar varsayılan olarak “Appliance Shell” ile çalışır. Bu durumda:
ntpqkomutu çalıştırılamaz ya da hatalı döner,- VxVerify sistemde NTP problemi olduğunu varsayar,
- Gerçekte bağlantı olsa bile “unreachable” hatası verir.
Çözüm: vCenter Shell Ortamını Bash’e Geçirme
Bu sorunu düzeltmek için vCenter sunucusunda geçici olarak root kullanıcısını bash shell‘e geçirmek yeterlidir:
chsh -s /bin/bash root
Oturumu kapatın ve tekrar bağlanın.
ntpq -p komutunu tekrar çalıştırarak çıktıyı kontrol edin.
reach = 377 ise her şey yolunda demektir. Artık VxVerify yeniden çalıştırılabilir.
Not: Dilerseniz işlem sonrasında shell ortamını yeniden “Appliance Shell” olarak geri alabilirsiniz:
chsh -s /bin/appliancesh root