Red Hat SatelliteのOSS版『Spacewalk』をCentOS 7にインストールしてRHEL系OSを統合管理する

RHELの運用管理ソフトウェアとして『Redhat Satellite』というのがあるのだが、これがあると各サーバのパッケージのバージョンや設定の管理などを統合管理できる。
で、CentOSなどでこれと同じようなことをしたいなぁ…という場合はSatelliteのOSS実装である『Spacewalk』を入れるといいだろう。

今回は、この『Spacewalk』をCentOS 7にインストールする。
なお、事前にSELinuxとFirewalldは停止しているものとし、今回の検証でのサーバ名は「BS-PUB-SPACEWALK-M.BLACKNON.LOCAL」とする。

1.各種リポジトリの準備

まず、以下のコマンドでepelリポジトリを利用できるようにする。

yum install -y epel-release

Jpackageのリポジトリを設定する。

cat > /etc/yum.repos.d/jpackage-generic.repo << EOF
[jpackage-generic]
name=JPackage generic
mirrorlist=http://www.jpackage.org/mirrorlist.php?dist=generic&type=free&release=5.0
enabled=1
gpgcheck=1
gpgkey=http://www.jpackage.org/jpackage.asc
EOF

Spacewalkのリポジトリを導入する。

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

最後に、リポジトリのリスト出力とアップデートを行う。

yum repolist && yum update -y

2.Spacewalkのインストール

次に、Spacewalkのインストールを行う。
SpacewalkではデータベースにOracle DatabaseもしくはPostgreSQLを利用できるのだが、今回はPostgreSQLを利用する。
以下のコマンドでインストールできる(ちょっと長い)。

yum install -y spacewalk-setup-postgresql
yum install -y spacewalk-postgresql
yum install -y geronimo-jta-1.1-api.noarch

これでパッケージはインストールできた。
次に、Spacewalkの初期設定をする。まず、「/etc/hosts」に自信のホスト名でアクセスできるようにする。

●/etc/hosts

IPアドレス BS-PUB-SPACEWALK-M.BLACKNON.LOCAL

spacewalk-setup --disconnected
[root@BS-PUB-SPACEWALK ~]# spacewalk-setup --disconnected
* Setting up SELinux..
** Database: Setting up database connection for PostgreSQL backend.
** Database: Installing the database:
** Database: This is a long process that is logged in:
** Database:   /var/log/rhn/install_db.log
*** Progress: ###
** Database: Installation complete.
** Database: Populating database.
*** Progress: ############################
* Configuring tomcat.
* Setting up users and groups.
** GPG: Initializing GPG and importing key.
** GPG: Creating /root/.gnupg directory
You must enter an email address.
Admin Email Address? <メールアドレス>
* Performing initial configuration.
* Activating Spacewalk.
** Loading Spacewalk Certificate.
** Verifying certificate locally.
** Activating Spacewalk.
* Configuring apache SSL virtual host.
Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]? <Enter>
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave
* Configuring jabberd.
* Creating SSL certificates.
CA certificate password? <CAのパスワード>
Re-enter CA certificate password? <CAのパスワード(確認)>
Organization? <組織名>
Organization Unit [BS-PUB-SPACEWALK.BLACKNON.LOCAL]? <Enter>
Email Address [メールアドレス]? <Enter>
City? <都道府県(Tokyo)>
State? <市区町村(Tachikawa)>
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)? <JP>
** SSL: Generating CA certificate.
** SSL: Deploying CA certificate.
** SSL: Generating server certificate.
** SSL: Storing SSL certificates.
* Deploying configuration files.
* Update configuration in database.
* Setting up Cobbler..
Cobbler requires tftp and xinetd services be turned on for PXE provisioning functionality. Enable these services [Y]? <Enter>
* Restarting services.
Installation complete.
Visit https://BS-PUB-SPACEWALK.BLACKNON.LOCAL to create the Spacewalk administrator account.

これで、無事にSpacewalkの初期設定が完了した。
あとは、表示されているようにブラウザからSpacewalkをインストールしたサーバにアクセスする。

ブラウザからアクセスすると、管理ユーザの作成画面に推移するので作成を行う。

ログイン後の画面がこちら。

以上でインストールは完了。
次回以降に管理サーバとしてCentOSを追加して実際にSpacewalkから管理をさせる