4.2. CRI-O パラメーターを編集するための ContainerRuntimeConfig CR の作成


特定のマシン設定プール (MCP) に関連付けられたノードの OpenShift Container Platform CRI-O ランタイムに関連付けられる設定の一部を変更することができます。ContainerRuntimeConfig カスタムリソース (CR) を使用して、設定値を設定し、MCP に一致するラベルを追加します。次に、MCO は関連付けられたノードで crio.conf および storage.conf 設定ファイルを更新された値を使用して再ビルドします。

注記

ContainerRuntimeConfig CR を使用して実装された変更を元に戻すには、CR を削除する必要があります。マシン設定プールからラベルを削除しても、変更は元に戻されません。

ContainerRuntimeConfig CR を使用して以下の設定を変更することができます。

  • Log level: logLevel パラメーターは CRI-O log_level パラメーターを設定します。これはログメッセージの詳細レベルです。デフォルトは info (log_level = info) です。他のオプションには、fatalpanicerrorwarndebug、および trace が含まれます。
  • Overlay size: overlaySize パラメーターは、コンテナーイメージの最大サイズである CRI-O Overlay ストレージドライバーの size パラメーターを設定します。
  • コンテナーランタイム: defaultRuntime パラメーターは、コンテナーランタイムを crun または runc に設定します。デフォルトは crun です。

マシン設定プールごとに、そのプールに加える設定変更をすべて含めて、ContainerRuntimeConfig CR を 1 つ割り当てる必要があります。同じコンテンツをすべてのプールに適用している場合には、すべてのプールに必要となるのは ContainerRuntimeConfig CR 1 つだけです。

既存の ContainerRuntimeConfig CR を編集して既存の設定を編集するか、変更ごとに新規 CR を作成する代わりに新規の設定を追加する必要があります。異なるマシン設定プールを変更する場合や、変更が一時的で元に戻すことができる場合のみ、新しい ContainerRuntimeConfig CR の作成を推奨しています。

必要に応じて複数の ContainerRuntimeConfig CR を作成できますが、クラスターあたり 10 個までという制限があります。最初の ContainerRuntimeConfig CR は、containerruntime が付いたマシン設定が MCO によって作成されます。後続の各 CR については、数字の接尾辞が付いた新しい containerruntime マシン設定がコントローラーによって作成されます。たとえば、-2 という接尾辞を持つ containerruntime マシン設定がある場合、次の containerruntime マシン設定には -3 が付けられます。

マシン設定を削除する場合、制限を超えないようにそれらを逆の順序で削除する必要があります。たとえば、containerruntime-3 マシン設定を、containerruntime-2 マシン設定を削除する前に削除する必要があります。

注記

接尾辞が containerruntime-9 のマシン設定があり、別の ContainerRuntimeConfig CR を作成する場合には、containerruntime マシン設定が 10 未満の場合でも新規マシン設定は作成されません。

複数の ContainerRuntimeConfig CR を示す例

$ oc get ctrcfg
Copy to Clipboard Toggle word wrap

出力例

NAME         AGE
ctr-overlay  15m
ctr-level    5m45s
Copy to Clipboard Toggle word wrap

複数の containerruntime マシン設定を示す例

$ oc get mc | grep container
Copy to Clipboard Toggle word wrap

出力例

...
01-master-container-runtime                        b5c5119de007945b6fe6fb215db3b8e2ceb12511   3.4.0             57m
...
01-worker-container-runtime                        b5c5119de007945b6fe6fb215db3b8e2ceb12511   3.4.0             57m
...
99-worker-generated-containerruntime               b5c5119de007945b6fe6fb215db3b8e2ceb12511   3.4.0             26m
99-worker-generated-containerruntime-1             b5c5119de007945b6fe6fb215db3b8e2ceb12511   3.4.0             17m
99-worker-generated-containerruntime-2             b5c5119de007945b6fe6fb215db3b8e2ceb12511   3.4.0             7m26s
...
Copy to Clipboard Toggle word wrap

次の例では、log_level フィールドを debug に設定し、オーバーレイサイズを 8 GB に設定し、runC をコンテナーランタイムとして設定します。

ContainerRuntimeConfig CR の例

apiVersion: machineconfiguration.openshift.io/v1
kind: ContainerRuntimeConfig
metadata:
 name: overlay-size
spec:
 machineConfigPoolSelector:
   matchLabels:
     pools.operator.machineconfiguration.openshift.io/worker: '' 
1

 containerRuntimeConfig:
   logLevel: debug 
2

   overlaySize: 8G 
3

   defaultRuntime: "runc" 
4
Copy to Clipboard Toggle word wrap

1
マシン設定プールのラベルを指定します。コンテナーのランタイム設定の場合、ロールは関連付けられているマシン設定プールの名前と一致する必要があります。
2
オプション: ログメッセージの詳細レベルを指定します。
3
オプション: コンテナーイメージの最大サイズを指定します。
4
オプション: 新しいコンテナーにデプロイするコンテナーランタイム (crun または runc) を指定します。デフォルト値は crun です。

手順

ContainerRuntimeConfig CR を使用して CRI-O 設定を変更するには、以下を実行します。

  1. ContainerRuntimeConfig CR の YAML ファイルを作成します。

    apiVersion: machineconfiguration.openshift.io/v1
    kind: ContainerRuntimeConfig
    metadata:
     name: overlay-size
    spec:
     machineConfigPoolSelector:
       matchLabels:
         pools.operator.machineconfiguration.openshift.io/worker: '' 
    1
    
     containerRuntimeConfig: 
    2
    
       logLevel: debug
       overlaySize: 8G
       defaultRuntime: "runc"
    Copy to Clipboard Toggle word wrap
    1
    変更する必要のあるマシン設定プールのラベルを指定します。
    2
    必要に応じてパラメーターを設定します。
  2. ContainerRuntimeConfig CR を作成します。

    $ oc create -f <file_name>.yaml
    Copy to Clipboard Toggle word wrap
  3. CR が作成されたことを確認します。

    $ oc get ContainerRuntimeConfig
    Copy to Clipboard Toggle word wrap

    出力例

    NAME           AGE
    overlay-size   3m19s
    Copy to Clipboard Toggle word wrap

  4. 新規の containerruntime マシン設定が作成されていることを確認します。

    $ oc get machineconfigs | grep containerrun
    Copy to Clipboard Toggle word wrap

    出力例

    99-worker-generated-containerruntime   2c9371fbb673b97a6fe8b1c52691999ed3a1bfc2  3.4.0  31s
    Copy to Clipboard Toggle word wrap

  5. すべてが準備状態にあるものとして表示されるまでマシン設定プールをモニターします。

    $ oc get mcp worker
    Copy to Clipboard Toggle word wrap

    出力例

    NAME    CONFIG               UPDATED  UPDATING  DEGRADED  MACHINECOUNT  READYMACHINECOUNT  UPDATEDMACHINECOUNT  DEGRADEDMACHINECOUNT  AGE
    worker  rendered-worker-169  False    True      False     3             1                  1                    0                     9h
    Copy to Clipboard Toggle word wrap

  6. 設定が CRI-O で適用されたことを確認します。

    1. マシン設定プールのノードに対して oc debug セッションを開き、chroot /host を実行します。

      $ oc debug node/<node_name>
      Copy to Clipboard Toggle word wrap
      sh-4.4# chroot /host
      Copy to Clipboard Toggle word wrap
    2. crio.conf ファイルの変更を確認します。

      sh-4.4# crio config | grep 'log_level'
      Copy to Clipboard Toggle word wrap

      出力例

      log_level = "debug"
      Copy to Clipboard Toggle word wrap

    3. storage.conf ファイルの変更を確認します。

      sh-4.4# head -n 7 /etc/containers/storage.conf
      Copy to Clipboard Toggle word wrap

      出力例

      [storage]
        driver = "overlay"
        runroot = "/var/run/containers/storage"
        graphroot = "/var/lib/containers/storage"
        [storage.options]
          additionalimagestores = []
          size = "8G"
      Copy to Clipboard Toggle word wrap

    4. crio/crio.conf.d/01-ctrcfg-defaultRuntime ファイルの変更を確認します。

      sh-5.1# cat /etc/crio/crio.conf.d/01-ctrcfg-defaultRuntime
      Copy to Clipboard Toggle word wrap

      出力例

      [crio]
        [crio.runtime]
          default_runtime = "runc"
      Copy to Clipboard Toggle word wrap

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat