- Notifications
You must be signed in to change notification settings - Fork252
HowToUpgrade06
These upgrade instructions apply to Spacewalk 0.5 running on Red Hat Enterprise Linux 5 Server or CentOS 5.
Spacewalk upgrade from version 0.5 to 0.6 involves several basic steps:
- Configuration files and Spacewalk database backup
- Preparation for jabberd ver. 2.2.8
- Package upgrade
- Schema upgrade
- Upgrade of Spacewalk configuration
- Restart Spacewalk
- Update of monitoring setup
- Update Spacewalk configuration files
- Restart Spacewalk
- Rebuild search indexes
For RHEL or CentOS, you will need the Base and EPEL repositories enabled for dependencies.
You had set up your yum repository configuration to point to spacewalk 0.6 repo. Ordinarily, your yum repo configuration might look like:
[spacewalk]name=Spacewalkbaseurl=http://spacewalk.redhat.com/yum/0.6/RHEL/5/$basearch/os/gpgkey=http://spacewalk.redhat.com/yum/RPM-GPG-KEY-spacewalkenabled=1gpgcheck=1
- For existing configuration files, create a backup of everything under /etc/sysconfig/rhn /etc/rhn and /etc/jabberd
- Backup your ssl build directory, ordinarily /root/ssl-build
- For instructions on how to create a backup of your existing Spacewalk database consult either Oracle documentation or contact your DBA
Stop Spacewalk:
# /usr/sbin/rhn-satellite stopAt this point, all jabberd processes (c2s, s2s, sm, router) need to be stopped.
Clean jabberd database:
# rm -f /var/lib/jabberd/db/*Upgrade jabberd:
# yum upgrade jabberdAt this point, jabberd ver. 2.2.8 should be installed on your system.
For jabberd, osa-dispatcher and osad clients to work correctly, SSL certificate used by jabberd services needs to have correctuser & group ownership (user & group == jabber).
Check user and group ownership of file containing SSL certificate and private key used by jabberd services for setting up encrypted channels:
# ls -l /etc/pki/spacewalk/jabberd/server.pemThis will either say "jabber" :
# ls -l /etc/pki/spacewalk/jabberd/server.pem -rw------- 1 jabber jabber 7244 Aug 6 16:53 /etc/pki/spacewalk/jabberd/server.pemor it will say "jabberd" :
# ls -l /etc/pki/spacewalk/jabberd/server.pem -rw------- 1 jabberd jabberd 7244 Aug 7 10:20 /etc/pki/spacewalk/jabberd/server.pemIf the user and group ownership says "jabber", you can safely skip rest of this step and continue with a step named "Package upgrade" below.
If the user and group ownership says "jabberd", you need to do following steps:
As root run:
# getent passwd jabberd && userdel -r jabberdAs root, run upgrade-cert.sh script attached to this page:
# ./upgrade-cert.shThis script will try to re-create new rpm package containing your original SSL certificatesand instruct you to do these additional steps that you are required to do:
Uninstall original package containing your certificate files
Install updated package with your original certificate files
Create a backup of rpm files that were created
Remove temporary content created in previous steps.
One last time, make sure SSL certificate file used by jabberd services is now user & group owned by "jabber" :
# ls -l /etc/pki/spacewalk/jabberd/server.pem -rw------- 1 jabber jabber 7244 Aug 7 11:14 /etc/pki/spacewalk/jabberd/server.pemBefore the actual package upgrade, run following command:
# semanage port -d -t cobbler_port_t -p tcp 25152Perform package upgrade using yum:
# yum upgradeDuring the upgrade, you may notice messages printed to the terminal when installing oracle-instantclient-selinux and spacewalk-selinux.These messages are produced by restorecon and do not pose any harm.On the contrary, these messages indicate relabeling of file system objects that is required for correct Spacewalk and SELinux symbiosis.
Make sure your Spacewalk server is down:
# /usr/sbin/rhn-satellite statusMake sure your oracle server is running (likely it isn't running since the earlier 'rhn-satellite stop' command stops the oracle-xe processes). For oracle-xe that would be:
# service oracle-xe statusIf Oracle isn't running, start it
# service oracle-xe startRun spacewalk-schema-upgrade script to upgrade database schema:
# /usr/bin/spacewalk-schema-upgradeLog files from schema upgrade are being put into /var/log/spacewalk/schema-upgrade
For Spacewalk 0.6, it is required to deploy configuration for cobbler and update configuration of apache SSL virtual host. Both steps can be accomplished by running:
# spacewalk-setup --disconnected --upgradeYou'll be asked by spacewalk-setup to provide your database connection information. This is the same information you provided to HowToInstall. Following this spacewalk-setup will ask you whether you wish tohave your apache ssl configuration (/etc/httpd/conf.d/ssl.conf) updated by spacewalk-setup. You may choose to setup your ssl.conf manually, in whichcase you have to make sure you have the following directives present in your /etc/httpd/conf.d/ssl.conf:
# cat /etc/httpd/conf.d/ssl.conf...<VirtualHost _default_:443>...SSLCertificateFile /etc/pki/tls/certs/spacewalk.crtSSLCertificateKeyFile /etc/pki/tls/private/spacewalk.keyRewriteEngine onRewriteOptions inheritSSLProxyEngine on<IfModule mod_jk.c> JkMountCopy On</IfModule>...</VirtualHost>...# /usr/sbin/rhn-satellite startRecent Spacewalk installations may have set several important monitoring configuration values incorrectly. To correct these, run the followingas root (note that you should run this command regardless of your current monitoring status; even on installations that never had monitoringenabled, running this script will have no ill effect):
# /usr/share/spacewalk/setup/upgrade/rhn-update-monitoring.plYou may now choose to activate monitoring or both monitoring & monitoring scout on your Spacewalk.
If you had monitoring enabled previously and wish to re-enable it now (without having to do so in the web ui), run as root:
# /usr/share/spacewalk/setup/upgrade/rhn-enable-monitoring.plIf you'd like to re-enable both monitoring and monitoring scout on your Spacewalk (without having to do so in the web ui), instead run as root
# /usr/share/spacewalk/setup/upgrade/rhn-enable-monitoring.pl --enable-scoutRestore some of the custom values you might have set previously in /etc/rhn/rhn.conf from the backup of your configuration files, such as:
- debug = 3
- pam_auth_service = rhn-satellite
- default_db = user/password@sid
If all of the above steps completed successfully, you can start your upgraded Spacewalk server. With Spacewalk 0.3, rhn-satellite init scriptwas decommissioned and all Spacewalk services are being started individually. If you need to restart your Spacewalk using one command,use /usr/sbin/rhn-satellite script.
# /usr/sbin/rhn-satellite restartAfter a successful upgrade, it is recommended to rebuild search indexes used by Spacewalk search engine (rhn-search service).This can be accomplished by the following:
# /etc/init.d/rhn-search cleanindexWhat's below are additional steps that were required for Spacewalk 0.4 to Spacewalk 0.5 upgrades. These steps are no longer required forSpacewalk 0.5 to Spacewalk 0.6 and can be safely ignored.
With jabberd-2.2.5 package present in EPEL, it is necessary to update location of SSL certificate used by jabberd service: /etc/jabberd/server.pemThis change is required to avoid file conflict that would otherwise occur during package upgrade: the PEM file in question is owned by bothnew jabberd from EPEL and another package from your earlier Spacewalk installation created at setup time(by spacewalk-setup / rhn-ssl-tool).
To update the location, follow these steps:
Setup your yum configuration to point to Spacewalk 0.5 repo:
[spacewalk]name=Spacewalkbaseurl=http://spacewalk.redhat.com/yum/0.5/RHEL/5/$basearch/osgpgkey=http://spacewalk.redhat.com/yum/RPM-GPG-KEY-spacewalkenabled=1gpgcheck=1Stop your Spacewalk server. To accomplish this, execute following command as root:
# /usr/sbin/rhn-satellite stopUpdate spacewalk-certs-tools package:
# yum upgrade spacewalk-certs-toolsAs root, run upgrade-cert.sh script attached to this page:
# ./upgrade-certs.shThis script will try to re-create new rpm package containing your original SSL certificates with server.pem file putinto a new location and instruct you to do these additional steps that you are required to do:
Uninstall original package containing your certificate files
Install updated package with your original certificate files
Create a backup of rpm files that were created
Remove temporary content created in previous steps.
What's bellow are additional steps that were required for Spacewalk 0.2 to Spacewalk 0.3 upgrades. These steps are no longer required forSpacewalk 0.4 to Spacewalk 0.5 upgrades and can be safely ignored.
With release of 0.3, spacewalk services (rhn-search, satellite-httpd, taskomatic, ...) are no longer started from /etc/init.d/rhn-satellite,every service has its own init.d script with chkconfig entries.
When doing a new Spacewalk 0.3 installation, all the services are being activated by spacewalk-setup. When upgrading existing Spacewalk 0.2installation, you have to activate all these services manually:
# for service in jabberd osa-dispatcher taskomatic tomcat5 satellite-httpd Monitoring MonitoringScout rhn-search; do if [ -e "/etc/init.d/$service" ]; then /sbin/chkconfig --level 345 $service on fidoneWhat's bellow are additional steps that were required for Spacewalk 0.1 to Spacewalk 0.2 upgrades. These steps are no longer required forSpacewalk 0.2 to Spacewalk 0.3 upgrades and can be safely ignored.
Spacewalk ver. 0.2 introduced new layout of /var/satellite directory (change coming with multiple distribution support). To migrateexisting packages into new locations, use update-packages script (spacewalk-backend-satellite-tools) with a valid database connection string.
# /usr/bin/update-packages --db=spacewalk/spacewalk@xeIf you're upgrading Spacewalk 0.1 to version 0.2, add the following line into /etc/rhn/rhn.conf and /etc/rhn/default/rhn_web.conf:
web.product_name = SpacewalkDo you want to contribute to this wiki? See pageWikiContribute for more info.