第2章 Satellite 5 と Satellite 6 の比較
2.1. 設計および概念
2.1.1. Red Hat Satellite 5
Red Hat Satellite 5 はライフサイクル管理ツールで、大量のシステムをデプロイ、管理、監視する機能があります。Satellite 5 は接続、分離いずれかのモードで設定可能で、後者の場合は、オリジナルのプール型サブスクリプションアプローチを使用して、Red Hat ソフトウェアをクライアントシステムに配布します。プール型サブスクリプションの概念は、クライアントが Red Hat Network Classic からエンタイトルメントを使用する方法と同様のものです。
機能
Satellite 5 でよく使われる機能としては、たとえばキックスタートファイルとアクティベーションキーを使用して多数のシステムをプロビジョニングし、そのシステムをインストールして予測可能な状態に設定する機能が挙げられます。このプロビジョニングプロセスでは、システムは指定された組織やソフトウェア、設定チャンネルに関連付けられ、事前に定義されたシステムグループにシステムを追加します。Satellite 5 のプロビジョニング機能を使用すると、管理者はシステムの一貫性を保ちつつ、数千ものシステムをプロビジョニングできます。
また別の機能として、ローカルまたはリモートの環境にプロビジョニングした多数のシステムのソフトウェアや設定ファイルを管理する機能があります。Satellite 5 におけるソフトウェアおよび設定ファイルを管理する概念としてよく知られているものに「チャンネル」があります。ソフトウェアと設定はすべてチャンネル経由で管理され、配布されており、ソフトウェアや設定コンテンツへのアクセスが必要なクライアントは、1 つ以上の関連チャンネルに関連付けられている必要があります。さらに、チャンネルをクローンする機能により、管理者は多くの企業で必要とされる開発環境や実稼働環境を構築できます。
Red Hat Satellite 5 を使用すると、サーバーまたはクライアントシステムが公共のインターネットにアクセスすることなく Red Hat Network の恩恵を受けられます。これにより、システムの信頼性、セキュリティー、パフォーマンスを最大化するために必要なツール、サービス、情報リポジトリーを一体化できます。
2.1.2. Red Hat Satellite 6
Red Hat Satellite 6 は、Red Hat のライフサイクル管理プラットフォームをさらに進化させた製品で、グローバルエンタープライズ用のシステムおよびコンテンツの管理を専用に行うツールとして、システム管理者の期待通りの機能を提供します。Satellite 6 は、Satellite 5 のお客様が求めるユースケースに対応するだけでなく、はるかに大規模な環境で、コンテンツを連合 (フェデレーション) し、プロビジョニング時の効果的なシステム管理を行い、ライフサイクル管理へのよりシンプルなアプローチを実現する機能を提供します。さらに Satellite 6 では、証明書ベースのエンタイトルメントや統合されたサブスクリプション管理への特有のアプローチをさらに進化させています。
2.1.3. 概念の比較
以下の表は、重要な概念と、その概念が Satellite 5 および Satellite 6 でどのように実装されているかを示します。
表2.1 Satellite 5 および Satellite 6 概念の比較
概念 | 説明 | Satellite 5 | Satellite 6 |
---|---|---|---|
オープンソースプロジェクト |
単一のプロジェクトアプローチ対、モジュール式アプローチ |
Spacewalk |
Foreman、Katello、Puppet、Candlepin、および Pulp |
サブスクリプションの種類 |
プールベースまたはチャンネルベース対、証明書ベース。サブスクリプション管理はここ何年かの間に、プールベースまたはチャンネルベースのアプローチから、より具体的な証明書ベースのアプローチへと改善されてきました。証明書ベースのサブスクリプション管理では、クライアントが使用するサブスクリプションに対して、全体的な制御が改善されました。 |
エンタイトルメント |
サブスクリプション |
サブスクリプションの方法 (または Satellite サブスクリプションの使用) |
Satellite が Red Hat コンテンツを同期して配信できるようにする方法。証明書はインストール時にアクティベートされ、マニフェストはインストール後にアップロードされます。 |
証明書ファイル |
マニフェストファイル |
組織管理 |
Satellite 5 および 6 の両方に、複数組織の概念がありますが、Satellite 6 には、ロケーションのコンテキストを設定する機能があります。 |
組織 |
組織およびロケーション |
ソフトウェアおよび設定コンテンツ |
チャンネルによる配信対、環境ベースで公開してプロモートしたコンテンツビューによる配信。Satellite 6 のコンテンツビューには、環境に公開およびプロモートされた、選択した一連のソフトウェアリポジトリーおよび設定モジュールが含まれます。クライアントシステムは、その環境の関連付けを介して、そのソフトウェアおよび設定を使用します。 |
ソフトウェアチャンネル |
製品およびリポジトリー |
設定 |
設定チャンネル |
Puppet リポジトリー | |
Proxy サービス |
Red Hat Satellite Proxy Server |
Red Hat Satellite Capsule Server | |
コマンドラインツール |
各種 CLI ツール |
Hammer | |
仮想およびクラウドプロバイダー |
KVM および Xen |
OpenStack、Red Hat Enterprise Virtualization、KVM、VMware、EC2 | |
データベースサポート |
組み込み PostgreSQL、管理 PostgreSQL、外部 PostgreSQL、Oracle Database 10g Release 2 または 11g (Standard または Enterprise Edition) |
6.0 用の組み込み PostgreSQL |
2.2. システムアーキテクチャー
2.2.1. Red Hat Satellite 5
Red Hat Satellite 5 は、Spacewalk と呼ばれるオープンソースプロジェクトをベースにしており、以下のアーキテクチャーに用意されている複数の重要なコンポーネントで構成されています。
図2.1 Red Hat Satellite 5 システムアーキテクチャー
- Web UI
- Satellite Web UI は Apache Web サーバーを通り、Satellite 操作の主なエントリーポイントを提供します。
- フロントエンド API
- フロントエンド API は、XML-RPC API を介して Satellite 5 と対話する機能を提供します。これにより、システム管理者は、反復タスクを実行するスクリプトを作成したり、Satellite に関連するサードパーティーのアプリケーションを開発できます。フロントエンド API は、XML-RPC を使用する Web UI 機能のほとんどを公開します。
- バックエンド API
-
バクエンドは、複数のクライアントユーティリティー (
rhn_register
、yum
) が接続する一連の API を提供します。これは文書化されておらず、クライアントユーティリティーでのみ使用されます。
- Taskomatic
- Taskomaticは、Red Hat Satellite 5 では独立したサービスで、さまざまな非同期ジョブ (セッションテーブルの削除や、エラータが公開された場合の通知メール送信など) を実行します。このジョブの多くは定期的に実行しますが、その実行頻度は調整できます。
- 検索サーバー
- Satellite には、スタンドアロンの検索サーバーが含まれており、数百もの項目をリストに挙げることなく、システム、パッケージ、エラータをすばやく見つけることができます。検索エンジンには、Apache の Lucene 検索エンジンライブラリーが使用されていますが、このライブラリーにより、多数のクエリー言語が使用され、より関連する検索結果を得ることができます。
2.2.2. Red Hat Satellite 6
Red Hat Satellite 6 は、以下のアーキテクチャーに用意されている複数のオープンソースプロジェクトをベースとしています。
図2.2 Red Hat Satellite 6 システムアーキテクチャー
- Foreman
- Foreman は、物理システムと仮想システムのプロビジョニングとライフサイクル管理に使用されるオープンソースのアプリケーションです。Foreman は、キックスタートや Puppet モジュールなどの各種の方法を使って、これらのシステムを自動的に設定します。また、レポート、監査、およびトラブルシューティングに使用される履歴データを提供します。
- Katello
- Katello は、サブスクリプションとリポジトリーを管理するアプリケーションです。Katello は Red Hat リポジトリーをサブスクライブし、コンテンツをダウンロードする手段となります。コンテンツについては、複数の異なるバージョンを作成し、管理することが可能であり、コンテンツのバージョンは、ユーザーが定義するアプリケーションライフサイクルの各ステージ内にある特定のシステムに適用できます。
- Candlepin
- Candlepin は、サブスクリプションの管理を行う Katello 内のサービスです。
- Pulp
- Pulp は、リポジトリーおよびコンテンツの管理を行う Katello 内のサービスです。
- Hammer
- Hammer は、コマンドラインおよびシェルを提供する CLI ツールで、Web UI とほぼ同様の機能を提供します。
- REST API
- Red Hat Satellite 6 には REST ベースの API サービスが含まれます。システム管理者や開発者は、このサービスを使用して、カスタムスクリプトや 、Red Hat Satellite へのインターフェースとなるサードパーティーアプリケーションを作成できます。
- Capsule
- Red Hat Satellite Capsule Server は、リポジトリーのストレージ、DNS、DHCP、および Puppet マスター設定など、Satellite の一部の主要機能のプロキシーとして動作します。各 Satellite Server には、統合された Capsule Server の各種サービスが含まれます。
Red Hat Satellite 6 は、x86_64 アーキテクチャーシステムにしかインストールできません。
2.3. コンテンツ管理
2.3.1. Red Hat Satellite 5
Red Hat Satellite 5 アーキテクチャーには、パッケージキャッシングのメカニズムで、Red Hat Satellite の帯域幅要件を低減し、カスタムパッケージのデプロイを可能にする Red Hat Satellite Proxy Server が同梱されています。Satellite Proxy は、クライアントシステムと Satellite Server を仲介する役目を果たします。
クライアントから見ると、Satellite Proxy と Satellite には違いがありません。ただし、Satellite Server から見ると、Satellite Proxy は特殊なタイプの Satellite クライアントになります。
Satellite Proxy サーバーは Satellite 5 に制限されます。Satellite Proxy サーバーを Satellite 6 とともに使用することはできません。代わりに、Satellite 6 では、同じ機能のほとんどを提供する Capsule の概念が導入されています。
2.3.2. Red Hat Satellite 6
Satellite 6 アーキテクチャーには、Satellite 5 で Proxy サーバーが提供したのと同等レベルの機能を Satellite 6 に提供する Capsule Server が含まれます。
Capsule Server は、Proxy サーバーと同じように積み上げることはできません。以下の図でそれを説明します。
図2.3 Satellite 5 Proxy および Satellite 6 Capsule Server の比較
Satellite 6.0 とともに配信された Capsule Server の最初のリリースでは、以下の機能を提供します。
- ミラーリポジトリーコンテンツ (Pulp ノード)。コンテンツは、ホストで使用される前に Pulp ノードで使用されます。
- ミラー Puppet コンテンツ (Puppet マスター)
- DHCP、DNS、および TFTP を使用して、Identity Management (IdM) と統合します。
2.4. 切断されているコンテンツ管理
Satellite 5 と Satellite 6 との間の主な違いは、「切断した (ネットワークに接続していない)」コンテンツ管理のエリアになります。両バージョンの Satellite でプロビジョニングを行い、インターネットに直接接続しなくてもホストを同期することができますが、その方法は少々異なります。
2.4.1. Red Hat Satellite 5
Red Hat Satellite 5 は、katello-disconnected
ユーティリティーと同期ホストを使用して、切断されているコンテンツの管理を行います。この場合、インターネット接続のある中間システムが同期ホストとして機能する必要があります。この同期ホストは、Satellite Server とは分離したネットワークに置かれます。
同期ホストは、Red Hat コンテンツ配信ネットワーク (CDN) からコンテンツをインポートします。その後、コンテンツを、DVD、CD などのメディアや、外部ハードドライブにエクスポートしてから、ネットワークから切断した Satellite Server に移行します。
2.4.2. Red Hat Satellite 6
Red Hat Satellite 6 は、切断されているコンテンツの管理を、2 番目にインターネットに対面するSatellite と、ISS (Inter-Satellite Synchronization) 機能を使用して行います。
ネットワークに接続している Satellite は、Red Hat Content Delivery Network (CDN) からコンテンツをインポートします。その後、DVD、CD などのメディアや、外部ハードドライブにコンテンツをエクスポートしてから、ネットワークから切断されている Satellite Server に移行します。この Satellite 間の同期機能により、完全更新または増分更新を作成できるようになります。詳細は『コンテンツ管理ガイド』の「Satellite Server 間でのコンテンツ同期」を参照してください。
2.5. 組織の構造
2.5.1. Red Hat Satellite 5
Red Hat Satellite 5 は、複数の異なる組織にシステム、コンテンツ、および設定をまとめることができます。これは複数の部門 (たとえば「Finance (財務)」、「Marketing (マーケティング)」、および「Sales (営業)」) をかかえる企業には有用です。各組織は個別に管理された Satellite として動作し、それぞれに設定とシステムプロファイルが存在しますが、Satellite は、複数の組織間でコンテンツ (ソフトウェアチャンネル) を共有します。
Red Hat Satellite 5 には、複数の Satellite Server 間でコンテンツを同期する機能があります。これにより、管理者は地理的に離れている Satellite で同じソフトウェアチャンネルを共有できます。たとえば、企業のオフィスの場所が 3 つに分かれていて、各オフィスで Satellite が必要になった場合に、選択した親となる Satellite Server からコンテンツを同期します。
図2.4 Red Hat Satellite 5 のトポロジーの例
システム管理操作はすべて、登録している Satellite で行われます。
2.5.2. Red Hat Satellite 6
Red Hat Satellite 6 は、組織とロケーションの管理に対して統合的なアプローチを取ります。システム管理者は、1 台の Satellite サーバーに、組織とロケーションをそれぞれ複数定義します。たとえば、3 つの国 (米国、英国、および日本) に 3 つの組織 (「Finance (財務)」、「Marketing (マーケティング)」、および「Sales (営業)」) がある会社について考えてみましょう。この例では、Satellite Server がすべての地理的な場所 (ロケーション) にあるすべての組織を管理しているため、システムを管理するためのコンテキストを 9 つ作成します。ユーザーはロケーションを定義し、そのロケーションをネストして階層を作成できます。たとえば、Satellite 管理者が、米国のロケーションをさらにボストン、フェニックス、サンフランシスコなどの都市に分けるような場合です。
図2.5 Red Hat Satellite 6 のトポロジーの例
コンテンツと設定はメイン Satellite Server と、特定のロケーションに割り当てられた Satellite Capsule との間で同期されますが、メイン Satellite Server が管理機能を保持します。
2.6. アプリケーションのライフサイクル
2.6.1. Red Hat Satellite 5
Red Hat Satellite 5 におけるアプリケーションのライフサイクルは、パスのステージを進んでいきます。たとえば、アプリケーションの場合は、「開発」から「テスト」に進み、その後「一般提供 (GA)」と進みます。Red Hat Satellite 5 の各ステージでは、ライフサイクルのある特定の時点で、システムの定義を使用してシステムを管理します。Red Hat Satellite 5 のシステムの定義は、キックスタートプロファイルで使用されているソフトウェアチャンネルと設定チャンネルのセットになります。
図2.6 Red Hat Satellite 5 におけるアプリケーションのライフサイクル
2.6.2. Red Hat Satellite 6
Red Hat Satellite 6 のアプリケーションライフサイクルは、ライフサイクル環境とコンテンツビューという、2 つの重要なコンポーネントに分かれています。
アプリケーションライフサイクルは、ライフサイクル環境 に分けられ、ライフサイクルの各ステージを示します。このライフサイクルの環境は 環境パス にリンクされます。コンテンツは、環境パスの次のライフサイクルステージにプロモートできます。たとえば、アプリケーションの特定のバージョンで環境を完了し、このバージョンをテスト環境にプロモートしたら、次のバージョンの開発を開始できます。
図2.7 4 つの環境を含む環境パス
コンテンツビューは、オプションのフィルター機能とともに、1 つ以上の yum、Puppet リポジトリーを含む管理対象のコンテンツセレクションです。フィルターを包括的または排他的に使用して、ライフサイクルの管理用にコンテンツのシステムビューを調整することができます。また、フィルターを使用してクライアントシステムで利用できるようにコンテンツをカスタマイズできます。コンテンツビューのバージョンは、アプリケーションライフサイクル期間に環境パス上でプロモートされます。公開されたコンテンツビューがライフサイクル環境と共に使用されます。