このドキュメントで説明されているソフトウェアはサポートされなくなったか、または拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお薦めします。

第4章 ソフトウェア・チャネルの作成と移入

Spacewalkおよびkickstartを使用してクライアント・システムをプロビジョニングするには、まずチャネルを定義してソフトウェア・パッケージを移入する必要があります。 チャネルを設定するには、Webインタフェースspacewalk-repo-syncまたはspacecmdを使用してパッケージをリポジトリから取得するか、rhnpushを使用してパッケージをSpacewalkサーバーにプッシュします。 たとえば、rhnpushを使用してISOイメージからパッケージを抽出するか、内部的に開発されたパッケージをアップロードすることができます。

Webインタフェースでチャネルを作成するには、チャネルソフトウェア・チャネルの管理に移動し、+新しいチャネルを作成をクリックします。 チャネル名、チャネル・ラベル、親チャネル(ベース・チャネルを作成する場合はなしを選択)、チャネルのGPGキー情報を指定します。

たとえば、Oracle Linuxリリース7更新2でシステムをプロビジョニングする場合は、次のように、ol7u2_x86_64_baseというラベルの付いたベース・チャネルと、パッチ用の子チャネルSpacewalk 2.4クライアント・ソフトウェア、およびOracleのUnbreakable Enterprise Kernelリリース4を作成することができます:

ol7u2_x86_64_base
|-- ol7u2-x86_64_patch
|-- ol7u2-x86_64_spacewalk24-client
|-- ol7u2-x86_64_uek-r4

これら4つのチャネルは、kickstartを使用してプロビジョニングするクライアントを構成する場合に一般的です。 Oracle Linuxリリース6更新7およびOracle Linux 7 Release 1以降では、クライアントを登録するためにSpacewalkクライアント・パッケージをインストールする必要はありません。 ただし、Spacewalkクライアント・チャネル・パッケージをインストールして、プロビジョニングや監査などのSpacewalk管理機能を最大限に活用することをお薦めします。 kickstartでクライアントを自動的に登録する場合は、Spacewalkクライアント・チャネルを有効にする必要もあります。 キックスタートはこの目的のためにビルトイン・クライアントを認識しません。

作成されたソフトウェア・チャネルにパッケージを設定するには、いくつかの方法があります。 kickstartで使用できるようにソフトウェア・チャネルに最初に移入する簡単な方法は、ISOイメージをサーバーにマウントしてrhnpushを使用することです。 サーバーにISOイメージをマウントした後、ISOディストリビューションからパッケージをプッシュできます。たとえば、次のようになります:

# mount -o loop /var/ISOs/V100082-01.iso /var/distro-trees/ol7u2-x86_64-server
 
# rhnpush -v --channel=ol7u2_x86_64_base --server=http://swksvr.mydom.com \
  --dir=/var/distro-trees/ol7u2-x86_64-server/Packages

または、Webインタフェース、spacewalk-repo-syncまたはspacecmdを使用して、ULNまたはOracle Linux yumサーバー・リポジトリからチャネルを同期できます。

rhnpushを実行するために使用されるシステムは、Spacewalkサーバーをホストしているのと同じシステム上でコマンドが実行されている場合でも、このコマンドを使用する前にSpacewalkサーバーに登録する必要があります。 rhnpushコマンドは、TLS/SSLを使用してSpacewalkサーバーと通信します。 システムが登録されていない場合、rhnpushは証明書エラーで失敗します。 クライアント登録は、正しいSpacewalk SSL証明書を使用するように構成を更新します。 クライアント登録の詳細は、Spacewalk for Oracle® Linux: クライアント・ライフサイクル管理ガイドforリリース2.4クライアント・システムの登録を参照してください。

ULNとOracle Linux Yum Serverの違いについて

ULNは、Oracle Linuxリリースの更新ごとにベースおよびパッチ・チャネルを提供します。 Oracle Linux yumサーバーでは、個別のパッチ・チャネルは提供されません。 代わりに、リリース全体のすべてのパッケージを含むpublic_olN_latestリポジトリを提供します。 4つのチャネルを設定する次の例を考えてみましょう:

ol7u2_x86_64_base
|-- ol7u2-x86_64_patch
|-- ol7u2-x86_64_spacewalk24-client
|-- ol7u2-x86_64_uek-r4

Oracle Linux 7更新2の完全なISOイメージからベースおよびUEK R4チャネルを移入できますが、ULNのみがこのリリースのパッチ・チャネルを提供し、Oracle Linux yumサーバーのみがSpacewalk 2.4 クライアント・チャネルを提供します。 ULNからチャネルを移入する場合は、更新ごとに別々の基本およびパッチ・チャネルを構成することをお薦めします(たとえば、ol6u7_x86_64_baseおよびol6u7_x86_64_patchはOracle Linux 6更新7、ol7u2_x86_64_baseおよびol7u2_x86_64_patchはOracle Linux 7更新2など)。

チャネル同期のスピードについて

ISOイメージからOracle Linuxリリース用のベース・チャネルを生成するのは、一般に、アップストリーム・リポジトリからベース・パッケージを引き出すよりも高速です。 Oracle Linuxの最新チャネルをOracle Linux yumサーバー・リポジトリから同期するには数日かかることがあります。

作成したチャネルを最初にISOイメージから移入した後、それらをOracle Linux yumサーバーおよびULNと同期して、最新のものにすることができます。 Oracle Linux yumサーバーは、多数のサーバーにグローバルにミラー・リングされているため、ベース・チャネルをOracle Linux yumサーバーと同期させ、その後すべてのパッチ・チャネルをULNと同期させる方が高速になります。

--latestオプションをspacewalk-repo-syncに指定するか、Webインタフェースで同等のオプションのチェック・ボックスを選択すると、サーバーは同期時に使用可能な最新のパッケージのみを同期化します。 古いパッケージは削除されません。 同期間隔が長い場合は、特定のバージョンのパッケージを見逃す可能性があります。 これは、エラータが特定のパッケージ・バージョンに関連付けられているエラータ処理に影響を与える可能性があります。 エラータの一貫性が重要な場合は、これらのオプションを選択しないことをお薦めします。 Kspliceチャネルでの--latestの使用は、パッケージが常に累積的であるため、このルールの例外です。

チャネル記憶域スペースについて

Spacewalkは、各ソフトウェア・チャネル内のすべてのパッケージのすべての使用可能なバージョンを維持するため、相当量のディスク・スペースを必要とします。 通常、Oracle Linuxバイナリ・リポジトリには、Oracle Linuxリリースとアーキテクチャの組み合わせごとに約60 GBが必要です。 Oracle Linuxリリースとアーキテクチャの組み合わせごとに、ソース・パッケージには40 GB、Ksplice更新には80 GBが必要です。 しかし、Spacewalkは可能な限りスペースを節約します。 同じパッケージが複数のチャネルで使用可能な場合、Spacewalkはパッケージのインスタンスを1つだけ保存し、各チャネルのパッケージ・メタデータを同じパッケージを指し示すようにします。

たとえば、Oracle Linuxリリース7更新2のaddonsチャネルは、最初のOracle Linuxリリース7およびOracle Linuxリリース7更新1と同じです。 典型的なチャネル構成には、リリースごとに個別のベース・チャネルがあり、関連するaddons子チャネルがあります: ol7u0_x86_64_addonsol7u1_x86_64_addons、およびol7u2_x86_64_addonsを含む。 この場合、Spacewalkデータベースには、3つのチャネルすべてに共通のパッケージ・セットが格納されます。