機械翻訳について

OSイメージ

byoプロバイダを使用してKubernetesノードを作成するために使用されるOSイメージについて説明します。

BYOインストールを実行するには、次のものが必要です:

  • ブートするOracle Linuxカーネル。

  • ブート・カーネルに一致するinitrd (初期ramdisk)。

  • AnacondaおよびKickstartを実行できるルート・ファイル・システム。

  • Kickstartを使用して自動インストールを実行するメソッド。

  • OCK OSTreeアーカイブを処理するメソッド。

  • Ignitionファイルを処理するメソッド。

最初の4つのポイントを簡単に得る方法は、Oracle Linux ISOファイルをダウンロードすることです。 使用可能なISOファイルについては、「Oracle Linux ISOイメージ」を参照してください。

Kickstartファイルは、ローカルのOSTreeアーカイブ・サーバーを使用した自動インストールを定義します。 Kickstartファイルの作成の詳細は、「Oracle Linux 9: Oracle Linuxのインストール」または「Oracle Linux 8: Oracle Linuxのインストール」を参照してください。

CLIでは、HTTPを介してOSTreeアーカイブを提供するコンテナ・イメージを生成できます。 コンテナ・イメージは、Podmanなどのコンテナ・ランタイムを使用して、またはKubernetesクラスタ内で提供できます。 OSTreeアーカイブを手動で生成し、任意のHTTPサーバーを介して提供することもできます。

無視ファイルは、「アップストリームIgnitionのドキュメント」に一覧表示されているプラットフォームのいずれかを使用して処理できます。 また、Ignition構成の生成時にインストールがかなり近いところに行われた場合は、Ignition構成ファイルをホストのルート・ファイル・システムに直接埋め込むこともできます。

図8-2 独自の持込みクラスタのOCKイメージ

この図は、BYOクラスタのOCKイメージの作成を示しています。 Oracle Linux ISOは、ホストOSコンポーネントにOSTreeイメージ(コンテナ・レジストリのOCKイメージに基づく)を提供します。 結果のOSTreeイメージは、コンテナ・レジストリまたは他のメソッドにロードされてコンテナを処理します。 IgnitionファイルはCLIによって生成され、Ignitionサーバーによって提供されます。 IgnitionファイルとOSTreeイメージのロケーションを含めるにはKickstartファイルを作成し、Kickstartサーバーで使用できるようにする必要があります。
  • CLI: Kubernetesクラスタの作成および管理に使用されるCLI。 ocneコマンド。

  • デフォルト構成: すべてのocneコマンドの構成を含むYAMLファイル。

  • クラスタ構成: 特定のKubernetesクラスタの構成を含むYAMLファイル。

  • コンテナ・レジストリ: OCK OSTreeイメージのプルに使用されるコンテナ・レジストリ。 デフォルトはOracle Container Registryです。

  • OCK OSTreeイメージ: コンテナ・レジストリからプルされたOCK OSTreeイメージ。

  • エフェメラル・クラスタ: CLIコマンドの実行に使用される一時的なKubernetesクラスタ。

  • コンテナ・レジストリ/Podman: OCK OSTreeイメージの提供に使用されるコンテナ・レジストリまたはコンテナ・サーバー(Podmanなど)。

  • Oracle Linux ISO: ノード上のOSに使用するカーネルおよびinitrdに対応するISOファイル。

  • Ignitionファイル: CLIによって生成されたIgnitionファイル。クラスタへのノードの結合に使用されます。

  • Ignitionサーバー: Ignitionファイル。Ignitionファイルを処理するメソッドにロードされます。

  • Kickstartファイル: OCK OSTreeイメージ、Ignitionファイル、OSカーネルおよびinitrdのロケーションを提供するKickstartファイル。

  • Kickstartサーバー: KickstartファイルをサーバーするメソッドにロードされるKickstartファイル。

Oracle Linux ISOイメージ

byoプロバイダによるOSイメージに使用されるOracle Linux ISOイメージについて説明します。

使用可能なOracle Linux ISOイメージのいずれかをOSイメージの基礎として使用できます。 メディアのカーネル、initrd、およびルート・ファイル・システムのみが使用されます。 すべてのインストール・コンテンツは、OCK OSTreeアーカイブから取得されます。 ISOイメージは、「Oracle Linux yumサーバー」にあります。

UEKブートISOファイルは小さく、必要なすべてのOSコンポーネントが含まれているため、使用することをお薦めします。

OSTreeアーカイブ・サーバー

byoプロバイダによるOSイメージの構築に使用されるOSTreeアーカイブについて説明します。

OSTreeアーカイブを含むコンテナ・イメージは、ocne image createコマンドを使用して生成できます。 たとえば:

ocne image create --type ostree

Kubernetesクラスタは、OSTreeアーカイブ・イメージをダウンロードして生成するために使用されます。 実行中の任意のクラスタを使用できます。 使用するクラスタを指定するには、環境変数KUBECONFIGを設定するか、またはocneコマンドの--kubeconfigオプションを使用します。 使用可能なクラスタがない場合は、libvirtプロバイダを使用して、デフォルトの構成でクラスタが自動的に作成されます。

イメージのダウンロードと生成には時間がかかる場合があります。 完了すると、イメージは$HOME/.ocne/images/ディレクトリで使用できます。

ocne image uploadコマンドを使用して、イメージを使用できるロケーションにアップロードします。 コンテナ・イメージは、libcontainerによって提供される任意のトランスポートを使用してアップロードできます。 トランスポートのリストについては、containers-transports(5)を参照してください。 輸送は常に必要です。

通常、イメージはコンテナ・レジストリにアップロードされます。 たとえば:

ocne image upload --type ostree --file $HOME/.ocne/images/ock-1.32-amd64-ostree.tar --destination docker://myregistry.example.com/ock-ostree:latest --arch amd64

コンテナ・イメージをローカル・イメージ・キャッシュにロードするには、コンテナ・ランタイムまたは同じタスクを実行する他のツールに組み込まれたOpen Container Initiativeイメージ・ロード機能を使用します。 たとえば、イメージをPodmanにロードするには:

podman load < $HOME/.ocne/images/ock-1.32-arm64-ostree.tar

独自の持込みプロバイダのOSTreeイメージの作成

独自の持込み(byo)プロバイダのOSTreeイメージを作成します。 次に、イメージをコンテナ・レジストリにアップロードして、仮想マシン(VM)のブート・ディスクとして使用できるようにします。

イメージは複数の宛先にロードできます。 この例では、イメージをコンテナ・レジストリにロードする方法を示します。 コンテナ・レジストリの設定の詳細は、「Oracle Linux: Podmanユーザーズ・ガイド」を参照してください。

Open Container Initiativeのトランスポートとフォーマットで利用可能な任意のターゲットにイメージをロードできます。 使用可能なオプションについては、containers-transports(5)を参照してください。

  1. (オプション)既存のクラスタのkubeconfigファイルのロケーションを設定します。

    いくつかのステップを実行するには、Kubernetesクラスタが必要です。 kubeconfigファイルのロケーションを設定することで、既存のクラスタをこの目的に使用できます。

    これを設定するには、KUBECONFIG環境変数を使用するか、ocneコマンドで--kubeconfigオプションを使用します。 これを構成ファイルに設定することもできます。

    kubeconfigファイルのロケーションを設定しない場合、必要に応じてlibvirtプロバイダを使用してエフェメラル・クラスタが作成されます。

  2. (オプション) libvirtプロバイダを設定します。

    既存のKubernetesクラスタのロケーションを設定しない場合は、libvirtプロバイダを使用してエフェメラル・クラスタをプロビジョニングするようにlocalhostを設定します。 libvirtプロバイダの設定の詳細は、「libvirtプロバイダの設定」を参照してください。

  3. OSTreeイメージを作成します。

    ocne image createコマンドを使用して、OSTreeイメージを作成します。 構文は次のとおりです。

    ocne image create 
    {-a|--arch} arch
    [{-t|--type} provider]
    [{-v|--version} version]

    構文オプションの詳細は、Oracle Cloud Native Environment: CLIを参照してください。

    たとえば:

    ocne image create --type ostree --arch arm64 

    このコマンドは、完了するまでに時間がかかる場合があります。

    KubernetesクラスタはOSTreeイメージを生成し、イメージは$HOME/.ocne/images/ディレクトリに保存されます。

  4. OSTreeイメージをコンテナ・レジストリにアップロードします。

    ocne image uploadコマンドを使用して、イメージをコンテナ・レジストリにアップロードします。 構文は次のとおりです。

    ocne image upload 
    {-a|--arch} arch
    [{-b|--bucket} name]
    [{-c|--compartment} name]
    [--config path]
    [{-d|--destination} path]
    {-f|--file} path
    {-i|--image-name} name 
    {-t|--type} provider
    {-v|--version} version

    構文オプションの詳細は、Oracle Cloud Native Environment: CLIを参照してください。

    たとえば:

    ocne image upload --type ostree --file $HOME/.ocne/images/ock-1.32-amd64-ostree.tar --destination docker://myregistry.example.com/ock-ostree:latest --arch amd64

    Kubernetesクラスタは、OSTreeイメージをアップロードします。 ターゲット・コンテナ・レジストリに資格証明が設定されていない場合、サインイン・プロンプトが表示されます。 イメージがコンテナ・レジストリにアップロードされます。 これで、イメージを使用して、Kubernetesクラスタで使用するVMを作成できます。