Sep 072015
 
Install Spacewalk
Spacewalk

This is the third part of Spacewalk installation and configuration series. In the first two parts, we gone through how to install and configure Spacewalk server and managing Spacewalk channels and repositories.

  1. Install And Configure Spacewalk In CentOS 7
  2. Managing Spacewalk Channels And Repositories

In this tutorial, we will configure clients to take installation packages from the Spacewalk server by registering it with Spacewalk server.

Environment:

OS : CentOS Linux release 7.0.1406 (Core)

Hostname : client.itzgeek.local

IP Address : 192.168.12.4

Install Spacewalk clients:

CentOS Base repository does not have packages that are required for registering clients with Spacewalk server, so we would require to configure Spacewalk repo on client machine.

# rpm -Uvh http://yum.spacewalkproject.org/2.3-client/RHEL/7/x86_64/spacewalk-client-repo-2.3-2.el7.noarch.rpm

Install below packhttp://www.itzgeek.com/wp-admin/post.php?post=9265&action=editage.

# yum install yum-rhn-plugin

Once the packages are installed, proceed to register the clients with spacewalk server.

Register clients with SpaceWalk Server:

It is recommended to use activation keys for registering and configuring client systems with Spacewalk server.

Now, login to Spacewalk server and get an activation that we created in previous tutorial.

Goto System –> Activation Keys.

Register clients with SpaceWalk Server - Activation Keys
Register clients with SpaceWalk Server

On client system’s Terminal, run the following command to register it to the Spacewalk server.

# rhnreg_ks --activationkey 1-3de95eb8d397e65b3831910fdc3e3f61 --serverUrl https://server.itzgeek.local/XMLRPC

Once the above command is executed, goto Spacewalk console, and click on Systems. You will see our client system that we just registered with Spacewalk.

Register Clients with Spacewalk server - System Overview
Register Clients with Spacewalk server – System Overview

Click on client name, you will be taken to client summary page where you can see detailed information about registered client (client.itzgeek.local). You can see that this system has subscribed automatically to base channel (itzgeek_centos7).

Register Clients with Spacewalk server - Client Overview
Register Clients with Spacewalk server – Client Overview

Modifying Subscription (Optional):

GUI Mode:

If you want to make a use of child channels (Ex. To install Nginx), To enable the child channels of the base channel to get Niginx packages.

Go to Systems –> <Your Client> –> Software –> Software Channels –> Software Channel Subscriptions.

OR

Click on Alter Subscription Channels on client over page.

Select the Child channels (Ex. nginx_centos7) and click Change Subscriptions.

Register Clients with Spacewalk server - Change Channel subscription
Register Clients with Spacewalk server – Change Channel subscription

Now, client system is successfully subscribed to Nginx child channel.

Register Clients with Spacewalk server - Subscripton List
Register Clients with Spacewalk server – subscription List

Command Line Mode:

You can also change channel subscription using command Line. To list subscribed channels, run.

# rhn-channel -l

sample output:

itzgeek_centos7

To list the available channels, run.

# rhn-channel -L

sample output:

Username: itzgeek
Password:
nginx_centos7

Now, to subscribe to child channel, run.

# rhn-channel -a -c nginx_centos7

You will have to enter username and password of Spacewalk server admin account.
Veryify the subscription using below command.

# rhn-channel -l

sample output:

itzgeek_centos7
nginx_centos7

If you want to remove child channel subscriptions, run the following command.

# rhn-channel -r -c nginx_centos7

That’s it.  You can start to install or update packages from the Spacewalk server. Also, make sure that you have disabled non-Spacewalk repositories.

To do that, run:

# sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/*

To test, install Nginx package on client machine.

# yum install nginx

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 nginx.x86_64 1:1.8.0-1.el7.ngx will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package      Arch          Version                  Repository            Size
================================================================================
Installing:
nginx        x86_64        1:1.8.0-1.el7.ngx        nginx_centos7        369 k

Transaction Summary
================================================================================
Install  1 Package

Total download size: 369 k
Installed size: 889 k
Is this ok [y/d/N]:

[...]

If you see the above output, the packages are installed from Spacewalk child channel (nginx_centos7).

That’s All. You have successfully registered client systems with Spacewalk server for packages.I plan to cover more topics on Spacewalk server, stay tuned.