第5章 RHEL のブート可能なイメージの管理
RHEL のブート可能なイメージをインストールおよびデプロイした後、システムの変更や更新などの管理操作をコンテナーイメージに対して実行できます。システムは、デプロイメント後にロールバックが可能なインプレーストランザクション更新をサポートします。
この種の管理は Day 2 管理ベースラインとも呼ばれ、コンテナーレジストリーから新しいオペレーティングシステムの更新をトランザクショナルに取得して、システムを起動します。同時に、障害発生時には手動または自動のロールバックをサポートします。
デフォルトで有効になっている自動更新を利用することもできます。systemd service unit
と systemd timer unit
ファイルがコンテナーレジストリーの更新をチェックし、システムに適用します。アプリケーションの更新など、さまざまなイベントで更新プロセスをトリガーできます。これらの更新を監視し、CI/CD パイプラインをトリガーする自動化ツールがあります。更新はトランザクションであるため、再起動が必要です。より高度なロールアウトやスケジュールされたロールアウトが必要な環境では、自動更新を無効にし、bootc
ユーティリティーを使用してオペレーティングシステムを更新する必要があります。
詳細は、Day 2 operations support を参照してください。
図5.1 インストールされたオペレーティングシステムを手動で更新し、必要に応じて変更をコンテナーイメージの参照を変更したり、ロールバックしたりする
5.1. コンテナーイメージ参照の切り替え
bootc switch
コマンドを使用して、アップグレードに使用するコンテナーイメージ参照を変更できます。たとえば、ステージタグから実稼働タグに切り替えることができます。bootc switch
コマンドは、bootc upgrade
コマンドと同じ操作を実行し、さらにコンテナーイメージ参照を変更します。
既存の ostree-based
コンテナーイメージ参照を手動で切り替えるには、bootc switch
コマンドを使用します。
rpm-ostree
を使用して変更を加えたり、コンテンツをインストールしたりすることはサポートされていません。
前提条件
-
bootc
を使用して起動したシステム。
手順
以下のコマンドを実行します。
$ bootc switch [--apply] quay.io/<namespace>/<image>:<tag>
システム変更時に再起動などのアクションを自動的に実行する場合は、必要に応じて
--apply
オプションを使用できます。
bootc switch
コマンドは bootc upgrade
と同じ効果があります。唯一の違いは、コンテナーイメージ参照が変更されることです。これにより、ホスト SSH キーやホームディレクトリーなど、/etc
および /var
内の既存の状態を保持できます。
関連情報
-
bootc-switch
の man ページ