メインコンテンツまでスキップ

k3s エージェント

このセクションでは、K3sエージェントの設定方法を学びます。

サーバーもエージェントを実行するため、このページに記載されているすべてのフラグはサーバーでも使用可能です。

オプションはCLIフラグとしてこのページに記載されていますが、設定ファイルオプションとしても渡すことができます。YAML設定ファイルの使用方法については、設定ファイルのドキュメントを参照してください。

ロギング​

フラグデフォルト説明
-v 値0ログレベルの冗長度の数値
--vmodule 値N/AファイルフィルタリングされたログのためのFILE_PATTERN=LOG_LEVEL設定のカンマ区切りリスト
--log 値, -l 値N/Aファイルにログを記録
--alsologtostderrN/Aファイルに設定されている場合、標準エラーにもログを記録

クラスターオプション​

フラグ環境変数説明
--token 値, -t 値K3S_TOKEN認証に使用するトークン
--token-file 値K3S_TOKEN_FILE認証に使用するトークンファイル
--server 値, -s 値K3S_URL接続するサーバー

データ​

フラグデフォルト説明
--data-dir 値, -d 値"/var/lib/rancher/k3s"状態を保持するフォルダー

ノード​

フラグ環境変数説明
--node-name 値K3S_NODE_NAMEノード名
--with-node-idN/Aノード名にIDを追加
--node-label 値N/Aラベルのセットでkubeletを登録および開始
--node-taint 値N/Ataintsのセットでkubeletを登録
--protect-kernel-defaultsN/Aカーネルのチューニング動作。設定されている場合、カーネルのチューナブルがkubeletのデフォルトと異なる場合にエラーを発生させます。
--selinuxK3S_SELINUXcontainerdでSELinuxを有効にする
--lb-server-port 値K3S_LB_SERVER_PORTスーパーバイザークライアントのロードバランサーのローカルポート。スーパーバイザーとapiserverが同じ場所にない場合、このポートの1つ少ない追加ポートもapiserverクライアントのロードバランサーに使用されます。(デフォルト: 6444)

ランタイム​

フラグデフォルト説明
--container-runtime-endpoint 値N/A組み込みのcontainerdを無効にし、指定されたパスのCRIソケットを使用します。--dockerと一緒に使用する場合、cri-dockerソケットパスを設定します
--pause-image 値"docker.io/rancher/pause:3.1"containerdまたはdockerサンドボックス用のカスタマイズされたpauseイメージ
--private-registry 値"/etc/rancher/k3s/registries.yaml"プライベートレジストリの設定ファイル

ネットワーキング​

フラグ環境変数説明
--node-ip 値, -i 値N/Aノードの広告用IPアドレス
--node-external-ip 値N/Aノードの広告用外部IPアドレス
--resolv-conf 値K3S_RESOLV_CONFKubeletのresolv.confファイル
--flannel-iface 値N/Aデフォルトのflannelインターフェースを上書き
--flannel-conf 値N/Aデフォルトのflannel設定ファイルを上書き
--flannel-cni-conf 値N/Aデフォルトのflannel cni設定ファイルを上書き

カスタマイズされたフラグ​

フラグ説明
--kubelet-arg 値kubeletプロセス用のカスタマイズされたフラグ
--kube-proxy-arg 値kube-proxyプロセス用のカスタマイズされたフラグ

実験的​

フラグ説明
--rootlessルートレスで実行
--dockercontainerdの代わりにcri-dockerdを使用
--prefer-bundled-binホストバイナリよりもバンドルされたユーザースペースバイナリを優先
--disable-default-registry-endpoint"デフォルトエンドポイントフォールバック"を参照

廃止予定​

フラグ環境変数説明
--no-flannelN/A--flannel-backend=noneを使用
--cluster-secret 値K3S_CLUSTER_SECRET--tokenを使用

エージェントのノードラベルとtaints​

K3sエージェントは、--node-labelおよび--node-taintオプションを使用して設定でき、これによりkubeletにラベルとtaintが追加されます。これらのオプションは登録時にのみラベルおよび/またはtaintを追加するため、一度だけ追加され、その後K3sコマンドを実行しても変更できません。

以下は、ラベルとtaintを追加する方法を示す例です:

--node-label foo=bar \
--node-label hello=world \
--node-taint key1=value1:NoExecute

ノード登録後にノードラベルとtaintを変更したい場合は、kubectlを使用する必要があります。taintsの追加方法については公式のKubernetesドキュメントを参照してください。taintsおよびノードラベルの追加方法についての詳細を参照してください。

K3sエージェントCLIヘルプ​

以下にオプションが角括弧で表示されている場合、例えば[$K3S_URL]、そのオプションはその名前の環境変数として渡すことができることを意味します。

NAME:
k3s agent - ノードエージェントを実行

USAGE:
k3s agent [OPTIONS]

OPTIONS:
--config FILE, -c FILE (config) FILEから設定を読み込む (デフォルト: "/etc/rancher/k3s/config.yaml") [$K3S_CONFIG_FILE]
--debug (logging) デバッグログを有効にする [$K3S_DEBUG]
-v 値 (logging) ログレベルの冗長度の数値 (デフォルト: 0)
--vmodule 値 (logging) ファイルフィルタリングされたログのためのFILE_PATTERN=LOG_LEVEL設定のカンマ区切りリスト
--log 値, -l 値 (logging) ファイルにログを記録
--alsologtostderr (logging) ファイルに設定されている場合、標準エラーにもログを記録
--token 値, -t 値 (cluster) 認証に使用するトークン [$K3S_TOKEN]
--token-file 値 (cluster) 認証に使用するトークンファイル [$K3S_TOKEN_FILE]
--server 値, -s 値 (cluster) 接続するサーバー [$K3S_URL]
--data-dir 値, -d 値 (agent/data) 状態を保持するフォルダー (デフォルト: "/var/lib/rancher/k3s")
--node-name 値 (agent/node) ノード名 [$K3S_NODE_NAME]
--with-node-id (agent/node) ノード名にIDを追加
--node-label 値 (agent/node) ラベルのセットでkubeletを登録および開始
--node-taint 値 (agent/node) taintsのセットでkubeletを登録
--image-credential-provider-bin-dir 値 (agent/node) クレデンシャルプロバイダープラグインバイナリが配置されているディレクトリのパス (デフォルト: "/var/lib/rancher/credentialprovider/bin")
--image-credential-provider-config 値 (agent/node) クレデンシャルプロバイダープラグイン設定ファイルのパス (デフォルト: "/var/lib/rancher/credentialprovider/config.yaml")
--selinux (agent/node) containerdでSELinuxを有効にする [$K3S_SELINUX]
--lb-server-port 値 (agent/node) スーパーバイザークライアントのロードバランサーのローカルポート。スーパーバイザーとapiserverが同じ場所にない場合、このポートの1つ少ない追加ポートもapiserverクライアントのロードバランサーに使用されます。(デフォルト: 6444) [$K3S_LB_SERVER_PORT]
--protect-kernel-defaults (agent/node) カーネルのチューニング動作。設定されている場合、カーネルのチューナブルがkubeletのデフォルトと異なる場合にエラーを発生させます。
--container-runtime-endpoint 値 (agent/runtime) 組み込みのcontainerdを無効にし、指定されたパスのCRIソケットを使用します。--dockerと一緒に使用する場合、dockerソケットパスを設定します
--pause-image 値 (agent/runtime) containerdまたはdockerサンドボックス用のカスタマイズされたpauseイメージ (デフォルト: "rancher/mirrored-pause:3.6")
--snapshotter 値 (agent/runtime) デフォルトのcontainerdスナップショッターを上書き (デフォルト: "overlayfs")
--private-registry 値 (agent/runtime) プライベートレジストリの設定ファイル (デフォルト: "/etc/rancher/k3s/registries.yaml")
--node-ip 値, -i 値 (agent/networking) ノードの広告用IPv4/IPv6アドレス
--node-external-ip value (agent/networking) ノードの広告用IPv4/IPv6外部IPアドレス
--resolv-conf value (agent/networking) Kubeletのresolv.confファイル [$K3S_RESOLV_CONF]
--flannel-iface value (agent/networking) デフォルトのflannelインターフェースを上書き
--flannel-conf value (agent/networking) デフォルトのflannel設定ファイルを上書き
--flannel-cni-conf value (agent/networking) デフォルトのflannel cni設定ファイルを上書き
--kubelet-arg value (agent/flags) kubeletプロセスのカスタマイズフラグ
--kube-proxy-arg value (agent/flags) kube-proxyプロセスのカスタマイズフラグ
--rootless (experimental) ルートレスで実行
--prefer-bundled-bin (experimental) ホストのバイナリよりもバンドルされたユーザースペースバイナリを優先
--docker (agent/runtime) (experimental) containerdの代わりにcri-dockerdを使用