This is the third part of the Spacewalk server installation and configuration series in CentOS 7. The first two parts described how to install and configure Spacewalk server and how to manage Spacewalk channels and repositories.
In this tutorial, let use see how to install Spacewalk clients and how to register them to our Spacewalk server.
Install And Register Spacewalk Client
Install Spacewalk clients:
My client system details are:
- Operating system : CentOS 7 64 bit minimal
- IP address : 192.168.1.151/24
- Hostname : client.unixmen.local
Run the following command in your client systems:
yum install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin
If your CentOS client default repositories doesn’t have the above packages by default, add EPEL and Spacewalk repository, and try again.
yum install epel-release
rpm -Uvh http://yum.spacewalkproject.org/2.3/RHEL/7/x86_64/spacewalk-repo-2.3-4.el7.noarch.rpm
Next, we need to register the Spacewalk clients in order to subscribe channels.
Register Spacewalk clients:
We can do it either from Spacewalk server dashboard or from command line. First we will see how to register from Spacewalk dashboard.
Method 1: Register Spacewalk clients via Dashboard
Go to your Spacewalk server’s main dashboard by navigating to: https://spacewalk-server-ip/.
Enter the user name and password:
From the Dashboard, click on the link that says: Manage Activation Keys.
In the next window, copy the activation key.
Go to your client system’s Terminal, and run the following command to register it to the Spacewalk server.
rhnreg_ks --serverUrl=http://192.168.1.150/XMLRPC --activationkey=1-cc1fa76a7df5430f0985311d5af8bb18
Now, go to Systems (top menu) in the Spacewalk server dashboard. You’ll see there the client system has been registered.
Also you see that, the client system has subscribed automatically the Base channel (Ex. sk_centos7). To view the further details of the client, just click on the client (Ex. client.unixmen.local)
Next, we need to enable the child channels of the base channel to get packages.
To do that, go to Systems –> <client> –> Software –> Software Channels –> Software Channel Subscriptions.
Select the Child channels (Ex. sk_mariadb_centos7) and click Change Subscriptions and then Confirm.
In the next window, click Modify Base Software Channel.
Done! Our client is subscribed to the Channels.
Method 2: Register Spacewalk clients from Command line
We can also register clients from the client system Terminal itself.
To list subscribed base channels, run:
spacewalk-channel -l
Sample output:
sk_centos7
To list the available child channels:
spacewalk-channel -L
You’ll be asked to enter the user name and password of the Spacewalk server admin account.
Sample output:
Username: admin Password: sk_mariadb_centos7
Now, to subscribe the child channel, run:
spacewalk-channel -a -c sk_mariadb_centos7
Enter the user name and password of the Spacewalk server admin account.
Now, verify the subscribed channels using command:
spacewalk-channel -l
Sample output:
sk_centos7 sk_mariadb_centos7
That’s it. Now, you can start to install or update packages from the Spacewalk Channels.
Also, make sure that you have disabled all other non-Spacewalk repositories.
To do that, run:
sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/*
sed -i '/name=/a enabled=0' /etc/yum.repos.d/*
Update the repositories list using command:
yum update
Sample output:
Loaded plugins: fastestmirror, rhnplugin This system is receiving updates from RHN Classic or Red Hat Satellite. Loading mirror speeds from cached hostfile Resolving Dependencies --> Running transaction check ---> Package MariaDB-shared.x86_64 0:10.0.21-1.el7.centos will be obsoleting --> Processing Dependency: MariaDB-common for package: MariaDB-shared-10.0.21-1.el7.centos.x86_64 ---> Package mariadb-libs.x86_64 1:5.5.40-1.el7_0 will be obsoleted --> Running transaction check ---> Package MariaDB-common.x86_64 0:10.0.21-1.el7.centos will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================================================================================================== Package Arch Version Repository Size ======================================================================================================================================================================== Installing: MariaDB-shared x86_64 10.0.21-1.el7.centos sk_mariadb_centos7 1.2 M replacing mariadb-libs.x86_64 1:5.5.40-1.el7_0 Installing for dependencies: MariaDB-common x86_64 10.0.21-1.el7.centos sk_mariadb_centos7 43 k Transaction Summary ======================================================================================================================================================================== Install 1 Package (+1 Dependent package) Total download size: 1.2 M Is this ok [y/d/N]: [...]
As you see in the above output, the packages are installed from Spacewalk child channel (Ex. sk_mariadb_centos7).
In case, you got any dependency problems, you should sync the repository of Base channel to your Clients.
Conclusion
I hope you will get some basic ideas about Spacewalk installation, configuration, and usage. I am not expert in Spacewalk or Red Hat Satellite server. I am still new to Spacewalk and I am learning it. If there is any mistake in these guides, please feel free to notify me. I will correct them and update the articles. Spacewalk is very good option if you are managing a large number of client systems in your organization. I will come up with an another Interesting article about Spacewalk soon. Till then, stay tuned.
Cheers!
Source and Reference: