Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

1.3. CRI-O の設定

CRI-O は、OpenShift Container Platform によってデプロイ、アップグレード、および管理されることを目的としているため、CRI-O 設定ファイルは、OpenShift Container Platform を介してのみ、または CRI-O のテストまたはトラブルシューティングの目的でのみ変更する必要があります。実行中の OpenShift Container Platform ノードでは、ほとんどの CRI-O 設定は /etc/crio/crio.conf ファイルに保持されます。

crio.conf ファイルの設定は、ストレージ、リスニングソケット、ランタイム機能、およびネットワークが CRI-O に設定される方法を定義します。以下は、デフォルトの crio.conf ファイルの例です (これらの設定を説明するコメントを確認するには、ファイル自体を調べてください)。

[crio]
root = "/var/lib/containers/storage"
runroot = "/var/run/containers/storage"
storage_driver = "overlay"
storage_option = [
        "overlay.override_kernel_check=1",
   ]

[crio.api]
listen = "/var/run/crio/crio.sock"
stream_address = ""
stream_port = "10010"
file_locking = true

[crio.runtime]
runtime = "/usr/bin/runc"
runtime_untrusted_workload = ""
default_workload_trust = "trusted"
no_pivot = false
conmon = "/usr/libexec/crio/conmon"
conmon_env = [
        "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
   ]
selinux = true
seccomp_profile = "/etc/crio/seccomp.json"
apparmor_profile = "crio-default"
cgroup_manager = "systemd"
hooks_dir_path = "/usr/share/containers/oci/hooks.d"
default_mounts = [
        "/usr/share/rhel/secrets:/run/secrets",
   ]
pids_limit = 1024
enable_shared_pid_namespace = false
log_size_max = 52428800

[crio.image]
default_transport = "docker://"
pause_image = "docker.io/openshift/origin-pod:v3.11"
pause_command = "/usr/bin/pod"
signature_policy = ""
image_volumes = "mkdir"
insecure_registries = [
""
]
registries = [
"docker.io"
]

[crio.network]
network_dir = "/etc/cni/net.d/"
plugin_dir = "/opt/cni/bin"

以下のセクションでは、さまざまな CRI-O 設定が crio.conf ファイルで使用される可能性のある方法について説明しています。

1.3.1. CRI-O ストレージの設定

OverlayFS2 は、コンテナーエンジンとして CRI-O または Docker を使用しているかどうかに関係なく、OpenShift Container Platform で推奨される (およびデフォルトの) ストレージドライバーになります。利用可能なストレージデバイスの詳細は、Choosing a graph driver を参照してください。

注記

devicemapper は CRI-O のサポートされるストレージ機能ですが、CRI-O ガべージコレクション機能はまだ devicemapper で機能しないため、実稼働環境での使用は推奨されません。また、CRI-O および podman の両方でコンテナーストレージを使用する方法に適用される他の devicemapper の問題については、BZ1625394 および BZ1623944 を参照してください。

CRI-O ストレージについて知っておく必要のある点には、CRI-O ストレージに関する以下のファクトが含まれます。

  • 付随するレイヤーと共に各コンテナーの root ファイルシステムを格納することにより、イメージを保持します。
  • Docker サービスで使用されるものと同じストレージレイヤーが組み込まれています。
  • container-storage-setup を使用して、コンテナーストレージエリアを管理します。
  • /etc/containers/storage.conf および /etc/crio/crio.conf ファイルの設定情報を使用します。
  • デフォルトでデータを /var/lib/containers に保存します。そのディレクトリーは、CRI-O とコンテナーを実行するためのツール (podman など) の両方で使用されます。
注記

同じストレージディレクトリーを使用しますが、コンテナーエンジンとコンテナーツールは、コンテナーを個別に管理します。

  • Docker バージョン 1 およびバージョン 2 スキーマの両方を格納できます。

container-storage-setup を使用して CRI-O のストレージを設定する方法の詳細については、Using container-storage-setup を参照してください。