vCenter Upgrade – vSphere Web Client Failed!

Featured

Etiketler

, , ,

vCenter appliance kullanıyorum ve kısa bir süre önce 6.5 U2c versiyonuna update ettim. Update ettikten sonra tüm servisler aktif oldu, fakat vSphere Web Client (Flash) servisi bir türlü çalışmadı. İlk başta hepimizin yaptığı gibi sunucuyu komple kapattım, yeniden başlattım. Sonuç aynı. Servisi manuel çalıştırmak için aşağıdaki komutu denedim, sonuç aynı. Aldığım hatayı da aşağıdaki görebilirsiniz. Bu arada HTML5 client sorunsuz açılmıştı.

503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http16LocalServiceSpecE:0x00007feecc0203d0]_serverNamespace=/vpshere-client action=Allow_port=9090)

  • Web browser da Flash client a erişmeye çalıştığımda yukarıdaki hata ile karşılaşıyordum.

************************************************************************

root@vcenter [ /usr/lib/vmware-virgo/server/plugins ]# service-control –status –all

Running:

applmgmt lwsmd pschealth vmafdd vmcad vmdird vmdnsd vmonapi vmware-cis-license vmware-cm vmware-content-library vmware-eam vmware-perfcharts vmware-psc-client vmware-rhttpproxy vmware-sca vmware-sps vmware-statsmonitor vmware-sts-idmd vmware-stsd vmware-updatemgr vmware-vapi-endpoint vmware-vmon vmware-vpostgres vmware-vpxd vmware-vpxd-svcs vmware-vsan-health vmware-vsm vsphere-ui

Stopped:

vmcam vmware-imagebuilder vmware-mbcs vmware-netdumper vmware-rbd-watchdog vmware-vcha vsphere-client

************************************************************************

root@vcenter [ /usr/lib/vmware-virgo/server/plugins ]# service-control –start vsphere-client

Perform start operation. vmon_profile=None, svc_names=[‘vsphere-client’], include_coreossvcs=False, include_leafossvcs=False

2018-11-03T17:23:41.052Z Service vsphere-client state STOPPED

Error executing start on service vsphere-client. Details {

“resolution”: null,

“detail”: [

{

“args”: [

“vsphere-client”

],

“id”: “install.ciscommon.service.failstart”,

“localized”: “An error occurred while starting service ‘vsphere-client'”,

“translatable”: “An error occurred while starting service ‘%(0)s'”

}

],

“componentKey”: null,

“problemId”: null

}

Service-control failed. Error {

“resolution”: null,

“detail”: [

{

“args”: [

“vsphere-client”

],

“id”: “install.ciscommon.service.failstart”,

“localized”: “An error occurred while starting service ‘vsphere-client'”,

“translatable”: “An error occurred while starting service ‘%(0)s'”

}

],

“componentKey”: null,

“problemId”: null

}

************************************************************************

  • Log dosyalarına baktım, ilk bakışta pek bir şey çıkartamadım. Sonrasında bilgilerine çok güvendiğim ve her zaman sorunumu çözmem de bana destek olan VMware Türkiye ekibine case açtım ve sorunu analiz etmeye başladık.

************************************************************************

root@vcenter [ /var/log/vmware/vpxd ]# ls -l

root@vcenter [ /var/log/vmware/vpxd ]# grep warning vpxd-301.log (vpdx file numarası sizde değişik olabilir)

[ /var/log/vmware/vsphere-client ]# ls –l

root@ vcenter [ /var/log/vmware/vsphere-client ]# grep error vsphere-client-gc.log.0.current

root@ vcenter [ /var/log/vmware/vsphere-client/logs ]# less eventlog.log

root@ vcenter [ /var/log/vmware/vsphere-client/logs ]# grep WARN eventlog.log

root@ vcenter [ /var/log/vmware/vsphere-client/logs ]# cd /usr/lib/vmware-vsphere-client/server/

root@ vcenter [ /usr/lib/vmware-vsphere-client/server ]# cd work

root@ vcenter [ /usr/lib/vmware-vsphere-client/server/work ]# ls –l

root@ vcenter [ /usr/lib/vmware-vsphere-client/server/work ]# cat 1541273327676.log (en son veri yazılan log dosyası)

************************************************************************

  • Yukarıdaki komutları çalıştırıp sorunu araştırırken en son komutun çıktısında aşağıdaki hata loglarını gördük.

************************************************************************

!ENTRY org.eclipse.equinox.ds 4 0 2018-11-03 22:28:50.723

!MESSAGE [SCR] Unexpected exception occurred!

!STACK 0

java.lang.IllegalStateException: BundleContext is no longer valid

at org.eclipse.osgi.framework.internal.core.BundleContextImpl.checkValid(BundleContextImpl.java:931)

at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getServiceReferences(BundleContextImpl.java:498)

at org.eclipse.equinox.internal.ds.Reference.hasProviders(Reference.java:127)

at org.eclipse.equinox.internal.ds.Resolver.selectNewlyUnsatisfied(Resolver.java:600)

at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:364)

at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)

at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)

at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)

at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)

at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)

…………………..

at java.lang.Thread.run(Thread.java:748)

!ENTRY org.eclipse.equinox.ds 4 0 2018-11-03 22:28:50.724

!MESSAGE [SCR] Unexpected exception occurred!

!STACK 0

java.lang.IllegalStateException: BundleContext is no longer valid

………………..

************************************************************************

  • Yukarıdaki log çıktısından hareketle JAVA dosyalarının corrupt (bozuk) olduğunu düşündük ve log dosyasındaki Java component ini internetten indirip vCenter içerisine (aşağıdaki komutla conf dosyasında paketin bulunduğu yeri tespit edip) upload ettik. Sonra tekrar vsphere-client servisini çalıştırmayı denedik, sonuç yine aynı. Servis çalışmıyor.

    Not: Elinizde vCenter ın update öncesi hali varsa bu paketi backup tan da alabilirsiniz.

************************************************************************

root@ vcenter [ /usr/lib/vmware-vsphere-client/server/wrapper/conf ]# cat wrapper.conf

root@ vcenter [ /usr/lib/vmware-vsphere-client/server/wrapper/conf ]# cd /usr/lib/vmware-vsphere-client/server

root@vcenter [ /usr/lib/vmware-vsphere-client/server ]# mv work work_tlg Sorunun çözümü!

root@s152m0000015 [ /usr/lib/vmware-vsphere-client/server ]# ls -l

total 676

drwxr-x— 6 vsphere-client root 4096 Nov 2 13:45 configuration

-rwxr—– 1 vsphere-client root 664740 Aug 6 12:58 open_source_licenses.txt

drwxr-x— 2 vsphere-client users 4096 Nov 2 12:54 pickup

drwxr-x— 3 vsphere-client root 4096 Oct 9 2017 repository

drwxr-xr-x 6 vsphere-client users 4096 Nov 3 22:51 work_tlg

drwxr-x— 5 vsphere-client root 4096 Oct 9 2017 wrapper

************************************************************************

  • Biraz mola verdikten sonra tekrar sorunu internette araştırmaya devam ettim, bu arada farklı vCenter versiyonlarında benzer yaşanan bir sorunu adresleyen bir KB gözüme çarptı. Link aşağıdadır. Bu KB içerisinde bahsedildiği gibi cache bilgilerini tutan “work” klasörünü rename etmem öneriliyordu ve söyleneni yaptım.
  • Sonra vpshere-client servisini tekrar çalıştırmayı denedim ve sonuç “service started”.

************************************************************************

root@ vcenter [ /usr/lib/vmware-vsphere-client/server ]# service-control –start vsphere-client

Perform start operation. vmon_profile=None, svc_names=[‘vsphere-client’], include_coreossvcs=False, include_leafossvcs=False

2018-11-03T19:55:04.409Z Service vsphere-client state STOPPED

Successfully started service vsphere-client

************************************************************************

Çözüm : https://kb.vmware.com/s/article/2150318

Atalarımız ne demiş “Arayan mevlasını da bulur, Belasını da!” Biz log dosyalarının içine baktık, aldığımız bazı aksiyonlarla tüm vCenter ı patlatabilirdik ya da ayağa kaldırabilirdik. Biz doğru log dosyasından araştırmaya devam edip, çözüme ulaştık. Ancak komple vCenter ı da indirebilirdik, dolayısıyla bu tip işler öncesi kesinlikle backup alın, hatta bir değişiklik yapmadan elinizde vCenter ın da bir snapshot ı olsun.

Bu arada her zaman ekip arkadaşım gibi gördüğüm VMware Türkiye Support Ekibi, size de teşekkürler.

HPE OneView Global Dashboard (Linux) – Domain and Certification Issue

Featured

Etiketler

, , ,


HPE OneView, altyapınızdaki HPE ürünlerini tek bir ekrandan yönetmenizi ve izlememizi sağlayan “software defined infrastructure” (yazılım tabanlı altyapı) mimarisini bize sunan bir HPE ürünüdür. HPE OneView Global Dashboard ise ortamınızda bulunan birden fazla HPE OneView ürününü tek bir ekranda toplayıp size tek bir sayfada ortamınızı izleme imaknı sunmaktadır.

Global Dashboard appliance OVF template olarak HPE websitesinden indirebilir. Ortamınıza deploy etmenizde 10 dakikalık bir işlemdir. Sonrasında bunu sanal sunucuyu domain’e ekleyip yetkilendirdiğiniz kullanıcı grubunun üyelerinin sadece bu sisteme giriş yapmasını ve lokal admin kullanıcısının (administrator) kullanılmamasını isteyebilirsiniz. Bu aşamada inanın benim gibi çok uğraşabilirsiniz. Global Dashboard un domain e üye yapılması sırasında aslında çok basittir. Belki siz kendi ortamınızda bu sorunu hiç yaşamayıp, tek adımda normal “Add Directory” ekranından domain bilgilerinizi girerek, sunucuyu domain’e üye yapacaksınız. Ama yine de belki benim gibi sorun yaşayanlar olabilir düşüncesiyle aşağıdaki adımları paylaşmak istedim.

HPE OneView Global Dashboard ürününüzü VMware virtual appliance olarak ortama deploy ettiniz ve lokal admin kullanıcısı ile network ten web sayfası karşınıza geliyor. Buraya kadar herşey ok, network ayarlarınızda (DNS, hostname, ping, IP, vs) düzgün. Makineyi domain ‘e dahil edelim dediniz. İşte bu noktada ben aşağıdaki hatayı aldım ve çok basit olan bu işlem bana birkaç güne mal oldu. Hatta HPE ye de Case açtım ve sorunun ana nedenini bulmaya çalıştım. HPE mühendisleriyle de sorunu analiz ettik, testler yaptık. Sonuçta aşağıdaki birkaç adımla sorun çözüldü.

Sol tarafta settings kısmından gidip Active Directory ile ilgili gerekli tüm bilgileri girip OK tuşuna basınca yukarıdaki ekranda sağ tarafta gördüğünüz hatayı alıyordum.

“One or more certificates in the chain may not have been added to the appliance or can not be trusted.”

Çözüm olarak ise CA sertifikalarınının appliance trust store içerisine eklenip eklenmediğini ve geçerliliklerini kontrol etmem öneriliyordu.

“Check if required CA certificates have been added to the appliance trust store and are valid”

Öneri doğruydu fakat yeterli değildi. Lafı çok uzatmayalım, nasıl çözdük?

  • Mevcut domain’e zaten üye olan Windows yüklü bilgisayarımda (laptop) MMC çalıştırdım ve “Certificates” snap-in ini “Computer Account” olarak ekledim.

  • Intermediate Certification Authorities kısmına geçtim.

 

  • Bu alanda Root ve ona bağlı Intermediate sertfikasını “Base-64” formatında export ettim.

  • Yine aynı ekranda root ve Intermediate sertifikalarını cift tıklayıp, CRL linklerini buldum ve verilen adrese Internet Explorer ile gidip, bu CRL (Certificate Revocation List) dosyalarını da her iki sertifika için ayrı ayrı download ettim. Bu adım çok önemli. CRL dosyaları olmadan işlem tamamlanmış olmuyor.

  • Sonra bu sertifikaları HPE OneView Certificate Trust Store içerisine gidip ekledim. Sertifikaları Notepad ile açıp içerisindeki kodu da direkt verebilirsiniz.
  • Root ve Intermediate sertifiklarını ekledikten sonra birkaç dakika bekleyin. Çünkü ilk eklediğinizde yeşil (OK) durumda olan sertifikalar, CRL bilgisi olmadığı için sonrasında sarı (warning) hale dönecektir.
  • Birkaç dakika bekledikten ve ekranı yeniledikten sonra yine aynı sertifikaları seçip, sağ tarafta açılan ekranda “Upload CRL” butonuna basıp, her iki sertifika için de CRL dosyalarını ekledim.
  • Son olarakta yine en başa dönüp, makineyi domain e ekleme adımından domain üyeliğini gerçekletirdim ve sorun çözüldü.

Yukarıdaki çözüm yöntemi aslında sadece OneView için geçerli değil, birçok Linux makinede de işinize yarayabilir. Her zaman Linux tabanlı bir makineyi domain e eklemek bu şekilde sıkıntı olmaz, ama yine de bu bilgiler elinizin altında bulunsun.

vCenter 6.7U1 – Veeam Backup First Issue (Solved)

Featured

Etiketler

Geçtiğimiz hafta yayınlanan vCenter 6.7 U1 ile ilgili ilk gördüğüm sorunu ve Veeam KB sini sizinle paylaşmak istedim. Ben henüz denemedim ama test ortamınızı veya henüz erken olmasına rağmen canlı ortamınızı vSphere 6.7 U1 update ederseniz, Veeam ile backup alırken şimdilik karşınıza ilk olarak aşağıdaki hata geliyormuş.

“Object reference not set to an instance of an object”

Dolayısıyla backup alamıyorsunuz ama korkulacak bir hata değil, çünkü Veeam konuyla ilgili hemen bir workaround içeren KB yayınlamış.

Link : https://www.veeam.com/kb2784

Yakın zamanda Veeam Update 4 paketini yayınlayacak ve bu sorunu kalıcı olarak çözülecek. Çünkü Update 4 paketi vSphere 6.7 U1 versiyonunu da resmi olarak destekleyecek. Veeam bunun bilgisini KB içerisinde paylaşıyor.

Herkese iyi haftalar!

High KAVg Value for IOPs limited VM (disable mclock)

Featured

Etiketler

, , , ,

Geçenlerde disk basina IOPs limit uyguladığımız yüksek IO üreten sanal makinelerde vSphere 6.5 upgrade sonrası performans sorunu gözlemledik. Sorunu analiz ettik, fakat bir yere varamadık, çünkü yaptığımız tüm konfigürasyon normal görünüyordu. ESXi host larımızda IO paket size 64 KB olarak set edilmişti. VMware, NetApp için gerekli uyumluluk ayarları yapılmıştı. (Best Practices). Sunucu (HBA, BIOS,vs) firmware – driver yazılımları günceldi. Ancak esxtop ile baktığımızda yüksek Kernel latency gorunuyordu.

En sonunda VMware Support ekibine sorunu bildirdik, yapılan analiz sonucunda sorunun vSphere 5.5 ile birlikte gelen mclock I/O scheduler dan kaynaklandığını tespit ettik. Mclock özelliğini kapatıp, daha önceden kullanılan default I/O scheduler a geçtik ve I/O intensive olan buyuk SAP database ler çalıştıran VM lerde sorun bir anda düzeldi. KAVg değerleri normale döndü.

Mclock I/O Scheduler ı kapatıp, default I/O scheduler a geçmek için aşağıdaki adımları takip etmelisiniz:

  • ESXi host a SSH üzerinden putty ile bağlanın.
  • Komutu çalıştırın.

    esxcli system settings advanced list -o /Disk/SchedulerWithReservation

  • Int Value :1 değeri mclock özelliğinin açık olduğunu gösteriyor.

Path: /Disk/SchedulerWithReservation

     Type: integer

     Int Value: 1

     Default Int Value: 1

     Min Value: 0

     Max Value: 1

     String Value:

     Default String Value:

     Valid Characters:

     Description: Disk IO scheduler (0:default 1:mclock)

  • Mclock kapatmak için aşağıdaki komutu çalıştırın. ESXi host u reboot etmenize gerek yok. Hatta VM ler çalışırken de bu değişikliği yaptık ve bir sorun olmadı.

esxcli system settings advanced set -o /Disk/SchedulerWithReservation -i=0

Mclock özelliğini kapatıp, default I/O scheduler ‘ı aktif ettikten sonra IOPs limit uyguladığınız VM lerde performansın bir anda düzeldiğini göreceksiniz. Sonucu esxtop ile host seviyesinde de KAVg değerinin düştüğünü gözlemleyip, teyit edebilirsiniz.

Herkesin ortamında bu sorun olacak diye bir şey yok, çünkü ortamlarımız, kullandığımız donanımlar, yaptığımız ayarlar farklılıklar gösterebilir. Benim ortamımda yaşanılan sorunu yukarıdaki şekilde çözdük, umarım sizin de işinize yarar.

Join vCenter Appliance to Active Directory

Featured

vCenter 6.5 veya üstü appliance deploy ettikten sonra onu domain ‘e eklemek istediğinizde belki benim gibi biraz sorun yaşayabilirsiniz.

Bu konuda biraz zaman harcamış olsam da sonunda sorunsuz bir şekilde vCenter appliance ‘ını domain e eklemeyi başardım, bu ufak tecrübeyi de sizinle paylaşmak istedim.

OU kısmı ve kullanıcı adının yazım şekli çok önemli, yazım standartına uyarsanız, bu basit adımı hızlıca geçebilirsiniz.

Domain: xxx.yyy.net –> buraya domain adınızı yazın.
OU: OU=aaa,OU=bbb,DC=xxx,DC=yyy,DC=net –> Bu kısımda vCenter computer objesinin konumlandıracaginiz OU nun tam DN adresini yazın.
Username: tolga@xxx.yyy.net –>Domain de yetkili bir kullanıcıyı buraya yazın. Yazım şekline dikkat edin.