Spacewalk is the software behind Red Hat Network. I’ve been meaning to take a closer look for a while now. With a new release out that’s got improved cobbler integration I decided it was time to take the plunge. Having a shiny web GUI on top of cobbler seems like it could be rather neat.
Getting spacewalk installed is a bit of work since it (a) is huge, (b) needs an oracle database. But the published installation instructions worked fine for me:
Get a new Centos VM:
./make-centos32.py spacewalk. Note that Oracle express is 32 bit-only, so I decided to just do everything as a 32 bit install. Change the VM settings to use 1.5GB ram which seems like it is just about enough for development/demo purposes (specified minimum is 2GB).
Now, follow spacewalk instructions to set up Oracle Express:
$ sudo bash # cat >>/etc/hosts <>/etc/hosts < oracle-instantclient11.2-basic-184.108.40.206.0.i386.rpm \ > oracle-instantclient11.2-sqlplus-220.127.116.11.0.i386.rpm # export SWREPO=http://spacewalk.redhat.com/yum/1.4 # export EPEL=http://download.fedora.redhat.com/pub/epel # rpm -Uvh $SWREPO/RHEL/5/i386/spacewalk-repo-1.4-1.el5.noarch.rpm # rpm -Uvh $EPEL/5/i386/epel-release-5-4.noarch.rpm # rpm -Uvh $SWREPO//RHEL/5/i386/spacewalk-client-repo-1.4-1.el5.noarch.rpm # yum -y install oracle-lib-compat # /etc/init.d/oracle-xe configure HTTP port for Oracle Application Express: 9055 Database listener port: 1521 Password for SYS/SYSTEM: changeme12 Start at boot: y # sqlplus 'sys/@//localhost/XE as sysdba' SQL> create user spacewalk identified by spacewalk default tablespace users; SQL> grant dba to spacewalk; SQL> quit # sqlplus spacewalk/spacewalk@//localhost/XE SQL> alter system set processes = 400 scope=spfile; SQL> alter system set "_optimizer_filter_pred_pullup"=false scope=spfile; SQL> alter system set "_optimizer_cost_based_transformation"=off scope=spfile; SQL> quit # /sbin/service oracle-xe restart
Well that wasn’t so bad. I seem to recall installing oracle as being much harder and taking at least a day or two if you know what you’re doing. Maybe it’s just that the XE edition is so much easier, or maybe Oracle have just learned a trick or two in the 5? (wow!) years since I last touched it.
Now we’re ready to install spacewalk. The right yum repo configs were already imported, above, so we don’t need to do that again.
# yum install curl # curl -o /tmp/gpg-key http://www.redhat.com/security/37017186.txt # mv /tmp/gpg-key /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release # yum install spacewalk-oracle ... Transaction Summary ================================= Install 287 Package(s) Upgrade 0 Package(s) Total download size: 198 M ...
One of these packages results in the enabling of SELINUX. Let’s disable it again:
# echo 0 > /selinux/enforce # vi /etc/selinux/config # change to SELINUX=disabled # reboot
And now we can configure:
spacewalk-setup --disconnected Database service name (SID)? XE Username? spacewalk Password? spacewalk Admin Email Address? root@localhost Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]? y CA certificate password? spacewalk Re-enter CA certificate password? spacewalk Organization? spacewalk Organization Unit [spacewalk.sandbox]? spacewalk Email Address [root@localhost]? root@localhost City? London State? UK Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? GB
Now open https://spacewalk.sandbox/ in a web browser and create the admin account spacewalk/spacewalk.
Now to figure out how to make use of this beast….here’s a pretty good presentation from DevOps London about it: