第15章 OSTree イメージの更新の作成と管理

RHEL for Edge システムの OStree イメージの更新を簡単に作成および管理し、RHEL for Edge デバイスですぐに利用可能にすることができます。OSTree では、Image Builder を使用して、RHEL for Edge Commit または RHEL for Edge Container イメージを、OSTree コミットを含む .tar ファイルとして作成できます。OSTree 更新バージョン管理システムは、OSTree コミットを保存してバージョン管理する “Git リポジトリー” として機能します。次に、rpm-ostree イメージおよびパッケージシステムが、クライアントデバイス上でコミットをアセンブルします。RHEL Image Builder で新しいイメージを作成して更新を実行すると、RHEL Image Builder はこれらのリポジトリーから更新をプルします。

15.1. OSTree の基本的な概念

イメージの更新時に OSTree と rpm-ostree によって使用される基本的な用語を以下に示します。

rpm-ostree
デバイス上で OSTree コミットをアセンブルする方法を処理するエッジデバイス上のテクノロジーです。イメージとパッケージシステムのハイブリッドとして機能します。rpm-ostree テクノロジーを使用すると、システムのアトミックなアップグレードとロールバックを行うことができます。
OSTree
OSTree は、コミットの作成と、起動可能なファイルシステムツリーのダウンロードを可能にするテクノロジーです。OSTree を使用してツリーをデプロイし、ブートローダー設定を管理することもできます。
コミット
OSTree コミットには、直接起動できない完全なオペレーティングシステムが含まれています。システムを起動するには、RHEL にインストール可能なイメージなどを使用してコミットをデプロイする必要があります。
参照

ref とも呼ばれます。OSTree ref は名前で、Git ブランチに類似しています。有効な参照名の例を以下に示します。

  • rhel/9/x86_64/edge
  • ref-name
  • app/org.gnome.Calculator/x86_64/stable
  • ref-name-2

デフォルトでは、Image Builder はパスとして rhel/9/$ARCH/edge を指定します。$ARCH の値は、ホストマシンによって決定されます。

Parent
parent 引数は、Image Builder で新しいコミットをビルドするために指定できる OSTree コミットです。parent 引数を使用して、ビルドする新しいコミットの親コミットを取得する既存の ref を指定できます。解決してプルする ref 値として親コミットを指定する必要があります (例: rhel/9/x86_64/edge)。--parent コミットは、RHEL for Edge Commit (.tar) および RHEL for Edge Container (.tar) イメージタイプに使用できます。
Remote
OSTree コンテンツをホストする http または https エンドポイントです。これは yum リポジトリーの baseurl に似ています。
static delta
static delta は、2 つの OSTree コミットの間に生成される更新のコレクションです。これにより、システムクライアントが、サイズの大きな少数のファイルを取得できるようになります。static delta 更新はネットワーク効率を高めます。OStree ベースのホストを更新するときに、システムクライアントがシステム上に存在しない新しい OSTree コミットからのオブジェクトのみを取得するためです。通常、新しい OSTree コミットには多数の小さなファイルが含まれており、複数の TCP 接続が必要です。
summary
summary ファイルは、OSTree リポジトリー内の ref、チェックサム、および利用可能な static delta を列挙する簡潔な方法です。OSTree リポジトリーで、利用可能なすべての ref と static delta の状態を確認できます。ただし、新しい ref、コミット、または static-delta が OSTree リポジトリーに追加されるたびに、summary ファイルを生成する必要があります。