2 Oracle Linux Managerプロキシのインストールとアップグレード
警告:
このドキュメントで説明するソフトウェアは、Extended Supportでの期間限定でサポートされます。 Oracle Linux 7は現在拡張サポート中です。 詳細は、Oracle Linux拡張サポートおよびOracleオープン・ソース・サポート・ポリシーを参照してください。
OS管理ハブを使用してオペレーティング・システム・インフラストラクチャを管理することを検討してください。 詳細は、「OS管理ハブ」を参照してください。
この章では、Oracle Linux Managerプロキシをインストールまたはアップグレードする方法について説明します。
Oracle Linux Managerプロキシは、Oracle Linux ManagerクライアントとOracle Linux Managerサーバーの間の仲介として機能します。 Oracle Linux Managerプロキシの主な目的は、Oracle Linux Managerサーバーの負荷を軽減し、Oracle Linux Managerクライアントのダウンロード時間を短縮することです。
Oracle Linux Managerプロキシ要件
Oracleは、x86_64プラットフォーム上のOracle Linux 7で実行されているOracle Linux Managerプロキシをサポートしています。 Oracle Linux Managerプロキシをインストールするには、次の要件に注意してください。
Oracle Linuxの要件
追加要件は次のとおりです:
-
「最小」または「基本的なサーバー」プロファイルのいずれかを使用して、Oracle Linux 7をインストールします。
-
Oracle Linux Managerをインストールする前に、Oracle Linux Managerサービスを開始できない
jta
パッケージを削除します。 -
https://yum.oracle.comのOracle Linux yumサーバーからOracleが提供するパッケージのみを使用してください。 サードパーティ・パッケージ・リポジトリは必要ありません。
-
Oracle Linux yumサーバーからの最新のパッケージでシステムを更新します。
-
「ULNにOracle Linux Managerサーバーまたはクライアントを登録しないでください」。 かわりに、Oracle Linux Managerサーバーを自身のクライアントとして登録し、更新を受信します。
記憶域要件
Oracle Linux Managerプロキシのストレージ要件は次のとおりです:
-
Oracle Linux Managerプロキシには4 GB以上のメモリーが必要です。
-
通常、プロキシ・キャッシュには、Oracle Linuxリリースとアーキテクチャの組み合わせごとに10 GBのストレージが必要です。
-
デフォルトでは、Oracle Linux Managerプロキシは
/var/spool/squid
ディレクトリ階層にパッケージをキャッシュし、このディレクトリ階層を含むファイル・システムの空き領域の最大60%を使用するように制限されています。
ネットワーク要件
Oracle Linux Managerプロキシのネットワーク要件は次のとおりです:
-
プロキシの静的IPアドレス
-
DNSホスト名のフォワードおよびリバースを正しく構成しました。指定は次のとおりです:
注意:
サーバー・ホスト名のこれらの指定に準拠していないと、Oracle Linux Managerがプロキシ通信、サーバー間同期(ISS)、証明書検証およびその他の操作領域で失敗する可能性があります。
-
サーバーのホスト名に大文字を含めることはできません。
-
/etc/hostname
ファイルにはホストの短縮名が含まれていますが、/etc/hosts
ファイルではホストFQDNを指定する必要があります(次の例の太字で示されています):cat /etc/hostname
olmproxy
cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.0.0.24 olmproxy.us.mydom.com swkproxy
Oracle Linux Managerは、
.local
と.localdomain
が有効なドメイン名であるとはみなしません。
-
-
ポート番号
次の表に、構成に応じてOracle Linux Managerプロキシが使用するネットワーク・ポートを示します。
ポート/プロトコル 方向 用途 80
/tcp
インバウンドおよびアウトバウンド
HTTPアクセス
443
/tcp
インバウンドおよびアウトバウンド
HTTPSアクセス
5222
/tcp
インバウンド
Oracle Linux Managerクライアントへのプッシュ・サポート(必要な場合)
5269
/tcp
インバウンド
Oracle Linux Managerプロキシへのプッシュ・サポート(必要な場合)
-
構成済のネットワーク時間同期
NTPまたはPTPを使用するようにOracle Linux Managerサーバー、プロキシおよびクライアントを構成します。 Secure Socket Layer (SSL)ベースの接続を確立するために、Oracle Linux Managerでは、サーバー・システムとクライアント・システムのシステム時間が120秒以内に一貫している必要があります。
Oracle Linux Managerプロキシに必要な場合は、インストール時にwebプロキシを構成できます。 「Oracle Linux ManagerサーバーのWebプロキシの構成」を参照してください。
Oracle Linux Managerプロキシのインストール
Oracle Linux Managerは、完全なOracle Linux Managerクライアントで構成し、Oracle Linux Managerサーバーに登録する必要があります。
-
jta
パッケージがインストールされていないことを確認します。-
システムにインストールされている場合は、
jta
パッケージを削除します。sudo yum list installed | grep jta sudo yum remove jta
-
将来、パッケージを誤ってインストールしないようにするには、次のいずれかを実行します:
-
次のように、
jta
ファイルを/etc/yum.conf
ファイルのexclude
ディレクティブに追加します:exclude=jta*
-
Oracle Linux 7
addons
チャネル([ol7_addons]
)を無効にします。sudo yum-config-manager --disable ol7_addons
-
-
-
システム・ファイアウォールを構成します。
sudo firewall-cmd --permanent --add-port=80/tcp sudo firewall-cmd --permanent --add-port=443/tcp sudo firewall-cmd --permanent --add-port=5222/tcp sudo firewall-cmd --permanent --add-port=5269/tcp sudo systemctl reload firewalld
-
システムで正しいチャネルが構成されていることを確認してください。
-
まだ存在しない場合は、Oracle Linux ManagerとOracle Linux 7の両方に必要な次のソフトウェア・チャネルを作成します:
-
Oracle Linux 7 Latest (
https://yum.oracle.com/repo/OracleLinux/OL7/latest/
) -
Oracle Linux 7 Optional Latest (
https://yum.oracle.com/repo/OracleLinux/OL7/optional/latest/
-
Oracle Linux Manager (formerly Spacewalk) Server 2.10 for Oracle Linux 7リポジトリ(
https://yum.oracle.com/repo/OracleLinux/OL7/oraclemanager210/server/x86_64/
) -
Oracle Linux Manager (formerly Spacewalk) Client 2.10 for Oracle Linux 7リポジトリ(
https://yum.oracle.com/repo/OracleLinux/OL7/oraclemanager210/client/x86_64/
)
-
-
これらのチャネル内のすべてのパッケージが、Oracle Linux yumサーバーと正しく同期されていることを確認します。
-
システム・チャネルのサブスクリプションをSpacewalk 2.7サーバー・チャネルからOracle Linux Manager (formerly Spacewalk) Server 2.10 for Oracle Linux 7チャネルに変更します。
-
プロキシをOracle Linux Managerクライアント・チャネルおよびサーバー・チャネルにサブスクライブします。
-
-
Oracle Linux Managerクライアント・ソフトウェアおよび
openssh-clients
パッケージをインストールします。sudo yum install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin openssh-clients
-
プロキシとして機能するOracle Linux Managerサーバーのクライアントとしてシステムを登録します。
ノート:
サーバーを登録する前に、すでにクライアント・アクティベーション・キーを作成している必要があります。 有効な場合、汎用デフォルト・キーを使用できます。 ただし、固有のアクティブ化キーの使用をお薦めします。
-
CA証明書ファイル
RHN-ORG-TRUSTED-SSL-CERT
をサーバーにダウンロードします。ブラウザ・タブで、
http://olmsvr_FQDN/pub
にナビゲートします。olmsvr_FQDNはOracle Linux Managerサーバーの完全修飾ドメイン名で、CA証明書ファイルRHN-ORG-TRUSTED-SSL-CERT
を/usr/share/rhn
にダウンロードします。または、次のようにコマンドラインからwgetを使用します。
sudo wget -q -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT http://olmsvr_FQDN/pub/RHN-ORG-TRUSTED-SSL-CERT
-
rhnreg_ksコマンドを使用し、CA証明書のパスを指定する--sslCACertオプションを指定して、システムをOracle Linux Managerに登録します。
sudo rhnreg_ks --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --serverUrl=https://olmsvr_FQDN/XMLRPC --activationkey=activation_key
-
Oracle Linux Managerサーバーへのアクセスに使用される
/etc/sysconfig/rhn/up2date
ファイルの設定が正しいことを確認します。-
serverURL
がOracle Linux ManagerサーバーURL (https://olmsvr.mydom.com/XMLRPC
など)に設定されていることを確認します :sudo grep ^serverURL= /etc/sysconfig/rhn/up2date
-
sslCACert
が正しいCA証明書ファイルに設定されていることを確認します。たとえば、/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT
:sudo grep ^sslCACert= /etc/sysconfig/rhn/up2date
ノート:
設定が正しくない場合は、システムをrhnreg_ksコマンドに登録するときに間違いが発生する可能性があります。 rhnreg_ksコマンドを再度実行して、CA証明書およびOracle Linux ManagerサーバーURLのパスを正しく指定したことを確認します。 また、--forceオプションを指定して、以前の設定をオーバーライドしてください。
-
-
-
Oracle Linux Managerプロキシ・インストーラ・パッケージをインストールします。
sudo yum -y install spacewalk-proxy-installer
-
/root/ssl-build
ディレクトリを作成します。sudo mkdir /root/ssl-build
-
Oracle Linux ManagerサーバーのCAキーと公開証明書ファイルをプロキシ・サーバー
/root/ssl-build
にコピーします。 コピーするファイルは次のとおりです:-
RHN-ORG-PRIVATE-SSL-KEY
-
RHN-ORG-TRUSTED-SSL-CERT
-
rhn-ca-openssl.cnf
次の例を参照してください。
sudo scp 'root@olm_server:/root/ssl-build/{RHN-ORG-PRIVATE-SSL-KEY,RHN-ORG-TRUSTED-SSL-CERT,rhn-ca-openssl.cnf}' /root/ssl-build
RHN-ORG-PRIVATE-SSL-KEY 100% 1751 1.7KB/s 00:00 RHN-ORG-TRUSTED-SSL-CERT 100% 5316 5.2KB/s 00:00 rhn-ca-openssl.cnf 100% 2186 2.1KB/s 00:00
-
-
/usr/sbin/configure-proxy.shスクリプトを実行して、Oracle Linux Managerプロキシを構成します。
次の例に示すように、スクリプトは対話型構成を開始します。 ユーザー入力は太字で表示されます。
sudo /usr/sbin/configure-proxy.sh
Using RHN parent (from /etc/sysconfig/rhn/up2date): olmsvr.mydom.com Using CA Chain (from /etc/sysconfig/rhn/up2date): /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT HTTP Proxy []: [Enter] Proxy version to activate [2.7]: [Enter] Traceback email []: my.email@mydom.com Use SSL [Y/n]: Y Regardless of whether you enabled SSL for the connection to the Oracle Linux Manager Parent Server, you will be prompted to generate an SSL certificate. This SSL certificate will allow client systems to connect to this Oracle Linux Manager Proxy securely. Refer to the Oracle Linux Manager Proxy Installation Guide for more information. Organization []: Company Demo Organization Unit [olmproxy.us.mydom.com]: [Enter] Common Name [olmproxy.us.mydom.com]: [Enter] City []: Redwood Shores State []: CA Country code []: US Email [my.email@mydom.com]: [Enter] Cname aliases (separated by space) []: [Enter] Oracle Linux Manager Proxy successfully activated. Loaded plugins: rhnplugin This system is receiving updates from RHN Classic or Red Hat Satellite. Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package spacewalk-proxy-management.noarch... will be installed ... Transaction Summary ================================================================================ Install 42 Package(s) Total download size: 13 M Installed size: 32 M Is this ok [y/N]: y Downloading Packages: (1/42): apr... | 122 kB 00:00 ... Using CA key at /root/ssl-build/RHN-ORG-PRIVATE-SSL-KEY. Generating distributable RPM for CA public certificate: Copying CA public certificate to /var/www/html/pub for distribution to clients: Generating SSL key and public certificate: CA password: cert_passwd Installing SSL certificate for Apache and Jabberd: Preparing packages for installation... rhn-org-httpd-ssl-key-pair-olmproxy-1.0-1 Create and populate configuration channel rhn_proxy_config_1000010000? [Y/n]: Y Oracle Linux Manager username: []: olm_user Password: olm_passwd Using server name olmsvr.mydom.com Creating config channel rhn_proxy_config_1000010000 Config channel rhn_proxy_config_1000010000 created Using server name olmsvr.mydom.com Pushing to channel rhn_proxy_config_1000010000: Local file /etc/httpd/conf.d/ssl.conf -> remote file /etc/httpd/conf.d/ssl.conf Local file /etc/rhn/rhn.conf -> remote file /etc/rhn/rhn.conf Local file /etc/squid/squid.conf -> remote file /etc/squid/squid.conf Local file /etc/httpd/conf.d/cobbler-proxy.conf -> remote file /etc/httpd/conf.d/cobbler-proxy.conf Local file /etc/httpd/conf/httpd.conf -> remote file /etc/httpd/conf/httpd.conf Local file /etc/jabberd/c2s.xml -> remote file /etc/jabberd/c2s.xml Local file /etc/jabberd/sm.xml -> remote file /etc/jabberd/sm.xml Enabling Oracle Linux Manager Proxy. Shutting down rhn-proxy... Terminating jabberd processes ... Stopping s2s: [FAILED] Stopping c2s: [FAILED] Stopping sm: [FAILED] Stopping router: [FAILED] Stopping httpd: [FAILED] Stopping squid: [FAILED] Done. Starting rhn-proxy... init_cache_dir /var/spool/squid... Starting squid: . [ OK ] Starting httpd: [ OK ] Initializing jabberd processes ... Starting router: [ OK ] Starting sm: [ OK ] Starting c2s: [ OK ] Starting s2s: [ OK ] Done. There were some answers you had to enter manually. Would you like to have written those into file formatted as answers file? [Y/n]: y Writing proxy-answers.txt.NtM1Y
ノート:
指定した情報は、前の出力で
proxy-answers.txt.NtM1Y
などのproxy-answers.txt.UID
というファイルに記録されます。 このファイルを使用すると、次の例に示すように、Oracle Linux Managerプロキシの構成を自動化できます:configure-proxy.sh --non-interactive --answer-file=proxy-answers.txt.NtM1Y
-
自己署名SSL証明書ではなく、サード・パーティのCA署名証明書を使用する場合は、「自己署名付きSSL証明書の置き換え」で説明されている手順に従ってください。
ノート:
クライアントを登録する前に、自己署名SSL証明書を置き換えることをお薦めします。 それ以外の場合は、既存の各クライアントに個別にログオンし、新しいSSL証明書を使用するように構成する必要があります。 このステップは、Oracle Linux Managerサーバーからは実行できません。
-
Oracle Linux Managerプロキシが正しく実行されていることを確認するには、次の例に示すように、Oracle Linux Managerクライアントの登録時にプロキシのURLを指定
sudo rhnreg_ks --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --serverUrl=https://olmproxy_FQDN/XMLRPC --activationkey=activation_key
クライアントをサブスクライブしたら、サーバー上のソフトウェア・チャネルにサブスクライブし、クライアントからパッケージを更新できることを確認します。
Spacewalk 2.7プロキシ・サーバーのアップグレード
Spacewalkプロキシ・システムを次のようにアップグレードします:
-
Spacewalk 2.7サーバーにまだ存在しない場合は、Oracle Linux Managerクライアントとサーバーの両方のソフトウェア・チャネルを作成してから、これらのチャネルにプロキシ・システムをサブスクライブします。
-
Oracle Linux Managerクライアント・チャネルをOracle Linux 7ベース・チャネルの子として作成します。
-
Oracle Linuxリリースと同じGPG設定を使用して、Oracle Linux yumサーバー (
https://yum.oracle.com/repo/OracleLinux/OL7/oraclelinuxmanager210/client/x86_64/
)上の対応するクライアント・チャネルにアクセスするOracle Linux Managerクライアント・リポジトリを作成します。 -
Oracle Linux Managerクライアント・リポジトリを対応するクライアント・チャネルに関連付け、Oracle Linux yumサーバーからリポジトリ・パッケージを同期します。
-
Oracle Linux Managerサーバー・チャネルをOracle Linux 7ベース・チャネルの子として作成します。
-
Oracle Linuxリリースと同じGPG設定を使用して、Oracle Linux yumサーバー (
https://yum.oracle.com/repo/OracleLinux/OL7/oraclelinuxmanager210/server/x86_64/
)上の対応するサーバー・チャネルにアクセスするOracle Linux Managerサーバー・リポジトリを作成します。 -
Oracle Linux Manager (旧称Spacewalk) Server 2.10 for Oracle Linux 7リポジトリを対応するサーバー・チャネルに関連付け、Oracle Linux yumサーバーからリポジトリ・パッケージを同期します。
-
システム・チャネルのサブスクリプションをSpacewalk 2.7サーバー・チャネルからOracle Linux Manager (formerly Spacewalk) Server 2.10 for Oracle Linux 7チャネルに変更します。
-
リリース2.7のSpacewalkサーバーおよびクライアント・チャネルではなく、アップグレードしたプロキシ・システムをOracle Linux Managerクライアント・チャネルおよびサーバー・チャネルにサブスクライブします。
-
-
/root/ssl-build
にCAキー、SSL証明書、およびopenSSL構成ファイルをバックアップします。たとえば、次のようにtarコマンドを使用してバックアップを作成できます:
sudo cd /root/ssl-build sudo tar -cvf /tmp/sslcerts.tar RHN-ORG-PRIVATE-SSL-KEY RHN-ORG-TRUSTED-SSL-CERT rhn-ca-openssl.cnf
-
yum updateコマンドを実行して、システム上のすべてのパッケージを更新します。
sudo yum update
-
必要に応じて、バックアップ・ファイルからCAキー、SSL証明書、およびopenSSL構成ファイルを
/root/ssl-build
に抽出します:sudo cd /root/ssl-build sudo tar -xvf /tmp/sslcerts.tar
-
configure-proxy.shスクリプトを実行して、Oracle Linux Managerプロキシを構成します。
次の例では、以前のインストールから保存された
proxy-answers.txt.UID
ファイルを使用して構成を実行します:sudo configure-proxy.sh --non-interactive --answer-file=proxy-answers.txt.NtM1Y
コマンドライン・オプションを省略して対話形式でこのコマンドを実行することもできます。