第1章 Spacewalkサーバーのインストールとアップグレード
この章では、Spacewalkサーバーとプロキシをインストールおよびアップグレードする方法について説明します。
このガイドでは、Spacewalk for Oracle Linuxリリース2.7のインストールに関する情報および手順について説明します。 ただし、Oracleでは、かわりにSpacewalk for Oracle Linuxリリース2.10をインストールすることをお薦めします。 手順については、「Spacewalk for Oracle® Linux: インストレーション・ガイドforリリース2.10」を参照してください。
1.1 Oracle Linux要件
Oracleは、Oracle Linux 6 (x86_64)またはOracle Linux 7 (x86_64)で実行されているSpacewalkサーバーをサポートしています。 Oracle Linuxシステムは、Oracle Linux yumサーバーで使用可能な最新のパッケージで更新することをお薦めします。
SpacewalkサーバーまたはクライアントをULNに登録しないでください。 Spacewalkサーバーをクライアントとして登録して、更新を受け取ることができます。
Oracle Linux 6またはOracle Linux 7は、「最小」または「基本的なサーバー」ソフトウェア・セットのいずれかを使用してインストールする必要があります。 インストール中に追加のパッケージ・グループを選択する場合は、jta
をインストールする前にjta
パッケージを削除してください。このパッケージはSpacewalkサービスの起動に失敗するためです。
Oracle Linux yumサーバー(https://yum.oracle.com)からOracleによって提供されるパッケージのみを使用してSpacewalkをインストールします。
Oracle Linux 6またはOracle Linux 7にSpacewalkをインストールするためにサードパーティのパッケージ・レポジトリは必要ありません。 必要なパッケージはすべて、Oracle Linux yumサーバーのSpacewalkリポジトリにあります。
1.2 Spacewalkサーバーの記憶域要件
Spacewalkサーバーには、最低8 GBのメモリーが必要です。 SpacewalkサーバーがSpacewalkリポジトリを格納しているデータベースも実行している場合、このメモリー要件はデータベースを実行するのに「に加えて」必要なものでです。
エラータ・マッピングを維持するために、Spacewalkはデフォルトで、構成した各ソフトウェア・チャネルで使用可能なすべてのパッケージのすべてのバージョンを維持します。 その結果、Spacewalkサーバーの記憶域要件は、サポートするメジャー・バージョンとアーキテクチャの数によって大きくなります。 通常、Oracle Linuxバイナリ・リポジトリには、Oracle Linuxリリースとアーキテクチャの組み合わせごとに約60 GBが必要です。 ソース・パッケージには追加の40 GBが必要で、Oracle Linuxリリースとアーキテクチャの組み合わせごとにKsplice更新には80 GBが必要です。
Spacewalk 2.7を使用すると、spacewalk-repo-syncコマンドに--latestオプションを指定することにより、ストレージ要件を大幅に削減することができます。これにより、サーバーは同期時に使用可能な最新のパッケージのみを同期させます。 古いパッケージは削除されません。 同期間隔が長い場合は、特定のバージョンのパッケージを見逃している可能性があります。この場合、エラータが特定のパッケージ・バージョンに関連付けられているエラータ処理に影響があります。 エラータの整合性が重要な場合は、--latestを使用しないことをお薦めします。 しかし、パッケージが常に累積的であるため、Kspliceチャネルで--latestを使用することは例外です。
パッケージがOracle Linuxリポジトリから削除されることはないため、各リポジトリに必要な領域は常に増加します。 Spacewalkサーバーで使用可能なディスク・スペースを積極的に監視する必要があります。
Spacewalkサーバーは、ホストするパッケージを/var/satellite/redhat
ディレクトリ階層の下に保管します。 Spacewalkをインストールする前に、/var
ファイル・システムを最適に構成する方法を計画しておく必要があります。 たとえば、Logical Volume Manager(LVM)を使用して/var
をext4
またはXFS
ファイル・システムとして設定すると、必要に応じて記憶域を拡張できます。
1.3 Spacewalkサーバーのネットワーク要件
Spacewalkサーバーをインストールする前に、次のネットワーク要件と構成情報を参照してください:
-
完全修飾ドメイン名を構成
Spacewalkサーバーの完全修飾ドメイン名(FQDN)を構成する必要があります。 Spacewalkは、
.local
と.localdomain
が有効なドメイン名であるとはみなしません。注意Spacewalkサーバーとクライアントは、DNSのフォワードとリバース・ルック・アップの両方について、SpacewalkサーバーのFQDNを解決できる必要があります。 これらの条件が満たされない場合、証明書の検証もPXEブートも機能しません。 さらに、クライアントはSpacewalkサーバーに登録できません。 特に、逆DNSルックアップがないと、Inter-Server Synchronization(ISS)が失敗します。
また、hostnameコマンドによって返されるホスト名と、
/etc/hostname
ファイル(Oracle Linux 7用)または/etc/sysconfig/network
ファイル(Oracle Linux 6用)で定義されているHOSTNAME
の値が同一であることを確認します。次の例に示すように、ホスト名は、正引きおよび逆引きの両方の検索のために、DNSのシステム用に定義されたFQDNと一致する必要があります:
#
hostname
swksvr.mydom.com #grep HOSTNAME /etc/sysconfig/network
HOSTNAME=swksvr.mydom.comまた、hostコマンドを使用して、Oracle Linux 6を実行しているシステムでこの情報を確認することもできます:
#
host swksvr.mydom.com
swksvr.mydom.com has address 192.168.1.3 #host 192.168.1.3
3.1.168.192.in-addr.arpa domain name pointer swksvr.mydom.com./etc/hosts
ファイルを編集し、ループバック・アドレス(127.0.0.1
)ではなく、FQDNとホスト名の実際のIPアドレスを構成する必要があります(次の例を参照):127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.3 swksvr.mydom.com swksvr
-
Spacewalkサーバーのポート番号
次の表に、Spacewalkサーバーが使用するネットワーク・ポートの構成を示します。
Port/Protocol
方向
用途
69
/udp
インバウンド
TFTP(PXEプロビジョニングのサポートが必要な場合)
80
/tcp
インバウンドおよびアウトバウンド
HTTPアクセス
443
/tcp
インバウンドおよびアウトバウンド
HTTPSアクセス
5222
/tcp
インバウンド
Spacewalkクライアントへのサポートをプッシュ(必要な場合)
5269
/tcp
インバウンド
Spacewalkプロキシへのサポートをプッシュする(必要な場合)
-
ネットワーク時間の同期を構成
Spacewalkサーバー、プロキシ、およびクライアントがNTP(Network Time Protocol)やPTP(Precision Time Protocol)などのネットワーク時刻同期メカニズムを使用するように構成します。 Spacewalkでは、SSL(Secure Socket Layer)ベースの接続を確立するために、これらのシステムのシステム時間が120秒以内に一貫している必要があります。 さらに、サーバーとクライアントのシステム時間(タイムゾーンの差を補正した時間)が120秒を超えて異なる場合、サーバー上の
jabberd
サービスによるクライアント上のosad
サービスの認証に失敗します。詳細は、「Oracle® Linux 6: 管理者ガイド」または「Oracle® Linux 7: 管理者ガイド」を参照してください。
1.4 データベース要件と構成手順
Spacewalkデータを保存するには、次のデータベース・ソリューションを使用できます:
-
Oracle Database
-
Oracle Database Express Edition (Oracle Database XE)
-
PostgreSQL
ただし、OracleはSpacewalkと使用するOracle Databaseのみをサポートしており、Oracle Linuxサポート・カスタマ向けにOracle Database 12c Enterprise Editionを使用するための限定使用ライセンスを提供しています。
Oracle Database 11gR2を使用している既存のSpacewalkインスタンスをアップグレードする際に、現在アクティブなOracle Databaseライセンスがない場合は、Spacewalk 2.7にアップグレードする前に少なくともOracle Database 12cR1にアップグレードする必要があります。
詳細は、「Oracle® Linux 6: ライセンス情報ユーザー・マニュアル」または「Oracle® Linux 7: ライセンス情報ユーザー・マニュアル」を参照してください。
Oracle Database XE (Oracle Database Express Edition)およびPostgreSQLとその使用方法については、このドキュメントでは説明しません。 また、Oracleでは、サポートされていないデータベースから移行するためのツールも提供していません。
1.4.1 データベースのサイズ要件
Spacewalkデータベースが必要とする領域の大きさを決定する場合、次の項目では全体的な計算にサイズの見積りが含まれていることを確認: Spacewalkサーバーによって提供されるクライアント・システムの数、各クライアント・システムに割り当てられるチャネル数、および各チャネルに含まれるパッケージの数が含まれます。
Spacewalkデータベースに必要なスペースをより正確に決定するには、次の計算を使用します:
-
クライアント・システムあたり250 KiB。
-
チャネルあたり500 KiBに加えて、チャネルあたり1パッケージにつき230 KiBが追加されます(5000パッケージのチャネルには1.1 GiBが必要です)。
たとえば、10,000システムを処理している大規模なSpacewalkサーバーがあり、各システムにチャネルごとに12,000個のパッケージを含む4つのチャネルがある場合、クライアントには2.5 GiB、チャネルに対しては11個のGiBが必要になります。
1.4.2 Oracle Databaseインストール要件
Oracle Databaseサーバーをインストールしてこのサーバーを使用可能にし、Spacewalkをインストールする前に、サーバーが稼動していることを確認する必要があります。
サポートされているOracle Databaseリリースには、次のものがあります:
-
Oracle Database 12c
ソフトウェアは、https://www.oracle.com/database/technologies/oracle-database-software-downloads.htmlのOracleからダウンロードできます。
-
Oracle Database 11gR2、リリース11.2.0.3以降(アクティブなOracle Databaseライセンスが必要です)。
ノートこのOracle Databaseバージョンは、拡張サポートされており、アクティブで既存のOracle Databaseライセンスが必要です。
正しいOracle Database 11gR2リリースを入手するには、My Oracle Support(MOS)からhttps://support.oracle.comのソフトウェアをダウンロードしてください。
前提条件となる作業および環境に固有のインストール手順の詳細については、Oracleデータベース管理者に相談してください。 詳細については、Oracle Databaseのhttps://docs.oracle.com/en/database/database.htmlドキュメントを参照してください。
1.4.3 Oracle Database構成
Oracle Databaseを構成するための一般的なガイドラインは次のとおりです。 これらのステップは、インストール中またはインストール後に実行できます。 ご使用の環境に合わせて追加の構成手順を入手するには、Oracleデータベース管理者に相談してください。
-
データベースは、Unicodeをサポートする
AL32UTF8
文字セットを使用する必要があります。ノートインストールGUIで「高度なインストール」を選択した場合は、
AL32UTF8
キャラクタ・セットを指定できますが、「典型的なインストール」オプションを選択した場合は指定できません。Oracle Databaseの12cR2バージョンをインストールした場合は、
AL32UTF8
文字セットがデフォルトです。 -
データベースにはSpacewalkユーザーが必要です。 次のステップで説明するように、SQL*Plusコマンドを使用してこのユーザーを作成します。 Spacewalkユーザーのために選択した任意の名前を使用できます。
たとえば、Oracle Database 11gR2の
spacewalk
という名前のユーザーを作成できます。 Oracle Database 12cの場合、データベースがプラガブル・データベースであれば、c##spacewalk
という名前のユーザーを作成することができます。 データベースがプラガブル・データベースでない場合、c##
プレフィクスはユーザー名の一部である必要はないことに注意してください。 -
複数のSpacewalkサーバーが同じデータベース・サーバーを共有する場合は、各サーバーに別々のSpacewalkユーザーを作成する必要があります。 たとえば、同じデータベースを共有する2つのSpacewalkサーバーを設定する場合は、次の名前のOracle Database 11gR2の2つのユーザーを作成できます:
spacewalk
およびspacewalk2
。 Oracle Database 12cでは、c##spacewalk
とc##spacewalk2
ユーザーを作成できます。 -
Spacewalkユーザーには、
CONNECT
ロールとRESOURCE
ロールが割り当てられている必要があります。 -
Spacewalkユーザーには、次のシステム権限が必要です:
-
ALTER SESSION
-
CREATE SYNONYM
-
CREATE TABLE
-
CREATE TRIGGER
-
CREATE VIEW
-
UNLIMITED TABLESPACE
-
Spacewalkユーザーの作成
次のようにSpacewalkユーザーを作成します:
-
データベース・サーバー上のデータベース管理者(通常は
SYS
またはSYSDBA
)としてシステムにログインします。$
sqlplus / as SYSDBA
-
次のSQL*Plusコマンドを実行して、Spacewalkユーザーを設定します:
SQL>
create user
SQL>sw_user
identified bysw_passwd
;grant connect,resource to
SQL>sw_user
;grant alter session, create synonym, create table, create trigger, create view to
SQL>sw_user
;grant unlimited tablespace to
sw_user
;前述のコマンドの例では、
sw_user
とsw_passwd
は、Spacewalkの管理に使用するユーザー名とパスワードです。
設定が必要なSpacewalkユーザーごとに、これらのステップを繰り返します。
1.5 Spacewalkサーバーのインストール
Spacewalkサーバー・ソフトウェアをインストールする前に、次のことを行う必要があります:
-
Oracle Databaseをインストールし、起動していることを確認します。
Oracle Databaseのインストールと構成に関する具体的な手順については、Oracleデータベース管理者に相談してください。 https://docs.oracle.com/en/database/database.htmlの製品マニュアルも参照してください。
-
すべての要件を満たし、本書で説明されている前提条件のタスク、および製品のマニュアルで指定されている前提条件のタスクを実行してください。
特に、第1.3項、「Spacewalkサーバーのネットワーク要件」の説明に従って、Spacewalkサーバー用にFQDNが構成されていることを確認してください。
/etc/hosts
ファイルには、SpacewalkサーバーのFQDNエントリが必要です。注意Spacewalkサーバーとクライアントは、DNSのフォワードとリバース・ルック・アップの両方について、SpacewalkサーバーのFQDNを解決できる必要があります。 これらの条件が満たされない場合、証明書検証もPXEブートも動作しません。 さらに、クライアントはSpacewalkサーバーに登録できません。 特に、Spacewalkサーバーまたはクライアントで逆DNSルックアップがないと、Inter-Server Synchronization(ISS)が失敗します。
Spacewalkサーバー・ソフトウェアをインストールするには、次のステップを実行します:
-
Oracle Instant Clientリリース11.2.0.4をインストールします。
-
次のインスタント・クライアント・パッケージをダウンロードします。 インスタント・クライアントの詳細は、次の場所を参照してください:
https://www.oracle.com/database/technologies/instant-client.html
-
インスタント・クライアント・パッケージ(基本)
-
インスタント・クライアント・パッケージ(SQL*Plus)
ノートこれらのリリースはサポートされていないため、リリース12.1以降のパッケージはダウンロードしないでください。 詳細は、https://www.oracle.com/database/technologies/faq-instant-client.htmlのインスタント・クライアントFAQを参照してください。
-
-
Instant Clientパッケージをインストールします。
#
yum install oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
\oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
-
ldconfigにライブラリ・パスを追加します。
#
echo /usr/lib/oracle/11.2/client64/lib > /etc/ld.so.conf.d/oracle-instantclient11.2.conf
#ldconfig
注意Instant Clientがない場合、Spacewalkサーバーの構成に失敗します。 インスタント・クライアントの最新の11.2.0.4リリースをインストールすることをお薦めします。
-
-
jta
パッケージがインストールされていないことを確認し、Spacewalkのインストール時にこのパッケージがインストールされないようにします。次のように
jta
パッケージがインストールされているかどうかを確認します:#
yum list installed | grep jta
jta
パッケージを削除するには:#
yum remove jta
jta
パッケージが後でインストールされないようにするには、次のいずれかを実行します:-
Oracle Linux 6またはOracle Linux 7
addons
チャネル([ol6_addons]
または[ol7_addons]
)を無効にします。 -
次のように、
jta
ファイルを/etc/yum.conf
ファイルのexclude
ディレクティブに追加します:exclude=jta*
-
-
システム・ファイアウォールを構成します。
Oracle Linux 6の場合は、次のようにシステム・ファイアウォールを構成します:
#
iptables -I INPUT -p udp -m udp --dport 69 -j ACCEPT
#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 5222 -j ACCEPT
#iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 5269 -j ACCEPT
#iptables -I OUTPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
#iptables -I OUTPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
#service iptables save
Oracle Linux 7の場合は、次のようにシステム・ファイアウォールを構成します:
#
firewall-cmd --permanent --add-port=69/udp
#firewall-cmd --permanent --add-port=80/tcp
#firewall-cmd --permanent --add-port=443/tcp
#firewall-cmd --permanent --add-port=5222/tcp
#firewall-cmd --permanent --add-port=5269/tcp
#firewall-cmd --reload
-
https://yum.oracle.comのOracle Linux yumサーバーで、Spacewalkサーバー・パッケージおよび依存パッケージを含むリポジトリへのアクセスを可能にします。
-
Oracle Linux 6の場合、次の操作を行います:
-
システムは最新であり、
oraclelinux-release-el6
パッケージをインストールして/usr/bin/ol_yum_configure.sh
スクリプトを実行することにより、モジュールyumリポジトリ構成を使用するように遷移したことを確認してください。次に例を示します:#
yum install oraclelinux-release-el6
#/usr/bin/ol_yum_configure.sh
ノートシステムですでに新しいモジュラyumリポジトリが使用されている場合は、/usr/bin/ol_yum_configure.shコマンドを実行するときにメッセージが表示されます。 次のメッセージは、無視しても問題ありません。
Missing /etc/yum.repos.d/public-yum-ol7.repo. Exiting
-
oracle-spacewalk-server-release-el6
リリース・パッケージをインストールして、適切なyumリポジトリ構成をインストールします。#
yum install oracle-spacewalk-server-release-el6
ol6_spacewalk27_server
およびol6_spacewalk27_client
リポジトリは、リポジトリ構成ファイルでデフォルトで有効になっています。
-
-
Oracle Linux 7の場合、次の操作を行います:
-
システムは最新であり、
oraclelinux-release-el7
パッケージをインストールして/usr/bin/ol_yum_configure.sh
スクリプトを実行することにより、モジュールyumリポジトリ構成を使用するように遷移したことを確認してください。次に例を示します:#
yum install oraclelinux-release-el7
#/usr/bin/ol_yum_configure.sh
ノートOracle Linux 7.6メディア以前を使用してインストールされたシステムでは、システムがすでに新しいモジュラyumリポジトリを使用している場合、/usr/bin/ol_yum_configure.shコマンドを実行するとメッセージが表示されます。 このメッセージは無視して問題ありません:
Missing /etc/yum.repos.d/public-yum-ol7.repo. Exiting
Oracle Linux 7.7以降を使用してインストールされたシステムは、インストール時にモジュラyum構成を使用するように自動的に構成されることに注意してください。
-
oracle-linux-manager-server-release-el7
リリース・パッケージをインストールして、適切なyumリポジトリ構成をインストールします。 このパッケージには新しいネーミング規則が反映されていますが、Spacewalk 2.7の適切な情報が含まれています。#
yum install oracle-linux-manager-server-release-el7
-
Spacewalk 2.7の正しいSpacewalkリポジトリを有効にします。
#
yum-config-manager --disable ol7_oracle-linux-manager210_server ol7_oracle-linux-manager210_client
#yum-config-manager --enable ol7_spacewalk27_server ol7_spacewalk27_client
-
oraclelinux-release-el7
パッケージに含まれているol7_optional_latest
リポジトリを有効にします:#
yum-config-manager --enable ol7_optional_latest
-
-
-
Oracle Databaseを使用するように構成されたSpacewalk Serverパッケージをインストールします。
#
yum install spacewalk-oracle
ノートSpacewalkのインストール・プロセスの一環として、Spacewalkがこの設定を処理するため、すべてのOracle Linux yumサーバー構成とULN構成が無効になります。
インストール後にyumリポジトリ構成を再有効化する必要があるときに、Spacewalkでリポジトリを構成する前に、影響を受けるyumリポジトリ構成ファイルを一時的に名前変更して、次のように有効にできます:
#
mv /etc/yum.repos.d/
oracle-linux-ol7.repo.rpmsave
/etc/yum.repos.d/oracle-linux-ol7.repo
Spacewalk内でリポジトリを構成した後、必ずyumリポジトリ構成ファイルを無効にしてください。
-
(オプション)spacecmd、spacewalk-common-channels、spacewalk-hostname-rename、spacewalk-sync-setupなどのコマンドを使用する場合は、
spacecmd
とspacewalk-utils
パッケージをインストールします。#
yum install spacecmd spacewalk-utils
- spacecmd
-
コマンドラインからSpacewalkを管理することができます。 このコマンドを使用して、アクティブ化キー、構成チャネル、キックスタート、ソフトウェア・チャネル、システムおよびユーザーを管理できます。
- spacewalk-common-channels
-
コマンドラインから、Oracle Linuxのソフトウェア・チャネル、パブリックyumリポジトリ、GNUプライバシ・ガード(GPG)キーおよびアクティブ化キーを構成できます。
- spacewalk-hostname-rename
-
システム・ホスト名を変更すると、SSL証明書を再生成できます。
- spacewalk-sync-setup
-
ISS構成で使用する2つのSpacewalkサーバー間のプライマリ・ワーカー (マスター・スレーブ)関係を構成できます。 第3章、「Spacewalkサーバー用のサーバー間同期の構成」を参照してください。
ノートパッケージのインストール時に表示されるSELinux
restorecon
のメッセージは無視しても問題ありません。または、Spacewalkサーバーをそれ自体のクライアントとして登録し、そのサーバーをリリース2.7の適切なSpacewalkサーバー・チャネルにサブスクライブすると、後で追加のパッケージをインストールできます。
-
Spacewalkを構成して、spacewalk-setup --external-oracleコマンドを実行してOracle Databaseを使用します。
--external-oracle
オプションは、データベースが同じシステム上で実行されているかどうかにかかわらず、すべてのOracleデータベースがSpacewalk設定の外部にあるため使用されます。次の例は、コマンドを実行してSpacewalk設定を完了するために必要な情報を提供する対話型セッションを開始する方法を示しています。
Spacewalkを構成するときは、次の重要な点に留意してください:
-
sw_user
とsw_passwd
は、Oracle Databaseを構成したときに指定したSpacewalkのユーザー名とパスワードです(1.4.3項、「Oracle Database構成」ごと)。 -
データベース・サービス名(SID)に必要な値は、グローバル・データベース名であり、
ORACLE_SID
の値ではありません。 -
Database hostname [localhost]?
プロンプトは、設定ツールがOracle DatabaseとSpacewalkが同じホスト上に同じ場所に配置されていることを検出するとバイパスされます。 Oracle DatabaseがSpacewalkがインストールされているホスト以外のホスト上にある場合は、設定中にこの情報の入力を求められます。 -
組織単位に指定する値は、DNS内のサーバーのFQDNと同じである必要があります。 また、この値はシステムのホスト名と一致する必要があります。
#
spacewalk-setup --external-oracle
* Setting up SELinux.. * Setting up Oracle environment. * Setting up database. ** Database: Setting up database connection for Oracle backend. Global Database Name or SID (requires tnsnames.ora)?company.mydom.com
Database hostname [localhost]?spacewalk-db.mydom.com
Username?
Password?sw_user
Database: Testing database connection. ** 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?sw_passwd
my.email@mydom.com
* Performing initial configuration. * Activating Spacewalk. ** Loading Spacewalk Certificate. ** Verifying certificate locally. ** Activating Spacewalk. * Enabling Monitoring. * Configuring apache SSL virtual host. Should setup configure apache's default ssl server for you (saves original ssl.conf) [Y]?y
** /etc/httpd/conf.d/ssl.conf has been backed up to ssl.conf-swsave * Configuring jabberd. * Creating SSL certificates. CA certificate password?
Re-enter CA certificate password?cert_passwd
Organization?cert_passwd
Company Demo
Organization Unit [swksvr.mydom.com]?swksvr.mydom.com
Email Address [your.email@domain.com]?my.email@mydom.com
City?Redwood Shores
State?CA
Country code (Examples: "US", "JP", "IN", or type "?" to see a list)?US
** 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]?y
* Restarting services. Installation complete. Visit https://swksvr.mydom.com to create the Spacewalk administrator account. -
-
Spacewalkサービスが実行中であることを確認します。
#
/usr/sbin/spacewalk-service status
router (pid 5097) is running... sm (pid 5105) is running... c2s (pid 5113) is running... s2s (pid 5121) is running... tomcat6 (pid 5193) is running... [ OK ] httpd (pid 5303) is running... osa-dispatcher (pid 5331) is running... rhn-search is running (5353). cobblerd (pid 5392) is running... RHN Taskomatic is running (5419).システム上のプロセスIDは、この例に示されているものとは異なる可能性があります。
-
出力に記載されているSpacewalkサーバーのURLに注意してください。
Spacewalk管理者アカウントと初期組織を作成するには、SpacewalkサーバーURLが必要です(1.6.2項、「Spacewalk管理者および初期組織の構成」の説明を参照)。
Spacewalkサーバーのインストールが完了したら、必須またはオプションのインストール後のタスクを実行します。 手順については、1.6項、「新しくインストールされたSpacewalkサーバーの構成」を参照してください。
1.6 新しくインストールされたSpacewalkサーバーの構成
Spacewalkサーバーをインストールしたら、次の作業を実行します。 一部のタスクは、推奨されていますがオプションです。
1.6.1 自己署名付きSSL証明書の置換
SpacewalkサーバーまたはSpacewalkプロキシをインストールするときに、Spacewalkクライアントで使用する自己署名SSL証明書を作成できます。 次の手順では、自己署名証明書または期限切れのCA署名証明書を、認証局(CA)によって署名された証明書に置き換える方法について説明します。
個々のSpacewalkサーバーまたはSpacewalkプロキシの証明書、またはワイルドカード証明書がカバーするドメイン内のすべてのSpacewalkサーバーまたはSpacewalkプロキシのワイルドカード証明書を使用できます。
次のように、既存の証明書をSpacewalkサーバーまたはSpacewalkプロキシに置き換えます:
-
システムの既存のSSL構成のバックアップを作成します。
#
tar -cvf SSLconfig.tar \
/etc/httpd/conf/ssl.* \
/etc/pki/spacewalk/jabberd/server.pem \
/root/ssl-build \
/var/www/html/pub
-
次のいずれかのメソッドを使用してサーバー証明書を取得します:
-
CAからサーバー証明書を取得し、この証明書を次のようにシステム上のSSLビルド階層にインストールします:
-
証明書署名リクエスト(CSR)ファイル
/root/ssl-build/
をCAに送信します。swksvr
/ server.csrノートswksvr
は、ドメイン名を削除して、既存のSSL構成を設定するために使用したSpacewalkサーバーまたはSpacewalkプロキシの名前です。リクエストを検証した後、CAは署名されたサーバー証明書ファイルを返します。
-
署名されたサーバー証明書ファイルのバックアップを作成します。
-
必要に応じて、証明書をPrivacy Enhanced Mail(PEM)形式に変換します。
PEM形式の証明書ファイルは、次の出力に示すように、BEGIN/ENDマーカー間にBase64でエンコードされた証明書項を含むテキスト・ファイルです:
-----BEGIN CERTIFICATE----- MIIF7DCCBNSgAwIBAgIQbsx6pacDIAm4zrz06VLUkTANBgkqhkiG9w0BAQUFADCB ... Rs/iGAZeqa6ogZpHFt4MKGwlJ7net4RYxh84HqTEy2Y= -----END CERTIFICATE-----
PEM形式の証明書ファイルのファイル拡張子は通常
.crt
または.pem
です。 ただし、バイナリDER形式の証明書ファイルには、.crt
拡張子が付いていることもあります。DER形式の証明書ファイルは、通常は
.cer
または.der
のファイル拡張子を持つバイナリ・ファイルですが、拡張子.cert
または.crt
も持つことができます。次のコマンドを入力して、証明書ファイルがDER形式であるかどうかをテストします:
#
openssl x509 -inform der -text -in
certificate_file
-
証明書ファイルがDER形式の場合は、次のコマンドを入力してファイルをPEM形式の証明書ファイルに変換します:
#
openssl x509 -inform der -in
server.cer
-outserver.pem
UNIXまたはLinuxシステムでPEM形式の証明書ファイルが生成されなかった場合、ファイルには
^M
キャリッジ・リターン文字が含まれている可能性があります。 -
これらの文字を削除するには、次のいずれかのコマンドを使用します:
#
sed -i -e 's/\r//'
server.pem
#
dos2unix
server.pem
dos2unixコマンドは、
dos2unix
パッケージで使用できます。 -
PEM形式のサーバー証明書ファイルを
/root/ssl-build/
にコピーします。swksvr
/ server.crt#
cp
server.pem
/root/ssl-build/swksvr
/server.crtこのコマンドは、元のファイルを上書きします。
-
-
次のように外部ツールを使用してサーバー証明書を取得します:
-
秘密キーと署名付き証明書の両方をPEM形式の外部ツールから入手し、両方を
/root/ssl-build/swksvr
にコピーします。 -
秘密キーに既存のパスワードがある場合は削除し、次のようにキーを置き換えます:
#
openssl rsa -in keyfilewithpasswd.key -out /root/ssl-build/swksvr/server.key
このステップにより、Spacewalkサービスが無人で起動できることが保証されます。
-
-
-
次のいずれかのメソッドを使用して、CA公開証明書を
/root/ssl-build
ディレクトリにRHN-ORG-TRUSTED-SSL-CERT
ファイルとして追加します:-
使用可能な場合は、サーバー証明書を発行したCAからCAチェーン証明書を取得します。 この証明書ファイルを
/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
にコピーします:#
cp
ca_chain.pem
/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT -
CAチェーン証明書が発行CAから入手できない場合は、次のようにCAチェーン証明書を作成します:
-
発行CAからルートCA公開証明書と中間CA公開証明書を取得します。
-
サーバー証明書を発行したCAのパブリック証明書ファイルで始まるCAパブリック証明書ファイルのチェーンを、ルートCAの公開証明書ファイルに連結して、
/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
:#
cat
intermediate_ca.pem
root_ca.pem
> /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT前述のコマンドでは、
intermediate_ca.pem
はサーバー証明書に署名した中間CAの公開証明書ファイルであり、root_ca.pem
は中間証明書に署名したルートCAの公開証明書ファイルです。注意CAチェーン証明書ファイルのパブリック証明書が表示される順序は重要です。 CAチェーン証明書は、コンポーネント証明書が正しい順序でないと機能しません。
-
-
ルートCAがサーバー証明書に直接署名した場合(現在はそうは考えられません)、ルートCAの公開証明書だけが必要です。 ルートCA公開証明書ファイルを
/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
にコピーします:#
cp
root_ca.pem
/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
-
-
次のコマンドを入力して、CA公開証明書に対してサーバー証明書を検証します:
#
openssl verify -CAfile /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT \
/root/ssl-build/
/root/ssl-build/swksvr
/server.crtswksvr
/server.crt: OKコマンドがエラーを返す場合は、
RHN-ORG-TRUSTED-SSL-CERT
を正しく作成したことを確認し、サーバーの日時が正しく構成されていることも確認します。 -
CAパブリック証明書をSpacewalkデータベースに格納し、プロビジョニング・クライアント・システムで使用できるようにします:
#
rhn-ssl-dbstore -v --ca-cert=/root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT
Public CA SSL certificate: /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERTコマンドがエラーを返す場合は、-vvvなどのより高いレベルのデバッグを指定してコマンドを再実行し、問題に関する詳細情報を収集します。
-
次のようにして、WebサーバーSSLパッケージを生成してインストールします:
-
WebサーバーSSLパッケージを生成します。
#
rhn-ssl-tool --gen-server --rpm-only --dir /root/ssl-build
...working... Generating web server's SSL key pair/set RPM: /root/ssl-build/swksvr
/rhn-org-httpd-ssl-key-pair-swksvr
-1.0-rev
.src.rpm /root/ssl-build/swksvr
/rhn-org-httpd-ssl-key-pair-swksvr
-1.0-rev
.noarch.rpm The most current Spacewalk Proxy Server installation process against RHN hosted requires the upload of an SSL tar archive that contains the CA SSL public certificate and the web server's key set. Generating the web server's SSL key set and CA SSL public certificate archive: /root/ssl-build/swksvr
/rhn-org-httpd-ssl-archive-swksvr
-1.0-rev
.tar Deploy the server's SSL key pair/set RPM: (NOTE: the Red Hat Satellite or Proxy installers may do this step for you.) The "noarch" RPM needs to be deployed to the machine working as a web server, or Red Hat Satellite, or Spacewalk Proxy. Presumably 'swksvr.mydom.com
'.パッケージがインストールするファイルを一覧表示します。
#
rpm -qlp /root/ssl-build/
rhn-org-httpd-ssl-key-pair-swksvr-1.0.tar.gz rhn-org-httpd-ssl-key-pair-swksvr.spec #swksvr
/rhn-org-httpd-ssl-key-pair-swksvr-1.0-rev
.src.rpmrpm -qlp /root/ssl-build/
/etc/httpd/conf/ssl.crt/server.crt /etc/httpd/conf/ssl.csr/server.csr /etc/httpd/conf/ssl.key/server.key /etc/pki/spacewalk/jabberd/server.pemswksvr
/rhn-org-httpd-ssl-key-pair-swksvr-1.0-rev
.noarch.rpm -
WebサーバーSSL
noarch
パッケージをインストールします。#
yum install /root/ssl-build/
swksvr
/rhn-org-httpd-ssl-key-pair-swksvr
-1.0-rev
.noarch.rpm
-
-
パブリックCA証明書パッケージを生成し、パッケージとCAパブリック証明書ファイルの両方をクライアントに使用可能にします。
-
パブリックCA証明書パッケージを生成します。
#
rhn-ssl-tool --gen-ca --dir=/root/ssl-build --rpm-only
...working... Generating CA public certificate RPM: /root/ssl-build/rhn-org-trusted-ssl-cert-1.0-rev
.src.rpm /root/ssl-build/rhn-org-trusted-ssl-cert-1.0-rev
.noarch.rpm Make the public CA certificate publicly available: (NOTE: the Red Hat Satellite or Proxy installers may do this step for you.) The "noarch" RPM and raw CA certificate can be made publicly accessible by copying it to the /var/www/html/pub directory of your Red Hat Satellite or Proxy server.パッケージがインストールするファイルを一覧表示します。
#
rpm -qlp /root/ssl-build/rhn-org-trusted-ssl-cert-1.0-
rhn-org-trusted-ssl-cert-1.0.tar.gz rhn-org-trusted-ssl-cert.spec #rev
.src.rpmrpm -qlp /root/ssl-build/rhn-org-trusted-ssl-cert-1.0-
/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERTrev
.noarch.rpm -
Spacewalkサーバーまたはプロキシもクライアントとして構成されている場合は、このシステムにパブリックCA証明書
noarch
パッケージをインストールします。#
yum install /root/ssl-build/pub/rhn-org-trusted-ssl-cert-1.0-
rev
.noarch.rpmパブリックCA証明書は
/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
としてインストールされます。 -
クライアントからアクセスできるように、
rhn-org-trusted-ssl-cert-1.0-
パッケージとCA公開証明書ファイルをrev
.noarch.rpm/var/www/html/pub
にコピーします。#
cp /root/ssl-build/rhn-org-trusted-ssl-cert-1.0-
#rev
.noarch.rpm /var/www/html/pubcp /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT /var/www/html/pub
ノート更新された
RHN-ORG-TRUSTED-SSL-CERT
を/var/www/html/pub
にコピーしないと、osa-dispatcher
サービスが開始されません。ダイジェスト値を次のように比較して、インストールされている
RHN-ORG-TRUSTED-SSL-CERT
のコピーが同一であることを確認します:#
sha1sum /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT \ /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT \ /var/www/html/pub/RHN-ORG-TRUSTED-SSL-CERT
74380a372bfa55d8ab7579bf01502c874b8aae84 /root/ssl-build/RHN-ORG-TRUSTED-SSL-CERT 74380a372bfa55d8ab7579bf01502c874b8aae84 /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT 74380a372bfa55d8ab7579bf01502c874b8aae84 /var/www/html/pub/RHN-ORG-TRUSTED-SSL-CERTrhn-org-trusted-ssl-cert-1.0-
パッケージは、通常、クライアントが使用することはできません。rev
.src.rpm
-
-
Spacewalkサーバーで、Spacewalkサービスを停止し、
jabberd
データベースを消去してから、Spacewalkを再始動してください。#
/usr/sbin/spacewalk-service stop
#rm -Rf /var/lib/jabberd/db/*
#/usr/sbin/spacewalk-service start
Spacewalkプロキシで、Spacewalkプロキシ・サービスを再起動します。
#
/usr/sbin/rhn-proxy restart
-
残りのSpacewalkクライアントで、パブリックCA証明書パッケージをダウンロードしてインストールします。
#
wget https://swksvr.mydom.com/pub/rhn-org-trusted-ssl-cert-1.0-
--2015-06-05 15:15:44-- https://swksvr.mydom.com/pub/rhn-org-trusted-ssl-cert-1.0-rev
.noarch.rpmrev
.noarch.rpm Resolving swksvr.mydom.com... 192.168.1.3 Connecting to swksvr.mydom.com|192.168.1.3|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 4840 (4.7K) [application/x-rpm] Saving to: “rhn-org-trusted-ssl-cert-1.0-2.noarch.rpm” 100%[======================================>] 4,840 --.-K/s in 0s 2015-06-05 15:15:44 (57.5 MB/s) - “rhn-org-trusted-ssl-cert-1.0-rev
.noarch.rpm” saved [4840/4840] #yum install /root/ssl-build/pub/rhn-org-trusted-ssl-cert-1.0-
rev
.noarch.rpmノートその後、サーバー証明書が失効または期限切れになったためにサーバー証明書を置き換えた場合は、サーバー証明書に署名するCAを変更しない限り、クライアント上のパブリックCA証明書を更新する必要はありません。
1.6.2 Spacewalk管理者と初期組織の構成
SpacewalkサーバーをインストールしてOracle Databaseに接続したら、メインのSpacewalk管理者アカウントと初期組織を作成する必要があります。 次のステップを実行します。
-
ブラウザを開き、第1.5項、「Spacewalkサーバーのインストール」のステップ7で指定したURLにアクセスします。
次の例に示すように、出力に表示されるサーバーは
swksvr.mydom.com
であり、これはOracle Databaseの構成時に指定したホスト名です:Installation complete. Visit https://swksvr.mydom.com to create the Spacewalk administrator account.
Spacewalkはデフォルトで自己署名証明書を使用するため、SSL証明書を交換しない限り、Webブラウザを使用してSpacewalkユーザー・インタフェースを初めて起動したときにこの証明書を信頼するように求められます。 1.6.1項、「自己署名付きSSL証明書の置換」を参照してください。
-
「組織の作成」ページ(Create First Userの下にある)で、該当するフィールドに必要な値を入力します。
-
あなたに提供されているデフォルト値を受け入れます。
-
追加の構成の詳細を入力するように求められた場合は、リンクをクリックして「一般的な構成」ページに移動し、必要な値を追加入力します。
-
変更を保存し、Spacewalk Webインタフェースにログインします。
Spacewalk Webインタフェースの「概要」ページが表示されます。
「Spacewalk for Oracle® Linux: クライアント・ライフ・サイクル管理ガイドforリリース2.7」の「Spacewalk Webインタフェースについて」を参照してください。
1.6.3 SpacewalkサーバーまたはSpacewalkプロキシ上のjabberd/osaデータベースの置換
次のいずれかのエラーが発生した場合は、jabberd
/osa
データベースをSpacewalkサーバーまたはプロキシ上に置き換える必要があります:
-
OSAステータスは、クライアント・サーバーの不明な時点でオフラインと表示されます。
-
Spacewalkサーバーまたはプロキシの
/var/log/mesasges
のosa-dispatcher
のエラー。 -
"db: 腐敗が検出されました!Spacewalkサーバーまたはプロキシの
/var/log/messages
にあるすべてのjabberdプロセスを閉じてdb_recoverを実行してください。
この問題は、デフォルトのBerkeleyデータベース形式がトランザクションをサポートしておらず、同時に多くのクライアントが同時に更新しようとすると破損する可能性があるために発生します。 SQLiteに切り替えると、jabberd
データベースのトランザクション・サポートが提供され、大幅に多くのダウンストリーム・クライアントを処理できます。
問題を解決するには、次のステップを実行します:
-
osa-dispatcher
とjabberd
サービスを停止します。Oracle Linux 7を実行している場合は、systemctlコマンドを使用します:
#
systemctl stop osa-dispatcher
#systemctl stop jabberd
Oracle Linux 6を実行している場合は、serviceコマンドを使用します:
#
service osa-dispatcher stop
#service jabberd stop
-
/etc/jabberd/sm.xml
ファイルを編集し、"<driver> db </driver>"を"<driver> sqlite </driver>"に変更します。 -
/etc/jabberd/c2s.xml
ファイルを編集し、"<module> db </module>"を"<module> sqlite </module>"に変更します。 -
次のようにSQLiteデータベースを作成します:
#
sqlite3 /var/lib/jabberd/db/sqlite.db < /usr/share/jabberd/db-setup.sqlite
#chown jabber:jabber /var/lib/jabberd/db/sqlite.db
-
jabberd
とosa-dispatcher
サービスを再開してください。Oracle Linux 7の場合は、次のコマンドを入力します:
#
systemctl start jabberd
#systemctl start osa-dispatcher
Oracle Linux 6の場合は、次のコマンドを入力します:
#
service jabberd start
#service osa-dispatcher start
-
/var/log/messages
をチェックして、SQLiteが使用されていることを確認します。#
cat /var/log/messages | grep sqlite
Feb 24 12:46:18 sw24 jabberd/sm[15196]: loading 'sqlite' storage module Feb 24 12:46:18 sw24 jabberd/sm[15196]: initialised storage driver 'sqlite' Feb 24 12:46:18 sw24 c2s: Fri Feb 24 12:46:18 2017 [info] loading 'sqlite' authreg module Feb 24 12:46:18 sw24 c2s: Fri Feb 24 12:46:18 2017 [notice] initialized auth module 'sqlite' Feb 24 12:46:18 sw24 jabberd/c2s[15199]: [sirius.lot209.com] configured; realm=, authreg=sqlite, registration enabled, using PEM:/etc/pki/spacewalk/jabberd/server.pem -
クライアント・サーバー上の
osad
サービスをリセットして再起動します。以前にクライアント・サーバーを登録し、それらのサーバーに
osad
サービスをインストールした場合は、データベースが切り替えられた後に、osad-auth.conf
ファイルを除去してから、これらのシステムでosad
サービスを再始動する必要があります。Oracle Linux 7の場合は、次のコマンドを入力します:
#
systemctl stop osad
#rm -f /etc/sysconfig/rhn/osad-auth.conf
#systemctl start osad
Oracle Linux 6の場合は、次のコマンドを入力します:
#
service osad stop
#rm -f /etc/sysconfig/rhn/osad-auth.conf
#service osad start
これらのコマンドを実行すると、各サーバーの
osad
クライアントがjabberd
に再認証されます。
1.6.4 Spacewalkサーバー用のWebプロキシの構成
SpacewalkサーバーがWebプロキシ経由で接続する必要がある場合は、Spacewalkをインストールした後で、次のいずれかのメソッドを使用してWebプロキシを構成できます:
-
/etc/rhn/rhn.conf
ファイルを編集し、次の例に示すように、server.satellite.http_proxy
、server.satellite.http_proxy_username
、およびserver.satellite.http_proxy_password
パラメータのWebプロキシ構成設定を指定します:server.satellite.http_proxy = webproxy.mydom.com:80 server.satellite.http_proxy_username = another server.satellite.http_proxy_password = examplepass
-
Spacewalk Webインタフェースで、次の操作を行います:
-
「管理者」タブを選択し、次に「Spacewalk構成」、「一般」の順に選択します。
-
「HTTPプロキシ」、「HTTPプロキシ・ユーザー名」、「HTTPプロキシ・パスワード」、および「HTTPプロキシ・パスワードを確認」の各フィールドにWebプロキシ構成を入力してから、「更新」をクリックします。
-
1.7 Spacewalkサーバーのアップグレード
リリース2.6のSpacewalkサーバーをリリース2.7のSpacewalkサーバーに次のようにアップグレードします:
Oracle Database 11gR2を使用している既存のSpacewalkインスタンスをアップグレードする場合は、Spacewalkリリース2.7にアップグレードする前に、Oracle Database 12cR1に少なくともアップグレードする必要があります。 詳細は、1.4項、「データベース要件および構成手順」を参照してください。
次の手順では、リリース2.7のSpacewalkリポジトリを設定していることを前提としています。
jpackage
リポジトリを使用しないようにしてください。このパッケージはこのバージョンのSpacewalkで廃止されています。 パッケージを無効にするか、/etc/yum.repos.d/jpackage-generic.repo
ファイルを削除してください。
-
次のディレクトリにあるすべてのSpacewalk構成ファイルをバックアップします:
-
/etc/jabberd
-
/etc/rhn
-
/etc/sysconfig/rhn
-
-
サーバーSSLビルド・ディレクトリ(通常は
/root/ssl-build
)をバックアップします。たとえば、次のようなコマンドを実行してバックアップを作成できます:
#
tar -cvf preSWupgrade.tar /etc/jabberd /etc/rhn /etc/sysconfig/rhn /root/ssl-build
-
Spacewalkデータベースをバックアップします。
Recovery Manager(RMAN)を使用してバックアップを作成する方法の詳細は、次のドキュメントを参照してください:
-
「RMANスタート・ガイド」 (Oracle Database 11gR2)
-
「RMANスタート・ガイド」 (Oracle Database 12c)
-
-
以前のSpacewalkリリースのSpacewalkサーバー・パッケージへのアクセスを無効にし、Spacewalk 2.7のパッケージへのアクセスを有効にします。
-
Spacewalkサーバーが自身のクライアントとして登録されている場合は、次の操作を行います:
-
Oracle Linux 6ベース・チャネルの子としてSpacewalkサーバー・チャネルを作成します。
-
Oracle Linux 6と同じGPG設定を使用して、Oracle Linux yumサーバー(
https://yum.oracle.com/repo/OracleLinux/OL6/spacewalk27/server/x86_64/
)上のSpacewalk ServerチャネルにアクセスするSpacewalk Serverリポジトリを作成します。 -
Spacewalk ServerリポジトリをSpacewalk Serverチャネルに関連付けて、Oracle Linux yumサーバーからリポジトリ・パッケージを同期します。
-
oraclelinux-release-el7
パッケージに含まれているol7_optional_latest
リポジトリを有効にします:#
yum-config-manager --enable ol7_optional_latest
このリポジトリに含まれるパッケージは、Spacewalk 2.6からSpacewalk 2.7へのアップグレードを実行するために必要です。
-
Spacewalk内のSpacewalkサーバーのチャネル・サブスクリプションを、以前のバージョンからリリース2.7のSpacewalkサーバー・チャネルに変更します。
-
-
Spacewalkサーバーが、Oracle Linux yumサーバーからSpacewalk Server 2.4または2.6パッケージを取得するように構成されている場合は、次のようにします:
-
Oracle Linux yumサーバー・リポジトリ構成ファイルで、Spacewalk Server 2.4または2.6リポジトリを無効にします。 または、Spacewalk Server 2.4または2.6
.repo
ファイルを削除します。 -
システムは最新であり、
oraclelinux-release-el6
またはoraclelinux-release-el7
パッケージをインストールして/usr/bin/ol_yum_configure.sh
スクリプトを実行することによって、モジュールyumリポジトリ構成を使用するように移行済であることを確認してください。 たとえば、Oracle Linux 7では次のコマンドを実行します:#
yum install oraclelinux-release-el7
#/usr/bin/ol_yum_configure.sh
ノートOracle Linux 7.6メディア以前を使用してインストールされたシステムでは、システムがすでに新しいモジュラyumリポジトリを使用している場合、/usr/bin/ol_yum_configure.shコマンドを実行するとメッセージが表示されます。 このメッセージは無視して問題ありません:
Missing /etc/yum.repos.d/public-yum-ol7.repo. Exiting
Oracle Linux 7.7メディア以降を使用してインストールされたシステムは、インストール時にモジュラyum構成を使用するように自動的に構成されることに注意してください。
-
適切なyumリポジトリ構成をインストールします。
-
Oracle Linux 6の場合は、
oracle-spacewalk-server-release-el6
パッケージをインストールします。ol6_spacewalk27_server
およびol6_spacewalk27_client
リポジトリは、リポジトリ構成ファイルでデフォルトで有効になっています。#
yum install oracle-spacewalk-server-release-el6
-
Oracle Linux 7の場合は、
oracle-linux-manager-server-release-el7
パッケージをインストールします。 このパッケージには新しいネーミング規則が反映されていますが、Spacewalk 2.7の適切な情報が含まれています。#
yum install oracle-linux-manager-server-release-el7
次に、Spacewalk 2.7の正しいSpacewalkリポジトリを有効にします。
#
yum-config-manager --disable ol7_oracle-linux-manager210_server ol7_oracle-linux-manager210_client
#yum-config-manager --enable ol7_spacewalk27_server ol7_spacewalk27_client
-
-
-
-
バージョン・ロックされたパッケージを確認して削除します。たとえば、次のようになります:
#
yum versionlock list
#yum versionlock delete cglib c3p0
-
Spacewalkパッケージをアップグレードします。
#
yum upgrade
-
Spacewalkサービスを停止します。
#
/usr/sbin/spacewalk-service stop
Shutting down spacewalk services... Stopping RHN Taskomatic... Stopped RHN Taskomatic. Stopping cobbler daemon: [ OK ] Stopping rhn-search... Stopped rhn-search. Shutting down osa-dispatcher: [ OK ] Stopping httpd: [ OK ] Stopping tomcat6: [ OK ] Terminating jabberd processes ... Stopping s2s: [ OK ] Stopping c2s: [ OK ] Stopping sm: [ OK ] Stopping router: [ OK ] Done.パッケージのインストール時に表示されるSELinux
restorecon
のメッセージは無視しても問題ありません。 -
Spacewalkサーバー上で次のコマンドを入力して、Spacewalkデータベース・スキーマをアップグレードします:
#
/usr/bin/spacewalk-schema-upgrade
Please make sure all Spacewalk services apart from database are stopped. Schema upgrade: [spacewalk-schema-2.6.17-1.0.1.el6] -> [spacewalk-schema-2.7.28-1.el6] Searching for upgrade path: [spacewalk-schema-2.6.17-1.0.1] -> [spacewalk-schema-2.7.28-1] Searching for upgrade path: [spacewalk-schema-2.6.17] -> [spacewalk-schema-2.7.28] Searching for upgrade path: [spacewalk-schema-2.6] -> [spacewalk-schema-2.7] The path: [spacewalk-schema-2.6] -> [spacewalk-schema-2.7] Planning to run spacewalk-sql with [/var/log/spacewalk/schema-upgrade/20180125-085549-script.sql] Please make sure you have a valid backup of your database before continuing. Hit Enter to continue or Ctrl+C to interrupt: Executing spacewalk-sql, the log is in [/var/log/spacewalk/schema-upgrade/20180125-085549-to-spacewalk-schema-2.7.log]. The database schema was upgraded to version [spacewalk-schema-2.7.28-1.el6].spacewalk-schema-upgradeコマンドの出力で、スキーマのアップグレードに成功したかどうかを確認します。
障害が発生した場合は、次の操作を行います:
-
原因を判別するには、
/var/log/spacewalk/schema-upgrade
ディレクトリ内のログ・ファイルを調べてください。 -
バックアップからデータベースをリストアします。
-
十分なスペースがない場合は、表領域を拡張するなど、問題の原因を解決してください。
-
データベース・スキーマをアップグレードします。
-
-
Oracle DatabaseのSpacewalk構成をアップグレードします。
#
spacewalk-setup --external-oracle --upgrade
ノートこのステップは、
jabberd-dispatcher
/osa-dispatcher
の構成をデフォルトに戻します。 SQLiteを使用するように切り替えた場合は、手動で構成を編集する必要があります。 -
Spacewalkサービスを再起動します。
#
/usr/sbin/spacewalk-service start
Starting spacewalk services... Initializing jabberd processes ... Starting router: [ OK ] Starting sm: [ OK ] Starting c2s: [ OK ] Starting s2s: [ OK ] Starting tomcat6: [ OK ] Waiting for tomcat to be ready ... Starting httpd: [ OK ] Starting osa-dispatcher: [ OK ] Starting rhn-search... Starting cobbler daemon: [ OK ] Starting RHN Taskomatic... Done. -
必要なインストール後の作業を実行します。
1.6項、「新しくインストールされたSpacewalkサーバーの構成」の情報を確認してください。
1.8 Spacewalkサーバーの問題のトラブルシューティング
次の情報は、Spacewalkサーバーで発生する可能性のある問題の診断と解決方法を説明しています。 その他の既知の問題および回避策の詳細は、『Spacewalk for Oracle® Linux: リリース・ノートforリリース2.7』を参照してください。
「/usr/sbin/spacewalk-serviceのステータス」コマンドを使用して、Spacewalkサービスが正しく実行されていないかどうかを確認します。 サービスが正常に開始されない場合、問題は通常、インストール中に誤った構成情報が提供されたために発生します。
次のログファイルでエラーを確認します:
-
/var/log/httpd/*
-
httpd
サービスのログファイルですか?。 -
/var/log/rhn_satellite_install.log
-
インストール・ログファイルです。
-
/var/log/rhn/reposync/*
-
リポジトリ同期ログファイルです。
-
/var/log/rhn/rhn_server_satellite.log
-
同期ログファイルです。
-
/var/log/rhn/rhn_server_xmlrpc.log
-
XML-RPCトランザクション・ログファイルです。
-
/var/log/rhn/rhn_taskomatic_daemon.log
-
Red Hat Network(RHN)タスク・エンジン(Taskomatic)のログ・メッセージです。
-
/var/log/tomcat6
-
Oracle Linux 6のTomcatログ・メッセージです。
-
/var/log/tomcat
-
Oracle Linux 7のTomcatログ・メッセージです。
-
/var/log/yum.log
-
Yumログ・ファイルです。
1.8.1 Spacewalkロギングの管理
Spacewalkは、特に/var/log/httpd
ディレクトリの下に多数のログ・メッセージを生成します。 ディスク・スペースが足りなくなるのを防ぐため、logrotate
の設定を調整して、よりアクティブなローテーション、圧縮、およびログファイルのアーカイブを実装する必要があります。
詳細は、「Oracle® Linux 6: 管理者ガイド」および「Oracle® Linux 7: 管理者ガイド」を参照してください。
1.8.2 osa-dispatcherが証明書検証の失敗を報告
osa-dispatcher
サービスを手動で起動すると、次のようなエラー・メッセージが表示されることがあります:
$ sudo systemctl start osa-dispatcher
Starting osa-dispatcher: Spacewalk 10611 2015/05/26 17:11:22 +01:00: ('Traceback caught:',)
Spacewalk 10611 2015/05/26 17:11:22 +01:00: ('Traceback (most recent call last):\n
File "/usr/share/rhn/osad/jabber_lib.py", line 631, in connect\n
ssl.do_handshake()\nError: [(\'SSL routines\', \'SSL3_GET_SERVER_CERTIFICATE\',
\'certificate verify failed\')]\n',)
[FAILED]
このエラーは通常、システム・ホスト名がDNS内のFQDNと一致しないか、Spacewalkをインストールしたときに組織単位の名前に不正なFQDNを指定したことを示しています。
問題を解決するには、SSL証明書を再生成します。 ただし、システム・ホスト名が時間の経過とともに変更されている場合は、証明書を再生成する際に、証明書のパスワードを指定する必要があります。 準備するには、まず正しいパスワードを知っていることを確認します。 次のコマンドを入力します。
$sudo openssl rsa -in /root/ssl-build/RHN-ORG-PRIVATE-SSL-KEY
Enter pass phrase for /root/ssl-build/RHN-ORG-PRIVATE-SSL-KEY:writing RSA key -----BEGIN RSA PRIVATE KEY----- MIIEowIBAAKCAQEAvYQ/Enqo+T3WByuXiOQCpIh7eBFdqWt/e+cm3pfvGYBqi/1g ... +rEs1ZK2mCoofnPzg2o097oPj5v4IHYh8Bmlssbk9BHvQ2ZQckSA -----END RSA PRIVATE KEY-----
cert_passwd
正しいパスワードを入力した場合は、base64でエンコードされた秘密キーが表示されます。 それ以外の場合、このコマンドはエラー・メッセージunable to load Private Key
を生成します。
確認後、次のステップに進みます:
-
次のコマンドを発行して証明書を再生成します:
$
sudo /usr/sbin/spacewalk-hostname-rename
IP_address
--ssl-orgunit=FQDN
-
パスワードを求められたら、以前に既存の証明書を作成したときに使用したものと同じパスワードを入力します。
-
次のコマンドを入力して、
jabberd
データベースを消去します。-
Oracle Linux 6の場合:
$
sudo service jabberd stop
$sudo service osa-dispatcher stop
$sudo rm -Rf /var/lib/jabberd/db/*
$sudo service jabberd start
$sudo service osa-dispatcher start
-
Oracle Linux 7の場合:
$
sudo systemctl stop jabberd
$sudo systemctl stop osa-dispatcher
$sudo rm -Rf /var/lib/jabberd/db/*
$sudo systemctl start jabberd
$sudo systemctl start osa-dispatcher
-
-
サーバーに登録されているすべてのクライアントで、
/etc/sysconfig/rhn/up2date
ファイルのserverURL
の値が正しいサーバーのホスト名またはIP値で構成されていることを確認します。たとえば、次のようになります:serverURL=https://swksvr.mydom.com/XMLRPC
1.8.3 osa-dispatcherが無効なパスワードを報告
osa-dispatcher
サービスが正しく起動したが後で予期せず停止すると、次のようなログ・エラーが表示されることがあります:
Spacewalk 2316 2015/06/05 20:38:47 +01:00: ('Invalid password',)
このエラーは、jabberd
データベースに無効なエントリが含まれている場合に発生します。
エラーをクリアするには、jabberd
およびosa-dispatcher
サービスを停止し、jabberd
データベースを消去してから、jabberd
およびosa-dispatcher
サービスを再起動します。
Oracle Linux 6の場合は、次のコマンドを入力します:
#service jabberd stop
#service osa-dispatcher stop
#rm -Rf /var/lib/jabberd/db/*
#service jabberd start
#service osa-dispatcher start
Oracle Linux 7の場合は、次のコマンドを入力します:
#systemctl stop jabberd
#systemctl stop osa-dispatcher
#rm -Rf /var/lib/jabberd/db/*
#systemctl start jabberd
#systemctl start osa-dispatcher
OSAの問題を回避するには、定期的にjabberd
データベースをクリアする必要があります。
データベースの破損を回避するには、第1.6.3項、「SpacewalkサーバーまたはSpacewalkプロキシのjabberd/osaデータベースの置換」の手順に従います。
1.8.4 Tomcatが起動しない
Tomcatサービスが起動しない場合は、geronimo-jta-1.1-api
パッケージの代わりにjta
パッケージがインストールされている可能性があります。
この問題を解決するには、jta
パッケージを削除し、geronimo-jta-1.1-api
パッケージをインストールします。
Spacewalkサービスを再起動します。
# /usr/sbin/spacewalk-service restart
1.8.5 Tomcatのメモリー不足
TomcatログにOutOfMemoryError: Java heap space
などのメッセージが表示された場合は、Tomcatサービスで使用可能なヒープの最大メモリー量を次のように増やします:
-
Oracle Linux 6の
/etc/sysconfig/tomcat6
ファイルまたはOracle Linux 7の/etc/sysconfig/tomcat
ファイルを編集し、JAVA_OPTS
設定の引数を-Xmx
に増やします。たとえば、
-Xmx1024m
はヒープの最大サイズを1 GBに増やします。 -
Spacewalkサービスを再起動します。
#
/usr/sbin/spacewalk-service restart