--- title: "Add-onリスト" slug: "k8s-k8suse-addon-catalog" updated: 2026-10-20T09:02:04Z published: 2026-10-20T09:02:04Z canonical: "guide.ncloud-docs.com/k8s-k8suse-addon-catalog" --- > ## Documentation Index > Fetch the complete documentation index at: https://guide.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # Add-onリスト VPC環境で利用できます。 Ncloud Kubernetes Service(NKS)が提供する Add-onリストです。 | Add-on | 名前 | カテゴリ | 説明 | Canaryアップグレード | | --- | --- | --- | --- | --- | | `nks-csi` | NKS Block Storage CSI | storage | ブロックストレージを PersistentVolumeとして使用する CSIドライバ | 未サポート | | `nks-nas-csi` | NKS NAS (NFS) CSI | storage | NAS(NFS)ボリュームを PersistentVolumeとして使用する CSIドライバ | 未サポート | | `external-dns` | ExternalDNS | network | Serviceと Ingressの DNS名を外部 DNSに自動的に登録して管理するコントローラ | 未サポート | | `nks-gateway-adapter` | NKS Gateway API Adapter | network | Gateway APIリソース(Gateway、HTTPRoute)を NAVER Cloud ALBに接続するアダプタ | 未サポート | | `istio` | Istio | network | サービス間通信にトラフィック管理、mTLSベースのセキュリティ、可観測性を提供するサービスメッシュのコントロールプレーン | サポート | 参考 Add-onをインストール・変更する時、Add-onが提供する設定値を入力できます。この文書は、各 Add-onのすべての設定項目の意味と例を説明します。実際に指定できる設定項目と許可範囲は Add-onのバージョンによって異なるため、**Add-on追加**または **Add-on変更**ポップアップでバージョンを選択すると表示される Add-on構成スキーマを基準に指定します。 ## NKS Block Storage CSI ブロックストレージを Kubernetes PersistentVolumeとして使用する CSIドライバです。この Add-onをインストールすると、ブロックストレージベースボリュームを動的にプロビジョニングして Podにマウントできます。 インストール後の使用方法は、[ブロックストレージ CSI のユースケース](/docs/ja/k8s-k8sexamples-bscsi)をご参照ください。 ### 設定値 提供する設定項目は次の通りです。 | 項目 | 説明 | タイプ | デフォルト値 | | --- | --- | --- | --- | | `scheduling.nodeSelector` | コンポーネントを配置するノードのラベル条件 | オブジェクト(文字列マップ) | なし | | `scheduling.extraTolerations` | - テイント(taint)が設定されたノードにもコンポーネントを配置するための tolerationリスト - ドライバ動作に必要な必須 tolerationは自動的に含まれて、この項目で削除できない | 配列 | なし | | `scheduling.extraTolerations[].key` | 対象テイントキー | 文字列 | なし | | `scheduling.extraTolerations[].operator` | キーと値を比較する方式。`Exists`、`Equal`のうち1つ | 文字列 | なし | | `scheduling.extraTolerations[].value` | `operator`が`Equal`の場合に比較する値 | 文字列 | なし | | `scheduling.extraTolerations[].effect` | 対象テイントの effect。`NoSchedule`、`PreferNoSchedule`、`NoExecute`のうち1つ | 文字列 | なし | | `scheduling.extraTolerations[].tolerationSeconds` | `effect`が`NoExecute`の場合にノードにとどまる時間(秒) | 整数 | なし | 以下は例です。 ``` { "scheduling": { "nodeSelector": { "role": "storage" }, "extraTolerations": [ { "key": "dedicated", "operator": "Equal", "value": "storage", "effect": "NoSchedule" } ] } } ``` ## NKS NAS (NFS) CSI NAS(NFS)ボリュームを Kubernetes PersistentVolumeとして使用する CSIドライバです。複数の Podが同時にアクセスする共有ボリュームが必要な場合に使用します。 インストール後の使用方法は、[NASボリューム CSI のユースケース](/docs/ja/k8s-k8sexamples-nascsi)をご参照ください。 ### 設定値 提供する設定項目は次の通りです。 | 項目 | 説明 | タイプ | デフォルト値 | | --- | --- | --- | --- | | `scheduling.nodeSelector` | コンポーネントを配置するノードのラベル条件 | オブジェクト(文字列マップ) | なし | | `scheduling.extraTolerations` | - テイント(taint)が設定されたノードにもコンポーネントを配置するための tolerationリスト - ドライバ動作に必要な必須 tolerationは自動的に含まれて、この項目で削除できない | 配列 | なし | | `scheduling.extraTolerations[].key` | 対象テイントキー | 文字列 | なし | | `scheduling.extraTolerations[].operator` | キーと値を比較する方式。`Exists`、`Equal`のうち1つ。 | 文字列 | なし | | `scheduling.extraTolerations[].value` | `operator`が`Equal`の場合に比較する値 | 文字列 | なし | | `scheduling.extraTolerations[].effect` | 対象テイントの effect。`NoSchedule`、`PreferNoSchedule`、`NoExecute`のうち1つ | 文字列 | なし | | `scheduling.extraTolerations[].tolerationSeconds` | `effect`が`NoExecute`の場合にノードにとどまる時間(秒) | 整数 | なし | 以下は例です。 ``` { "scheduling": { "nodeSelector": { "role": "storage" }, "extraTolerations": [ { "key": "dedicated", "operator": "Equal", "value": "storage", "effect": "NoSchedule" } ] } } ``` ## ExternalDNS Kubernetesの Serviceと Ingressに設定された DNS名を外部 DNSサービスに自動的に登録して管理するコントローラです。この Add-onをインストールすると、ワークロードが公開するドメインを手動で管理する必要がなくなります。 インストール後の使用方法は、[ExternalDNS活用のユースケース](/docs/ja/k8s-k8sexamples-externaldns-vpc)をご参照ください。 ### 設定値 ExternalDNSが提供する設定項目は次の通りです。 | 項目 | 説明 | タイプ | デフォルト値 | 例 | | --- | --- | --- | --- | --- | | `sources` | DNSレコードを作成する対象リソースの種類。`service`、`ingress`、`crd`のうち1つ以上 | 配列 | `service`, `ingress`, `crd` | `["ingress"]` | | `domainFilter` | - 管理するドメイン限定 - 指定したドメインのレコードのみ作成・管理し、空欄にした場合は制限なし | 文字列 | 空の値 | `example.com,foo.io` | | `annotationFilter` | 指定したアノテーションを持つリソースのみ処理対象とする | 文字列 | 空の値 | `external-dns.alpha.kubernetes.io/include=true` | | `labelFilter` | 指定したラベルを持つリソースのみ処理対象とする | 文字列 | 空の値 | `team=infra` | | `txtPrefix` | 所有権記録用 TXTレコード名に付けるプレフィックス | 文字列 | `_edns.` | `_edns.` | | `txtSuffix` | - 所有権記録用 TXTレコード名に付けるサフィックス - `txtPrefix`と一緒に使用できない(以下の注意を参照) | 文字列 | 空の値 | `-edns` | | `policy` | - DNSレコード同期ポリシー - `sync`: 作成・変更・削除をすべて反映 - `upsert-only`: 削除しない - `create-only`: 作成のみ実行 | 文字列 | `upsert-only` | `sync` | | `logLevel` | ログ出力レベル。`debug`、`info`、`warn`、`error`のうち1つ | 文字列 | `info` | `debug` | | `credentials.secretName` | - 外部 DNS認証に使用するアクセスキーが含まれた Secret名 - 空欄にした場合は、ノードの Node IAM Roleで認証 - Secretはユーザーの事前作成必要(以下を参照) | 文字列 | 空の値 | `external-dns-credentials` | | `scheduling.nodeSelector` | コンポーネントを配置するノードのラベル条件 | オブジェクト(文字列マップ) | なし | `{"role":"external-dns"}` | | `scheduling.extraTolerations` | テイント(taint)が設定されたノードにもコンポーネントを配置するための tolerationリスト | 配列 | なし | — | | `scheduling.extraTolerations[].key` | 対象テイントキー | 文字列 | なし | `dedicated` | | `scheduling.extraTolerations[].operator` | キーと値を比較する方式。`Exists`、`Equal`のうち1つ | 文字列 | なし | `Equal` | | `scheduling.extraTolerations[].value` | `operator`が`Equal`の場合に比較する値 | 文字列 | なし | `dns` | | `scheduling.extraTolerations[].effect` | 対象テイントの effect。`NoSchedule`、`PreferNoSchedule`、`NoExecute`のうち1つ | 文字列 | なし | `NoSchedule` | | `scheduling.extraTolerations[].tolerationSeconds` | `effect`が`NoExecute`の場合にノードにとどまる時間(秒) | 整数 | なし | `300` | 以下は例です。 ``` { "sources": ["service", "ingress", "crd"], "domainFilter": "example.com,foo.io", "annotationFilter": "external-dns.alpha.kubernetes.io/include=true", "labelFilter": "team=infra", "txtPrefix": "", "txtSuffix": "-edns", "policy": "sync", "logLevel": "info", "credentials": { "secretName": "external-dns-credentials" }, "scheduling": { "nodeSelector": { "role": "external-dns" }, "extraTolerations": [ { "key": "dedicated", "operator": "Equal", "value": "dns", "effect": "NoSchedule" } ] } } ``` ## NKS Gateway API Adapter Gateway APIリソース(Gateway、HTTPRoute)を NAVER Cloud Application Load Balancer(ALB)に接続するアダプタです。この Add-onをインストールすると Gateway API標準リソースで外部トラフィックルーティングを構成できます。 インストール後の使用方法は、[Gateway API を使用する](/docs/ja/gateway-api-use)をご参照ください。 ### 設定値 提供する設定項目は次の通りです。 | 項目 | 説明 | タイプ | デフォルト値 | | --- | --- | --- | --- | | `scheduling.nodeSelector` | コンポーネントを配置するノードのラベル条件 | オブジェクト(文字列マップ) | なし | | `scheduling.extraTolerations` | テイント(taint)が設定されたノードにもコンポーネントを配置するための tolerationリスト | 配列 | なし | | `scheduling.extraTolerations[].key` | 対象テイントキー。 | 文字列 | なし | | `scheduling.extraTolerations[].operator` | キーと値を比較する方式。`Exists`、`Equal`のうち1つ | 文字列 | なし | | `scheduling.extraTolerations[].value` | `operator`が`Equal`の場合に比較する値 | 文字列 | なし | | `scheduling.extraTolerations[].effect` | 対象テイントの effect。`NoSchedule`、`PreferNoSchedule`、`NoExecute`のうち1つ | 文字列 | なし | | `scheduling.extraTolerations[].tolerationSeconds` | `effect`が`NoExecute`の場合にノードにとどまる時間(秒) | 整数 | なし | 以下は例です。 ``` { "scheduling": { "nodeSelector": { "role": "gateway" }, "extraTolerations": [ { "key": "dedicated", "operator": "Equal", "value": "gateway", "effect": "NoSchedule" } ] } } ``` ## Istio Istioはクラスタ間のサービス間通信にトラフィック管理、mTLSベースのセキュリティ、可観測性を提供するサービスメッシュです。この Add-onは、Istioのコントロールプレーン(istiod)をインストールします。サイドカー注入とメッシュ機能の使用方法は、[Istio公式ドキュメント](https://istio.io/latest/docs/)をご参照ください。 この Add-onは、Canaryアップグレードをサポートします。インストールしたバージョン系列ごとに Revision(例: バージョン `1.30.3`の Revisionは `1-30`)を持ち、各ネームスペースでは `istio.io/rev`ラベルでサイドカーを注入される Revisionを指定します。アップグレードの手順は、[Add-onのインストールと管理](/docs/ja/k8s-k8suse-addon-manage)の Canaryアップグレードをご参照ください。 ### 設定値 Istioが提供する設定項目は次の通りです。`meshConfig`項目は Istioのメッシュ設定(MeshConfig)がそのまま渡されるため、各項目の動作については [Istio MeshConfigリファレンス](https://istio.io/latest/docs/reference/config/istio.mesh.v1alpha1/)をご参照ください。 | 項目 | 説明 | タイプ | デフォルト値 | | --- | --- | --- | --- | | `meshConfig.accessLogFile` | - サイドカーアクセスログ出力の対象 - 空の値(出力しない)または `/dev/stdout`(標準出力)のみ指定可能 | 文字列 | 空の値 | | `meshConfig.accessLogEncoding` | アクセスログエンコード。`TEXT`、`JSON`のうち1つ | 文字列 | `TEXT` | | `meshConfig.accessLogFormat` | アクセスログフォーマットの文字列。空にすると Istioのデフォルトフォーマット | 文字列 | 空の値 | | `meshConfig.outboundTrafficPolicy.mode` | メッシュの外へ送信されるトラフィックポリシー。`ALLOW_ANY`、`REGISTRY_ONLY`のうち1つ | 文字列 | `ALLOW_ANY` | | `meshConfig.defaultConfig.terminationDrainDuration` | サイドカー終了時の接続ドレイン待機時間。時間単位で表示(例: `30s`) | 文字列 | `5s` | | `meshConfig.meshMTLS.minProtocolVersion` | メッシュ mTLSの最小 TLSバージョン。`TLS_AUTO`、`TLSV1_2`、`TLSV1_3`のうち1つ | 文字列 | `TLS_AUTO` | | `meshConfig.defaultHttpRetryPolicy.attempts` | 基本 HTTPの再試行回数。`0`の場合は、基本再試行を無効化 | 整数 | なし | | `meshConfig.defaultHttpRetryPolicy.retryOn` | 再試行する条件(コンマ区切り) | 文字列 | なし | | `meshConfig.discoverySelectors` | コントロールプレーンが監視するネームスペースを制限するラベルセレクターのリスト | 配列 | なし | | `meshConfig.discoverySelectors[].matchLabels` | 一致すべきラベル | オブジェクト(文字列マップ) | なし | | `meshConfig.discoverySelectors[].matchExpressions` | ラベル条件式のリスト(`key`、`operator`、`values`)。`operator`は `In`、`NotIn`、`Exists`、`DoesNotExist`のうち1つ | 配列 | なし | | `meshConfig.extensionProviders` | トレーシング拡張プロバイダのリスト。項目ごとに `name`、`zipkin`、`opentelemetry`のうち1つを指定 | 配列 | なし | | `meshConfig.extensionProviders[].name` | プロバイダの名前 | 文字列 | なし | | `meshConfig.extensionProviders[].zipkin.service` / `.port` | Zipkinコレクターサービスのアドレスとポート | 文字列/整数 | なし | | `meshConfig.extensionProviders[].opentelemetry.service` / `.port` | OpenTelemetryコレクターサービスのアドレスとポート | 文字列/整数 | なし | | `nodeSelector` | コントロールプレーン(istiod)を配置するノードのラベル条件 | オブジェクト(文字列マップ) | なし | | `tolerations` | - テイント(taint)が設定されたノードにもコントロールプレーンを配置するための tolerationリスト - 動作に必要な必須 tolerationは自動的に含まれて、この項目で削除できない | 配列 | なし | | `tolerations[].key` | 対象テイントキー | 文字列 | なし | | `tolerations[].operator` | キーと値を比較する方式。`Exists`、`Equal`のうち1つ | 文字列 | なし | | `tolerations[].value` | `operator`が`Equal`の場合に比較する値 | 文字列 | なし | | `tolerations[].effect` | 対象テイントの effect。`NoSchedule`、`PreferNoSchedule`、`NoExecute`のうち1つ | 文字列 | なし | | `tolerations[].tolerationSeconds` | `effect`が`NoExecute`の場合にノードにとどまる時間(秒) | 整数 | なし | 以下は例です。 ``` { "meshConfig": { "accessLogFile": "/dev/stdout", "accessLogEncoding": "JSON", "outboundTrafficPolicy": { "mode": "REGISTRY_ONLY" }, "meshMTLS": { "minProtocolVersion": "TLSV1_2" }, "extensionProviders": [ { "name": "otel", "opentelemetry": { "service": "otel-collector.observability.svc.cluster.local", "port": 4317 } } ] }, "nodeSelector": { "role": "mesh" }, "tolerations": [ { "key": "dedicated", "operator": "Equal", "value": "mesh", "effect": "NoSchedule" } ] } ``` 参考 設定値はインストールされたバージョン(Revision)のコントロールプレーンに適用されます。Canaryアップグレード開始時に新しいバージョンに適用する設定値を指定すると、現在の設定値が置き換わります。 ### Canaryアップグレードとワークロードの切り替え Canaryアップグレードが始まると、新しい Revisionのコントロールプレーンが既存の Revisionと同時にインストールされます。ワークロードはネームスペースの `istio.io/rev`ラベルに指定された Revisionを使用し続けるため、ラベルを新しい Revisionに変更してワークロードを再起動すると、再起動後の Podから新しい Revisionのサイドカーで動作します。影響範囲が小さいネームスペースから順次切り替え、正常動作することを確認します。 ``` # ネームスペースを新しい revision(例: 1-30)に切り替え kubectl label namespace istio.io/rev=1-30 --overwrite # ワークロード再起動(再起動された Podから新しい revisionを適用) kubectl rollout restart deployment -n ``` 問題が見つかった場合はラベルを既存の Revisionに戻し、再起動すると既存の Revisionに戻ります。 注意 確定すると、既存 Revisionのコントロールプレーンが削除されます。既存 Revisionラベルが残っているネームスペースでは、今後再起動される Podにサイドカーが注入されないため、確定前にすべてのネームスペースのラベルを新しい Revisionに切り替えます。キャンセルする場合は、逆に新しい Revisionに切り替えたネームスペースを既存の Revisionに戻した後に進めてください。 Revisionベースアップグレードの詳細な動作は、[Istio公式ドキュメントの Canaryアップグレード](https://istio.io/latest/docs/setup/upgrade/canary/)をご参照ください。 ## バージョン互換性 インストールできる Add-onのバージョンはクラスタの Kubernetesバージョンに応じて異なります。インストールと変更のときに、クラスタと互換性のあるバージョンのみ選択できます。Add-on別サポートバージョンは、[Add-onバージョン](/docs/ja/k8s-k8suse-addon-releasenote)のバージョン互換性表をご参照ください。