vCenter servisleri başlatırken ws1a servisi sürekli starting veya hiç başlatma aşamasına giremiyorsa aşağıda paylaşmış olduğum sorunu yaşıyor olabilirsiniz.
Sorunun çözümü için loglarınız birebir uyuyor mu onları kontrol edelim.
cd /var/log/vmware/vc-ws1a-broker
less federation-service.log
Constructor threw exception; nested exception is java.lang.IllegalStateException: failed to create a child event loop failed to create a child event loop
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sessionTokenGenerator': Unsatisfied dependency expressed through field 'tokenPersistenceService'; nested exception is
Caused by: io.netty.channel.ChannelException: failed to open a new selector
Caused by: java.io.IOException: Too many open files
Eğer yukarıdaki logları görüyorsanız; vc-ws1a-broker servisi üzerinde, file description max seviyeye ulaştıktan sonra yeni bir process geldiği zaman FD bunları açamıyor olup servisin crash olmasına neden olmaktadır.
Şu an için bu sorunun kalıcı bir çözümü bulunmuyor olup geçici çözümü için aşağıdaki paylaşmış olduğum workaround ile FD limitini arttırarak servisi restart edebilirsiniz.
Workaround/Geçici Çözüm
vi /storage/containers/vc-ws1a-broker/123asfsd4123safdsgf3251231t6425qdf/config.json
//Sarı boyalı kısım sizde farklı olabilir.
"noNewPrivileges": true,
"rlimits": [
"hard": 1024,
"soft": 1024,
"type": "RLIMIT_NOFILE"
Yukarıda 1024 yazan yerleri 2048 olarak değiştiriyoruz.
Servisleri Restart ediyoruz.
service-control –-all –-stop
service-control –-all --start
Servisler başladıktan sonra aşağıdaki komutu çalıştırıyoruz ve yapılan değişikliklerin düzgün olup olmadığını kontrol ediyoruz.
runc exec --tty vc-ws1a-broker bash
idmservice [ / ]$ ulimit -Hn
2048
idmservice [ / ]$ ulimit -Sn
2048
Çıktılar 2048 ise işlem başarılı olmuştur.