第11章 OSTree コンテンツの管理
OSTree は、起動可能で、変更しない、バージョン付きファイルシステムツリーを管理するツールです。好みのビルドシステムを使用してコンテンツをビルドサーバー上にあるこのツリー内に配置し、OSTree リポジトリーを静的 HTTP にエクスポートできます。Red Hat Enterprise Linux Atomic Server は、RPM ファイルから作成された OSTree コンテンツを使用して、オペレーティングシステムを最新の状態に保ちます。
Red Hat Satellite 6 は、OSTree リポジトリーと OSTree ブランチを同期し、リポジトリーからブランチを管理するツールを提供します。
11.1. Satellite Server での OSTree 管理の設定
Satellite Server 6.3 では、OSTree 管理ツールがデフォルトで有効になっています。必要に応じて、以下のコマンドを実行して、このツールが有効になっていることを確認します。
# satellite-installer --katello-enable-ostree=true
11.2. 同期する Red Hat OSTree コンテンツの選択
Red Hat の CDN で OSTree コンテンツを選択して同期します。
Web UI をご利用の場合
コンテンツ > Red Hat リポジトリー に移動します。これにより、さまざまなコンテンツタイプのタブの設定が表示されます。OSTree タブを選択し、使用する OSTree セットを見つけます。この例では、Red Hat Enterprise Linux Atomic Host 製品グループから Red Hat Enterprise Linux Atomic Host Trees をインポートします。有効なリポジトリーがあることを確認してください。
コンテンツ > 製品 に移動し、Red Hat Enterprise Linux Atomic Host をクリックします。この時点で、この製品には Red Hat Enterprise Linux Atomic Host Trees ブランチセットが含まれています。このリポジトリーを選択し、同期開始 をクリックします。
Web UI でも同期の進捗状況を確認できます。コンテンツ > 同期の状態 に移動して、製品/リポジトリーのツリーを展開します (または すべて展開 をクリックします)。
数分後には、Satellite Server が rhel7
リポジトリーに関連する全イメージのインポートを完了します。
CLI をご利用の場合
Red Hat Enterprise Linux Server 製品の ostree
リポジトリーを検索します。
# hammer repository-set list \ --product "Red Hat Enterprise Linux Atomic Host" \ --organization "ACME" | grep "ostree"
Red Hat Enterprise Linux Atomic Host 向けの ostree
リポジトリーを有効にします。この例では、このリポジトリーの ID は 3822 になります。
# hammer repository-set enable \ --product "Red Hat Enterprise Linux Atomic Host" \ --name "Red Hat Enterprise Linux Atomic Host (Trees)" \ --organization "ACME"
自分の製品内でリポジトリーを検索し、これと同期させます。この例では、リポジトリーのこのバージョンの ID は 5 です。
# hammer repository list \ --product "Red Hat Enterprise Linux Atomic Host" \ --organization "ACME" # hammer repository synchronize \ --name "Red Hat Enterprise Linux Atomic Host Trees" \ --product "Red Hat Enterprise Linux Atomic Host" \ --organization "ACME"
11.3. カスタム OSTree コンテンツのインポート
Red Hat Satellite 6 では、Red Hat の CDN から OSTree コンテンツをインポートするほかに、他のソースからコンテンツをインポートすることもできます。これには、公開済みの HTTP の場所が必要になります。
Web UI をご利用の場合
コンテンツ > 製品 に移動し、新製品 をクリックします。新しい製品のフォームが表示されます。以下の詳細情報を入力します。
-
名前: 製品の簡単な名前。
OSTree Content
と入力します。 - ラベル: 製品の内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
- GPG キー: 製品全体の GPG キー。これは空白にします。
-
同期プラン: 製品の同期計画。これは
Example Plan
にアタッチすることができます。 -
説明: 製品の簡単な説明。
OSTree Content
と入力します。
保存 をクリックします。
Fedora 向けカスタム製品を作成すると、製品のリポジトリー画面が表示されます。リポジトリーの作成 をクリックし、新しいリポジトリー用のフォームを表示します。以下の詳細情報を入力します。
-
名前: リポジトリーの簡単な名前。
Custom OSTree
と入力します。 - ラベル: リポジトリーの内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
-
タイプ: リポジトリーのタイプ。
ostree
を選択すると URL フィールドが表示されます。 -
URL: ソースとして使用するレジストリーの URL。たとえば
http://www.example.com/rpm-ostree/
と入力します。
保存 をクリックすると、新規リポジトリーが記載された製品のリポジトリー画面に戻ります。同期開始 をクリックして同期プロセスを開始します。数分すると、Satellite Server が同期を完了します。
Web UI でも同期の進捗状況を確認できます。コンテンツ > 同期の状態 に移動して、製品/リポジトリーのツリーを展開します (または すべて展開 をクリックします)。
CLI をご利用の場合
カスタムの OSTree Content
製品を作成します。
# hammer product create \ --name "OSTree Content" \ --sync-plan "Example Plan" \ --description "OSTree Content" \ --organization "ACME"
OSTree 用のリポジトリーを作成します。
# hammer repository create \ --name "Custom OSTree" \ --content-type "ostree" \ --url "http://www.example.com/rpm-ostree/" \ --product "OSTree Content" \ --organization "ACME"
次にリポジトリーを同期します。
# hammer repository synchronize \ --name "Custom OStree" \ --product "OSTree Content" \ --organization "ACME"
これで OSTree ブランチが同期されました。
11.4. コンテンツビューによる OSTree コンテンツの管理
コンテンツビューを使用して、アプリケーションライフサイクルで OSTree ブランチを管理します。このプロセスでは、RPM および Puppet モジュールが使用するものと同じ公開とプロモーションのメソッドを使用します。
Web UI をご利用の場合
コンテンツ > コンテンツビュー に移動し、新規ビューの作成 をクリックします。ビューの詳細 フォームが表示されるので、以下の情報を入力します。
-
名前: ビューの簡単な名前。
OSTree
と入力します。 - ラベル: ビューの内部 ID。Red Hat Satellite 6 では、名前 に入力した内容に基づいてこのフィールドに値が自動的に入力されます。
-
説明: ビューの簡単な説明。
OSTree branches for Red Hat Enterprise Atomic Host
と入力します。 - 複合ビュー?: 複合コンテンツビューを使用するかどうかを定義します。チェックを外しておきます。
保存 をクリックします。
これで新規コンテンツビューエントリーが作成されます。OSTree コンテンツ のサブタブに移動し、追加 をクリックします。 Red Hat Enterprise Linux Atomic Host Trees 用の OSTree リポジトリーを選択します。リポジトリーの追加 をクリックします。これで、OSTree コンテンツが、このリポジトリーからコンテンツビューに追加されます。
これでコンテンツビューを公開する準備ができました。バージョン に移動し、新規バージョンの公開 をクリックします。Satellite Server によって新規バージョン (バージョン 1) の詳細が提供されます。説明 に、このバージョンの説明を入力できるため、新規コンテンツビューの変更点を記録しておくと便利です。Initial content view for our OSTree
と入力し、保存 をクリックします。
Satellite Server がビューの新バージョンを作成し、ライブラリー環境に公開します。
プロモート をクリックして、アプリケーションライフサイクルの環境でこのコンテンツビューをプロモートすることもできます。
CLI をご利用の場合
リポジトリー ID の一覧を取得します。
# hammer repository list --organization "ACME"
この例では、OSTree のリポジトリー ID が 5 となります。コンテンツビューを作成して、リポジトリーを追加します。
# hammer content-view create \ --name "OSTree" \ --description "OSTree for Red Hat Enterprise Linux Atomic Host" \ --repository-ids 5 \ --organization "ACME"
ビューを公開します。
# hammer content-view publish \ --name "OSTree" \ --description "Initial content view for our OSTree" \ --organization "ACME"
Satellite Server がビューの新バージョンを作成し、ライブラリー環境に公開します。
11.5. 本章のまとめ
本章では、Red Hat およびカスタムソースから OSTree コンテンツをインポートして同期する方法や、そのコンテンツをアプリケーションライフサイクルで管理する方法など、Red Hat Satellite 6 における OSTree コンテンツの基本的な管理方法を説明しました。
次章では、ISO ファイルの管理方法を説明します。