3.2. Web コンソールを使用した OpenShift サンドボックスコンテナーワークロードのデプロイ

Web コンソールから OpenShift サンドボックスコンテナーのワークロードをデプロイできます。まず、OpenShift サンドボックスコンテナー Operator をインストールしてから、KataConfig カスタムリソース (CR) を作成する必要があります。サンドボックスコンテナーにワークロードをデプロイする準備ができたら、ワークロード YAML ファイルに kataruntimeClassName として手動で追加する必要があります。

3.2.1. Web コンソールを使用した OpenShift サンドボックスコンテナー Operator のインストール

OpenShift Container Platform Web コンソールから OpenShift サンドボックスコンテナー Operator をインストールできます。

前提条件

  • OpenShift Container Platform 4.9 がインストールされている。
  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。

手順

  1. Web コンソールの Administrator パースペクティブで、OperatorsOperatorHub に移動します。
  2. Filter by keyword フィールドに OpenShift sandboxed containers と入力します。
  3. OpenShift sandboxed containers タイルを選択します。
  4. Operator についての情報を確認してから、Install をクリックします。
  5. Install Operator ページで以下を行います。

    1. 利用可能な Update Channel オプションから preview-1.1 を選択します。
    2. Installed NamespaceOperator recommend Namespace が選択されていることを確認します。これにより、Operator が必須の openshift-sandboxed-containers-operator namespace にインストールされます。この namespace がまだ存在しない場合は、自動的に作成されます。

      注記

      OpenShift サンドボックスコンテナー Operator を openshift-sandboxed-containers-operator 以外の namespace にインストールしようとすると、インストールが失敗します。

    3. Approval StrategyAutomatic が選択されていることを確認します。Automatic がデフォルト値であり、新しい z-stream リリースが利用可能になると、OpenShift サンドボックスコンテナーへの自動更新が有効になります。
  6. Install をクリックします。

これで、OpenShift サンドボックスコンテナー Operator がクラスターにインストールされました。

検証

  1. Web コンソールの Administrator パースペクティブで、OperatorsInstalled Operators に移動します。
  2. OpenShift サンドボックスコンテナー Operator が in オペレーターリストにリストされていることを確認します。

3.2.2. Web コンソールで KataConfig カスタムリソースを作成する

クラスターノードに kataRuntimeClass としてインストールできるようにするには、1 つの KataConfig カスタムリソース (CR) を作成する必要があります。

前提条件

  • クラスターに OpenShift Container Platform 4.9 をインストールされている。
  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。
  • OpenShift サンドボックスコンテナー Operator をインストールしました。
注記

Kata は、デフォルトですべてのワーカーノードにインストールされます。特定のノードにのみ kataRuntimeClass としてインストールする場合は、それらのノードにラベルを追加し、作成時に KataConfig CR でラベルを定義できます。

手順

  1. Web コンソールの Administrator パースペクティブで、OperatorsInstalled Operators に移動します。
  2. オペレーターのリストから OpenShift サンドボックスコンテナーオペレーターを選択します。
  3. KataConfig タブで、Create KataConfig をクリックします。
  4. Create KataConfig ページで、YAML view 経由で KataConfig CR を設定することを選択します。
  5. 次のマニフェストをコピーして YAML view に貼り付けます。

    apiVersion: kataconfiguration.openshift.io/v1
    kind: KataConfig
    metadata:
      name: cluster-kataconfig

    選択したノードにのみ kataRuntimeClass としてインストールする場合は、マニフェストにラベルを含めます。

     apiVersion: kataconfiguration.openshift.io/v1
     kind: KataConfig
     metadata:
       name: cluster-kataconfig
     spec:
       kataConfigPoolSelector:
         matchLabels:
          <label_key>: '<label_value>' 1
    1
    kataConfigPoolSelector のラベルは単一値のみをサポートします。nodeSelector 構文はサポートされていません。
  6. Create をクリックします。

新しい KataConfig CR が作成され、ワーカーノードに kataRuntimeClass としてインストールし始めます。

重要

OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてのみインストールします。

検証

  1. KataConfig タブで、新しい KataConfig CR を選択します。
  2. KataConfig ページで、YAML タブを選択します。
  3. ステータスの installationStatus フィールドをモニターします。

    更新があるたびにメッセージが表示されます。リロード をクリックして、更新された KataConfig CR を表示します。

    Completed nodes の値がワーカーまたはラベル付けされたノードの数と等しくなると、インストールは完了です。ステータスには、インストールが完了したノードの一覧も含まれます。

3.2.3. Web コンソールを使用してサンドボックスコンテナーにワークロードをデプロイする

OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてインストールします。

Pod テンプレート化されたワークロードをサンドボックスコンテナーにデプロイするには、kataruntimeClassName としてワークロード YAML ファイルに手動で追加する必要があります。

前提条件

  • クラスターに OpenShift Container Platform 4.9 をインストールされている。
  • cluster-admin ロールを持つユーザーとしてクラスターにアクセスできる。
  • OpenShift サンドボックスコンテナー Operator をインストールしました。
  • KataConfig カスタムリソース (CR) を作成しました。

手順

  1. Web コンソールの Administrator パースペクティブから、Workloads をデプロイメントし、作成するワークロードのタイプを選択します。
  2. ワークロードページで、をクリックしてワークロードを作成します。
  3. ワークロードの YAML ファイルで、コンテナーがリストされている spec フィールドに、runtimeClassName: kata を追加します。

    Pod の例

        apiVersion: v1
        kind: Pod
        metadata:
          name: example
          labels:
            app: httpd
          namespace: openshift-sandboxed-containers-operator
        spec:
          runtimeClassName: kata
          containers:
            - name: httpd
              image: 'image-registry.openshift-image-registry.svc:5000/openshift/httpd:latest'
              ports:
                - containerPort: 8080

    デプロイメントの例

        apiVersion: apps/v1
        kind: Deployment
        metadata:
          name: example
          namespace: openshift-sandboxed-containers-operator
        spec:
          selector:
            matchLabels:
              app: httpd
          replicas: 3
          template:
            metadata:
              labels:
                app: httpd
            spec:
              runtimeClassName: kata
              containers:
                - name: httpd
                  image: >-
                    image-registry.openshift-image-registry.svc:5000/openshift/httpd:latest
                  ports:
                    - containerPort: 8080

  4. Save をクリックします。

OpenShift Container Platform はワークロードを作成し、スケジューリングを開始します。