DELL offers an Linux appliance based on CentOS 5 for customers using VMware products. This appliance is called “DELL OpenManage Integration for VMware vCenter Appliance” and integrates seamless in VMware vCenter Server (or the appliance). It can be used for monitoring physical servers and also allows controlling the particular servers remotely. Amongst others it is possible to update firmware versions and check warranty information.
Recently I had problems with updating the appliance using the web interface. The update was started and the appliance was restarted but the version number didn’t change at all. In an older documentation I found a hint about a log file named /usr/share/tomcat5/rpmupdate.log – the update process is recorded in this file. Because even the administrator account has no shell access to the appliance it would be necessary to use a live CD. Fortunately this effor isn’t needed because there is a button for creating troubleshooting bundles in the web interface. You can find the mentioned file rpmupdate.log in the ZIP file offered for download. (if you prefer the live CD solution the file can be found underneath /usr/share/tomcatSpectre/logs in appliance version 2.x)
In my case YUM wasn’t able to download RPM packages the protocol told very clearly:
$ cat rpmupdate.log Stopping httpd: [ OK ] Loaded plugins: fastestmirror Cleaning up Everything Cleaning up list of fastest mirrors Loaded plugins: fastestmirror Determining fastest mirrors Setting up Update Process Resolving Dependencies --> Running transaction check ---> Package Spectre-OMSA-Repo.i386 0:1.0.3-1 set to be updated --> Processing Dependency: dell-omsa-esx40 >= 1.0.1 for package: Spectre-OMSA-Repo ... Total download size: 610 M Downloading Packages: http://linux.dell.com/repo/hardware/vcenter-plugin/latest/spectrebinaries/dell-omsa-esxi51-1.0.1-1.i386.rpm: [Errno 12] Timeout: Trying other mirror. http://linux.dell.com/repo/hardware/vcenter-plugin/latest/spectre/spectre-webclient-package-2.2.0-254.1.noarch.rpm: [Errno 12] Timeout: Trying other mirror. http://linux.dell.com/repo/hardware/vcenter-plugin/latest/centos_updates/kernel-2.6.18-371.8.1.el5.i686.rpm: [Errno 12] Timeout: Trying other mirror. http://linux.dell.com/repo/hardware/vcenter-plugin/latest/spectre/spectre-deps-2.2.0-255.1.i386.rpm: [Errno 12] Timeout: Trying other mirror. http://linux.dell.com/repo/hardware/vcenter-plugin/latest/spectrebinaries/dell-dtk-4.0.1-1.i386.rpm: [Errno 12] Timeout: Trying other mirror. Error Downloading Packages: dell-dtk-4.0.1-1.i386: failure: spectrebinaries/dell-dtk-4.0.1-1.i386.rpm from Dell_VC_Plugin: [Errno 256] No more mirrors to try. dell-omsa-esxi51-1.0.1-1.i386: failure: spectrebinaries/dell-omsa-esxi51-1.0.1-1.i386.rpm from Dell_VC_Plugin: [Errno 256] No more mirrors to try. spectre-deps-2.2.0-255.1.i386: failure: spectre/spectre-deps-2.2.0-255.1.i386.rpm from Dell_VC_Plugin: [Errno 256] No more mirrors to try. kernel-2.6.18-371.8.1.el5.i686: failure: centos_updates/kernel-2.6.18-371.8.1.el5.i686.rpm from Dell_VC_Plugin: [Errno 256] No more mirrors to try. spectre-webclient-package-2.2.0-254.1.noarch: failure: spectre/spectre-webclient-package-2.2.0-254.1.noarch.rpm from Dell_VC_Plugin: [Errno 256] No more mirrors to try.
My network requires using a proxy server – the configuration was altered using the web interface to set a proxy server. This process was also successful like a test function acknowledged. It seems like it was forgotten to also set the proxy configuration for YUM.
To fix this issue I altered the YUM repository configured in the appliance. This customization requires a live CD because the appliance offers no shell access. Even booting into single-user mode is impossible because GRUB was protected by a password. The VM needs to boot vom a Linux CD image instead of the hard drive. Afterwards the detected hard drive is mounted and the YUM repository configuration gets altered:
# mount /dev/sda1 /crash # vi /crash/etc/yum.repos.d/spectre.repo ... proxy=http://ip:port ESC ZZ
I really disadvise from directly updating the appliance using YUM after doing a chroot because a update started using the web interface seems to do even more steps. In my case the appliance was successfully updated and rebooted twice after the customization. During the first reboot some packages were removed which was definitely not triggered by “yum update“:
After both reboots the appliance version number has changed: