1. Anasayfa
  2. VMware ESXi

VMware vCenter 7.0 Upgrade işlemlerinde Alınan “CollectRequirements for com.vmware.sso times out” hatasının giderilmesi


VMware vCenter Server sanallaştırma ortamlarını yönetmek için kullanılan kritik bir bileşendir. vCenter Server’ın yeni sürümlerine yükseltme işlemleri performans iyileştirmeleri ve güvenlik güncellemeleri sağlamak için önemlidir. Ancak, bazı durumlarda yükseltme süreci beklenmedik hatalarla karşılaşabilir.

Bu makalede vCenter Server 7.0’a yükseltme işlemi sırasında ortaya çıkan “CollectRequirements for com.vmware.sso times out” hata mesajını inceleyeceğiz.

Bu hata özellikle STS (Secure Token Service) içindeki sertifikalarla ilgili bir eksiklik veya yanlış yapılandırma nedeniyle ortaya çıkar.

vCenter Installer uygulaması yükseltme öncesi kontroller sırasında STS_INTERNAL_SSL_CERT sertifikasının eksik olduğunu tespit edemezse süreç zaman aşımına uğrar ve yükseltme başarısız olur. Bu hatanın nedenlerini etkilerini ve nasıl çözülebileceğini ayrıntılı bir şekilde ele alacağız. Ayrıca gelecekte bu tür hataların önüne geçmek için alınabilecek önleyici tedbirleri paylaşacağız.

vCenter Server 7.0’a yükseltme işlemi aşağıdaki hata mesajı ile başarısız olur:

Upgrade phase timed out. The time planned for the upgrade phase was 15 minutes. The upgrade phase has already been running for 15 minutes.
CollectRequirements for com.vmware.sso times out

Tomcat loglarında (catalina.xxxx-xx-xx.log) aşağıdaki hata mesajları görülebilir;

2024-04-28T16:01:10.077Z SEVE org.apache.catalina.core.StandardService Failed to initialize connector [Connector[com.vmware.identity.tomcat.VECSAwareHttp11NioProtocol-7444]]
org.apache.catalina.LifecycleException: Protocol handler initialization failed

Hata nedenleri:

  • Tomcat, STS_INTERNAL_SSL_CERT mağazasından MACHINE_SSL_CERT sertifikasını okuyamıyor.
  • VECS (VMware Endpoint Certificate Store) içindeki STS_INTERNAL_SSL_CERT herhangi bir giriş bulunmuyor.

Bu durumu doğrulamak için aşağıdaki komutu çalıştırabilirsiniz;

/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store STS_INTERNAL_SSL_CERT

bu komutun çıktısı şu şekilde olabilir;

Number of entries in store : 0

Bu çıktı ile STS_INTERNAL_SSL_CERT mağazasının boş olduğunu ve yükleyicinin doğrulama yapamadığını gösterir.

Önceki bir sürümden vCenter Server yükseltmesi yapılmışsa vCenter Installer VECS içinde STS_INTERNAL_SSL_CERT mağazasını ve bu mağazada bir Makine SSL Sertifikası olup olmadığını kontrol eder. Eğer bu mağaza bulunmuyorsa veya boş ise vCenter yükleyicisi STS sertifikasını doğrulama aşamasında takılır. Bu doğrulama süresi 15 dakika sonra zaman aşımına uğrayarak yükseltme işleminin başarısız olmasına neden olur.

Bu hatayı çözmek için mevcut Makine SSL Sertifikasını STS_INTERNAL_SSL_CERT mağazasına manuel olarak eklemelisiniz. SSH kullanarak eski vCenter Server Appliance’a bağlanın ve root kullanıcısına geçiniz.

öncelikle yeni bir sertifika dizini oluşturulur.

mkdir /certs

Bu dizin geçici olarak SSL sertifikalarının saklanması için kullanılacaktır.

Mevcut sertifikayı VECS içindeki MACHINE_SSL_CERT mağazasından çıkarınız.

/usr/lib/vmware-vmafd/bin/vecs-cli entry getcert --alias __MACHINE_CERT --store MACHINE_SSL_CERT >/certs/__MACHINE_CERT.crt

/usr/lib/vmware-vmafd/bin/vecs-cli entry getkey --alias __MACHINE_CERT --store MACHINE_SSL_CERT >/certs/__MACHINE_CERT.key

Bu komutlar ile sertifikayı ve anahtar dosyasını /certs/ dizinine kaydeder.

Sertifikayı STS_INTERNAL_SSL_CERT mağazasına yayınlayın. Elde edilen sertifikayı STS_INTERNAL_SSL_CERT mağazasına ekleyiniz.

/usr/lib/vmware-vmafd/bin/vecs-cli entry create --store STS_INTERNAL_SSL_CERT --alias __MACHINE_CERT --cert /certs/__MACHINE_CERT.crt --key /certs/__MACHINE_CERT.key

Sertifikalar düzgün şekilde eklenmişse vCenter yükseltme işlemini tekrar başlatabilirsiniz.

Notlar:

  • Yükseltme işlemi öncesinde VECS içindeki sertifika mağazalarını kontrol edin.
    • Mevcut girişleri listelemek için:/usr/lib/vmware-vmafd/bin/vecs-cli store list
    • STS_INTERNAL_SSL_CERT mağazasını kontrol etmek için:/usr/lib/vmware-vmafd/bin/vecs-cli entry list --store STS_INTERNAL_SSL_CERT
  • Sertifikalarınızı düzenli olarak yedekleyin.
    • VMware ortamlarında, SSL sertifikaları kritik bileşenlerdir. Bu nedenle, sertifika değişikliklerinden önce ve yükseltmelerden önce mutlaka yedek alınmalıdır.
  • vCenter yükseltmesi yapmadan önce VMware’in en son destek dokümantasyonlarını kontrol edin.
    • VMware, zamanla bu tür hatalar için düzeltmeler yayımlayabilir.
İlginizi Çekebilir
VMware UNMAP Script