第10章 DNS [operator.openshift.io/v1]
- 説明
- DNS は CoreDNS コンポーネントを管理し、クラスター内の Pod およびサービスの名前解決サービスを提供します。これは、DNS ベースのサービス検出仕様 (https://github.com/kubernetes/dns/blob/master/docs/specification.md) をサポートしています。詳細: https://kubernetes.io/docs/tasks/administer-cluster/coredns 互換性レベル 1: メジャーリリース内で最低 12 カ月間、または 3 つのマイナーリリース (どちらか長い方) の間 Stable です。
- 型
-
object
10.1. 仕様
プロパティー | 型 | 説明 |
---|---|---|
|
| APIVersion はオブジェクトのこの表現のバージョンスキーマを定義します。サーバーは認識されたスキーマを最新の内部値に変換し、認識されない値は拒否することがあります。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources を参照してください。 |
|
| kind はこのオブジェクトが表す REST リソースを表す文字列の値です。サーバーはクライアントが要求を送信するエンドポイントからこれを推測できることがあります。これを更新することはできません。CamelCase を使用します。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds を参照してください。 |
| 標準オブジェクトのメタデータ。詳細は、https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata を参照してください。 | |
|
| spec は、DNS の望ましい動作の仕様です。 |
|
| status は、DNS の最後に観察されたステータスです。 |
10.1.1. .spec
- 説明
- spec は、DNS の望ましい動作の仕様です。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| cache は、Corefile にリストされているすべてのサーバーブロックに適用されるキャッシュ設定を表します。このフィールドでは、クラスター管理者が必要に応じて以下を設定できます。* positiveTTL: これは肯定応答をキャッシュする期間です。* negativeTTL: これは否定応答をキャッシュする期間です。これが設定されていない場合、OpenShift はデフォルト値を使用してポジティブキャッシュとネガティブキャッシュを設定します。デフォルト値は変更される可能性があります。執筆時点では、デフォルトの positiveTTL は 900 秒、デフォルトの negativeTTL は 30 秒です。または、お使いの OpenShift バージョンの Corefile に記載されているとおりです。 |
|
| logLevel は、CoreDNS に必要なログの詳細度を表します。次のいずれかの値を指定できます。* Normal: アップストリームリゾルバーからのエラーをログに記録します。* Debug: エラー、NXDOMAIN 応答、および NODATA 応答をログに記録します。* Trace: エラーとすべての応答をログに記録します。logLevel: Trace を設定すると、非常に詳細なログが生成されます。有効な値は、"Normal"、"Debug"、"Trace" です。Defaults to "Normal". |
|
| managementState は、DNS Operator がクラスター DNS を管理する必要があるかどうかを示します |
|
| nodePlacement は、DNS Pod のスケジューリングを明示的に制御します。一般に、すべてのノードで DNS Pod を実行すると、ネットワークを介して別のノードの DNS Pod に移動するのではなく、常にローカル DNS Pod によって DNS クエリーが処理されるようになります。ただし、セキュリティーポリシーでは、DNS Pod の配置を特定のノードに制限する必要がある場合があります。たとえば、セキュリティーポリシーで、任意のノード上の Pod が API と通信することを禁止している場合、ノードセレクターを指定して、DNS Pod を API との通信が許可されているノードに制限できます。逆に、特定のテイントのあるノードで DNS Pod を実行する必要がある場合は、そのテイントに対して許容範囲を指定できます。設定されていない場合、デフォルトが使用されます。詳細は、nodePlacement を参照してください。 |
|
| operatorLogLevel は、DNS Operator のログレベルを制御します。有効な値は、"Normal"、"Debug"、"Trace" です。デフォルトは "Normal" です。operatorLogLevel: Trace を設定すると、非常に詳細なログが生成されます。 |
|
| servers は、クラスタードメインのスコープ外にある 1 つ以上のサブドメインに名前クエリーの委譲を提供する DNS リゾルバーのリストです。servers に複数のサーバーが含まれている場合は、最長後方一致を使用してサーバーが決定されます。たとえば、2 つのサーバーがあり、1 つは "foo.com" 用、もう 1 つは "a.foo.com" 用で、名前クエリーが "www.a.foo.com" 用である場合、そのクエリーはゾーンが "a.foo.com" のサーバーにルーティングされます。このフィールドが nil の場合、サーバーは作成されません。 |
|
| Server は、CoreDNS のインスタンスごとに実行されるサーバーのスキーマを定義します。 |
|
| upstreamResolvers は、デフォルト (".") サーバーの場合に、CoreDNS が DNS メッセージをアップストリームリゾルバーにプロキシーするように設定するためのスキーマを定義します。このフィールドが指定されていない場合、使用されるアップストリームはデフォルトで/etc/resolv.conf になり、ポリシーは "sequential" になります。 |
10.1.2. .spec.cache
- 説明
- cache は、Corefile にリストされているすべてのサーバーブロックに適用されるキャッシュ設定を表します。このフィールドでは、クラスター管理者が必要に応じて以下を設定できます。* positiveTTL: これは肯定応答をキャッシュする期間です。* negativeTTL: これは否定応答をキャッシュする期間です。これが設定されていない場合、OpenShift はデフォルト値を使用してポジティブキャッシュとネガティブキャッシュを設定します。デフォルト値は変更される可能性があります。執筆時点では、デフォルトの positiveTTL は 900 秒、デフォルトの negativeTTL は 30 秒です。または、お使いの OpenShift バージョンの Corefile に記載されているとおりです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| negativeTTL は任意であり、否定応答をキャッシュする時間を指定します。設定する場合、1s (1 秒) 以上の値にする必要があります。理論上の最大値は数年です。このフィールドには、符号なしの 10 進数の期間文字列を指定する必要があります。それぞれの数字に少数 (任意) と単位の接尾辞を付けます。たとえば、"100s"、"1m30s"、"12h30m10s" です。秒の小数点以下の値は、最も近い秒に切り捨てられます。設定した値が 1 秒未満の場合、デフォルト値が使用されます。設定されていない場合、値は 0 秒になり、OpenShift の各バージョンの Corefile に特に記載がない限り、OpenShift はデフォルト値の 30 秒を使用します。デフォルト値の 30 秒は変更される可能性があります。 |
|
| positiveTTL は任意であり、肯定応答をキャッシュする時間を指定します。設定する場合、1s (1 秒) 以上の値にする必要があります。理論上の最大値は数年です。このフィールドには、符号なしの 10 進数の期間文字列を指定する必要があります。それぞれの数字に少数 (任意) と単位の接尾辞を付けます。たとえば、"100s"、"1m30s"、"12h30m10s" です。秒の小数点以下の値は、最も近い秒に切り捨てられます。設定した値が 1 秒未満の場合、デフォルト値が使用されます。設定されていない場合、値は 0 秒になり、OpenShift の各バージョンの Corefile に特に記載がない限り、OpenShift はデフォルト値の 900 秒を使用します。デフォルト値の 900 秒は変更される可能性があります。 |
10.1.3. .spec.nodePlacement
- 説明
- nodePlacement は、DNS Pod のスケジューリングを明示的に制御します。一般に、すべてのノードで DNS Pod を実行すると、ネットワークを介して別のノードの DNS Pod に移動するのではなく、常にローカル DNS Pod によって DNS クエリーが処理されるようになります。ただし、セキュリティーポリシーでは、DNS Pod の配置を特定のノードに制限する必要がある場合があります。たとえば、セキュリティーポリシーで、任意のノード上の Pod が API と通信することを禁止している場合、ノードセレクターを指定して、DNS Pod を API との通信が許可されているノードに制限できます。逆に、特定のテイントのあるノードで DNS Pod を実行する必要がある場合は、そのテイントに対して許容範囲を指定できます。設定されていない場合、デフォルトが使用されます。詳細は、nodePlacement を参照してください。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| nodeSelector は、DNS Pod に適用されるノードセレクターです。空の場合、デフォルトが使用されます。現在は次のとおりです。kubernetes.io/os:linux このデフォルトは変更される可能性があります。設定されている場合、指定されたセレクターが使用され、デフォルトが置き換えられます。 |
|
| tolerations は、DNS Pod に適用される許容範囲のリストです。空の場合、DNS Operator は "node-role.kubernetes.io/master" taint の許容範囲を設定します。このデフォルトは変更される可能性があります。"node-role.kubernetes.io/master" テイントの許容値を含めずに許容値を指定すると、すべてのワーカーノードが使用できなくなった場合に停止につながる可能性があるため、リスクが伴う可能性があります。デーモンコントローラーにもいくつかの許容値が追加されていることに注意してください。https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ を参照してください |
|
| この toleration が割り当てられる Pod は、マッチング Operator <operator> を使用してトリプル <key,value,effect> と一致するテイントを許容します。 |
10.1.4. .spec.nodePlacement.tolerations
- 説明
- tolerations は、DNS Pod に適用される許容範囲のリストです。空の場合、DNS Operator は "node-role.kubernetes.io/master" taint の許容範囲を設定します。このデフォルトは変更される可能性があります。"node-role.kubernetes.io/master" テイントの許容値を含めずに許容値を指定すると、すべてのワーカーノードが使用できなくなった場合に停止につながる可能性があるため、リスクが伴う可能性があります。デーモンコントローラーにもいくつかの許容値が追加されていることに注意してください。https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ を参照してください
- 型
-
array
10.1.5. .spec.nodePlacement.tolerations[]
- 説明
- この toleration が割り当てられる Pod は、マッチング Operator <operator> を使用してトリプル <key,value,effect> と一致するテイントを許容します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| effect は、照合するテイントの効果を示します。空の場合は、すべてのテイント効果に一致します。指定されている場合、許可される値は NoSchedule、PreferNoSchedule、および NoExecute です。 |
|
| key は toleration が適用されるテイントキーです。空の場合は、すべてのテイントキーに一致します。キーが空の場合、Operator は Exists である必要があります。この組み合わせは、すべての値とすべてのキーに一致することを意味します。 |
|
| Operator はキーと値の関係を表します。有効な Operator は Exists および Equal です。デフォルトは Equal です。Exists は、値のワイルドカードと同等であるため、Pod は特定のカテゴリーのすべてのテイントに耐えることができます。 |
|
| tolerationSeconds は、toleration (effect は NoExecute でなければならず、NoExecute 以外の場合このフィールドは無視されます) がテイントを許容する期間を表します。デフォルトでは設定されていません。つまり、テイントを永久に許容します (エビクトしないでください)。ゼロ値と負の値は、システムによって 0 (すぐにエビクト) として扱われます。 |
|
| value は、toleration が一致するテイントの値です。Operator が Exists の場合、値は空である必要があります。それ以外の場合は、通常の文字列のみになります。 |
10.1.6. .spec.servers
- 説明
- servers は、クラスタードメインのスコープ外にある 1 つ以上のサブドメインに名前クエリーの委譲を提供する DNS リゾルバーのリストです。servers に複数のサーバーが含まれている場合は、最長後方一致を使用してサーバーが決定されます。たとえば、2 つのサーバーがあり、1 つは "foo.com" 用、もう 1 つは "a.foo.com" 用で、名前クエリーが "www.a.foo.com" 用である場合、そのクエリーはゾーンが "a.foo.com" のサーバーにルーティングされます。このフィールドが nil の場合、サーバーは作成されません。
- 型
-
array
10.1.7. .spec.servers[]
- 説明
- Server は、CoreDNS のインスタンスごとに実行されるサーバーのスキーマを定義します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| forwardPlugin は、DNS メッセージをアップストリームリゾルバーにプロキシーするように CoreDNS を設定するためのスキーマを定義します。 |
|
| name は必須であり、サーバーの一意の名前を指定します。名前は、rfc6335 のサービス名構文に準拠している必要があります。 |
|
| zones は必須であり、サーバーが権限を持つサブドメインを指定します。ゾーンは、サブドメインの rfc1123 定義に準拠している必要があります。クラスタードメイン (つまり、"cluster.local") の指定は無効です。 |
10.1.8. .spec.servers[].forwardPlugin
- 説明
- forwardPlugin は、DNS メッセージをアップストリームリゾルバーにプロキシーするように CoreDNS を設定するためのスキーマを定義します。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| policy は、アップストリームサーバーをクエリーのために選択する順序を決定するために使用します。次のいずれかの値を指定できます。* "Random": クエリーごとにランダムなアップストリームサーバーを選択します。* "RoundRobin": ラウンドロビンの順序でアップストリームサーバーを選択し、新しいクエリーごとに次のサーバーに移動します。* "Sequential": 新しいクエリーごとに最初のサーバーから始めて、応答が得られるまでアップストリームサーバーに順番にクエリーを試行します。デフォルト値は "Random" です。 |
|
| protocolStrategy は、アップストリーム DNS 要求に使用するプロトコルを指定します。protocolStrategy の有効な値は "TCP" です (省略可能)。省略すると、指定なしとみなされ、プラットフォームによって適切なデフォルトが選択されます。デフォルトは、今後変更される可能性があります。現在のデフォルトでは、元のクライアント要求のプロトコルが使用されます。"TCP" に設定すると、クライアント要求が UDP を使用する場合でも、すべてのアップストリーム DNS 要求に対して TCP が必ず使用されます。"TCP" は、非準拠のアップストリームリゾルバーなどによって発生する UDP 固有の問題には役立ちます。ただし、消費される帯域幅が増加したり、DNS 応答時間が長くなったりする可能性があります。protocolStrategy は、CoreDNS がアップストリームリゾルバーに対して行う DNS 要求のプロトコルにのみ影響することに注意してください。クライアントと CoreDNS 間の DNS 要求のプロトコルには影響しません。 |
|
| transportConfig は、DNS 要求をアップストリームリゾルバーに転送するときに使用するトランスポートタイプ、サーバー名、およびオプションのカスタム CA または CA バンドルを設定するために使用します。デフォルト値は "" (空) です。デフォルト値の場合、DNS 要求をアップストリームリゾルバーに転送するときに標準のクリアテキスト接続が使用されます。 |
|
| upstreams は、ゾーンのサブドメインの名前クエリーを転送するリゾルバーのリストです。CoreDNS の各インスタンスは、アップストリームのヘルスチェックを実行します。正常なアップストリームが交換中にエラーを返すと、アップストリームの別のリゾルバーが試行されます。アップストリームは、ポリシーで指定された順序で選択されます。各アップストリームは、アップストリームが 53 以外のポートでリッスンしている場合、IP アドレスまたは IP: ポートで表されます。ForwardPlugin ごとに最大 15 個のアップストリームが許可されます。 |
10.1.9. .spec.servers[].forwardPlugin.transportConfig
- 説明
- transportConfig は、DNS 要求をアップストリームリゾルバーに転送するときに使用するトランスポートタイプ、サーバー名、およびオプションのカスタム CA または CA バンドルを設定するために使用します。デフォルト値は "" (空) です。デフォルト値の場合、DNS 要求をアップストリームリゾルバーに転送するときに標準のクリアテキスト接続が使用されます。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| tls には、トランスポートが "TLS" に設定されているときに使用する追加の設定オプションを含めます。 |
|
| transport を使用すると、クラスター管理者はクラスターの DNS とアップストリームリゾルバー間の DNS-over-TLS 接続の使用を選択できます。CABundle を設定せずにこのレベルで TLS をトランスポートとして設定すると、システム証明書がアップストリームリゾルバーのサービス証明書の検証に使用されます。可能な値: "" (空) - 明示的な指定なしとみなされ、プラットフォームによってデフォルトが選択されます。デフォルトは、今後変更される可能性があります。現在のデフォルトは "Cleartext" です。"Cleartext" - クラスター管理者が指定するクリアテキストオプション。この値を指定しても、得られる機能は空の値と同じですが、クラスター管理者がトランスポートについてより明示的に指定する場合や、"TLS" から "Cleartext" に明示的に切り替える場合に役立つことがあります。"TLS" - DNS クエリーを TLS 接続経由で送信する必要があることを示します。トランスポートを TLS に設定した場合、ServerName も設定する必要があります。アップストリーム IP にポートが含まれていない場合、RFC 7858 セクション 3.1 (https://datatracker.ietf.org/doc/html/rfc7858#section-3.1) に従って、デフォルトでポート 853 が試行されます。 |
10.1.10. .spec.servers[].forwardPlugin.transportConfig.tls
- 説明
- tls には、トランスポートが "TLS" に設定されているときに使用する追加の設定オプションを含めます。
- 型
-
object
- 必須
-
serverName
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
caBundle は、1 つの CA 証明書か CA バンドルを含んでいる必要がある ConfigMap を参照します。これを使用すると、クラスター管理者は、アップストリームリゾルバーの証明書を検証するための独自の CA または CA バンドルを指定できます。1. configmap には |
|
| serverName は、DNS クエリーを転送するときに接続するアップストリームサーバーです。これは、トランスポートが "TLS" に設定されている場合に必要です。ServerName は、RFC 1123 の DNS 命名規則に基づいて検証され、アップストリームリゾルバーにインストールされている TLS 証明書と一致する必要があります。 |
10.1.11. .spec.servers[].forwardPlugin.transportConfig.tls.caBundle
- 説明
-
caBundle は、1 つの CA 証明書か CA バンドルを含んでいる必要がある ConfigMap を参照します。これを使用すると、クラスター管理者は、アップストリームリゾルバーの証明書を検証するための独自の CA または CA バンドルを指定できます。1. configmap には
ca-bundle.crt
キーが含まれている必要があります。2. 値は PEM でエンコードされた CA 証明書または CA バンドルである必要があります。3. 管理者は、openshift-config namespace にこの configmap を作成する必要があります。4. アップストリームサーバー証明書には、ServerName と一致するサブジェクト代替名 (SAN) が含まれている必要があります。 - 型
-
object
- 必須
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
| name は、参照される config map の metadata.name です |
10.1.12. .spec.upstreamResolvers
- 説明
- upstreamResolvers は、デフォルト (".") サーバーの場合に、CoreDNS が DNS メッセージをアップストリームリゾルバーにプロキシーするように設定するためのスキーマを定義します。このフィールドが指定されていない場合、使用されるアップストリームはデフォルトで/etc/resolv.conf になり、ポリシーは "sequential" になります。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| Policy は、アップストリームサーバーをクエリーのために選択する順序を決定するために使用します。次のいずれかの値を指定できます。* "Random": クエリーごとにランダムなアップストリームサーバーを選択します。* "RoundRobin": ラウンドロビンの順序でアップストリームサーバーを選択し、新しいクエリーごとに次のサーバーに移動します。* "Sequential": 新しいクエリーごとに最初のサーバーから始めて、応答が得られるまでアップストリームサーバーに順番にクエリーを試行します。デフォルト値は "Sequential" です。 |
|
| protocolStrategy は、アップストリーム DNS 要求に使用するプロトコルを指定します。protocolStrategy の有効な値は "TCP" です (省略可能)。省略すると、指定なしとみなされ、プラットフォームによって適切なデフォルトが選択されます。デフォルトは、今後変更される可能性があります。現在のデフォルトでは、元のクライアント要求のプロトコルが使用されます。"TCP" に設定すると、クライアント要求が UDP を使用する場合でも、すべてのアップストリーム DNS 要求に対して TCP が必ず使用されます。"TCP" は、非準拠のアップストリームリゾルバーなどによって発生する UDP 固有の問題には役立ちます。ただし、消費される帯域幅が増加したり、DNS 応答時間が長くなったりする可能性があります。protocolStrategy は、CoreDNS がアップストリームリゾルバーに対して行う DNS 要求のプロトコルにのみ影響することに注意してください。クライアントと CoreDNS 間の DNS 要求のプロトコルには影響しません。 |
|
| transportConfig は、DNS 要求をアップストリームリゾルバーに転送するときに使用するトランスポートタイプ、サーバー名、およびオプションのカスタム CA または CA バンドルを設定するために使用します。デフォルト値は "" (空) です。デフォルト値の場合、DNS 要求をアップストリームリゾルバーに転送するときに標準のクリアテキスト接続が使用されます。 |
|
| Upstreams は、"."ドメインの名前クエリーを転送するリゾルバーのリストです。CoreDNS の各インスタンスは、アップストリームのヘルスチェックを実行します。正常なアップストリームが交換中にエラーを返すと、アップストリームの別のリゾルバーが試行されます。アップストリームは、ポリシーで指定された順序で選択されます。ForwardPlugin ごとに最大 15 個のアップストリームが許可されます。アップストリームが指定されていない場合は、デフォルトで /etc/resolv.conf が使用されます。 |
|
| アップストリームは、SystemResolvConf タイプか Network タイプのどちらかです。- アップストリームが SystemResolvConf タイプの場合、追加のフィールドは必要ありません。アップストリームは /etc/resolv.conf を使用するように設定されます。- アップストリームが Network タイプの場合、アップストリームが 53 以外のポートでリッスンするのであれば、NetworkResolver フィールドを IP アドレスまたは IP:port で定義する必要があります。 |
10.1.13. .spec.upstreamResolvers.transportConfig
- 説明
- transportConfig は、DNS 要求をアップストリームリゾルバーに転送するときに使用するトランスポートタイプ、サーバー名、およびオプションのカスタム CA または CA バンドルを設定するために使用します。デフォルト値は "" (空) です。デフォルト値の場合、DNS 要求をアップストリームリゾルバーに転送するときに標準のクリアテキスト接続が使用されます。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| tls には、トランスポートが "TLS" に設定されているときに使用する追加の設定オプションを含めます。 |
|
| transport を使用すると、クラスター管理者はクラスターの DNS とアップストリームリゾルバー間の DNS-over-TLS 接続の使用を選択できます。CABundle を設定せずにこのレベルで TLS をトランスポートとして設定すると、システム証明書がアップストリームリゾルバーのサービス証明書の検証に使用されます。可能な値: "" (空) - 明示的な指定なしとみなされ、プラットフォームによってデフォルトが選択されます。デフォルトは、今後変更される可能性があります。現在のデフォルトは "Cleartext" です。"Cleartext" - クラスター管理者が指定するクリアテキストオプション。この値を指定しても、得られる機能は空の値と同じですが、クラスター管理者がトランスポートについてより明示的に指定する場合や、"TLS" から "Cleartext" に明示的に切り替える場合に役立つことがあります。"TLS" - DNS クエリーを TLS 接続経由で送信する必要があることを示します。トランスポートを TLS に設定した場合、ServerName も設定する必要があります。アップストリーム IP にポートが含まれていない場合、RFC 7858 セクション 3.1 (https://datatracker.ietf.org/doc/html/rfc7858#section-3.1) に従って、デフォルトでポート 853 が試行されます。 |
10.1.14. .spec.upstreamResolvers.transportConfig.tls
- 説明
- tls には、トランスポートが "TLS" に設定されているときに使用する追加の設定オプションを含めます。
- 型
-
object
- 必須
-
serverName
-
プロパティー | 型 | 説明 |
---|---|---|
|
|
caBundle は、1 つの CA 証明書か CA バンドルを含んでいる必要がある ConfigMap を参照します。これを使用すると、クラスター管理者は、アップストリームリゾルバーの証明書を検証するための独自の CA または CA バンドルを指定できます。1. configmap には |
|
| serverName は、DNS クエリーを転送するときに接続するアップストリームサーバーです。これは、トランスポートが "TLS" に設定されている場合に必要です。ServerName は、RFC 1123 の DNS 命名規則に基づいて検証され、アップストリームリゾルバーにインストールされている TLS 証明書と一致する必要があります。 |
10.1.15. .spec.upstreamResolvers.transportConfig.tls.caBundle
- 説明
-
caBundle は、1 つの CA 証明書か CA バンドルを含んでいる必要がある ConfigMap を参照します。これを使用すると、クラスター管理者は、アップストリームリゾルバーの証明書を検証するための独自の CA または CA バンドルを指定できます。1. configmap には
ca-bundle.crt
キーが含まれている必要があります。2. 値は PEM でエンコードされた CA 証明書または CA バンドルである必要があります。3. 管理者は、openshift-config namespace にこの configmap を作成する必要があります。4. アップストリームサーバー証明書には、ServerName と一致するサブジェクト代替名 (SAN) が含まれている必要があります。 - 型
-
object
- 必須
-
name
-
プロパティー | 型 | 説明 |
---|---|---|
|
| name は、参照される config map の metadata.name です |
10.1.16. .spec.upstreamResolvers.upstreams
- 説明
- Upstreams は、"."ドメインの名前クエリーを転送するリゾルバーのリストです。CoreDNS の各インスタンスは、アップストリームのヘルスチェックを実行します。正常なアップストリームが交換中にエラーを返すと、アップストリームの別のリゾルバーが試行されます。アップストリームは、ポリシーで指定された順序で選択されます。ForwardPlugin ごとに最大 15 個のアップストリームが許可されます。アップストリームが指定されていない場合は、デフォルトで /etc/resolv.conf が使用されます。
- 型
-
array
10.1.17. .spec.upstreamResolvers.upstreams[]
- 説明
- アップストリームは、SystemResolvConf タイプか Network タイプのどちらかです。- アップストリームが SystemResolvConf タイプの場合、追加のフィールドは必要ありません。アップストリームは /etc/resolv.conf を使用するように設定されます。- アップストリームが Network タイプの場合、アップストリームが 53 以外のポートでリッスンするのであれば、NetworkResolver フィールドを IP アドレスまたは IP:port で定義する必要があります。
- 型
-
object
- 必須
-
type
-
プロパティー | 型 | 説明 |
---|---|---|
|
| Address は、Type が Network に設定されている場合に定義する必要があります。それ以外の場合は無視されます。有効な IPv4 または IPv6 アドレスである必要があります。 |
|
| Port は、Type が Network に設定されている場合に定義する必要があります。それ以外の場合は無視されます。ポートは 65535 までである必要があります。 |
|
| Type は、このアップストリームに IP/IP:port リゾルバーを含めるか、ローカルの /etc/resolv.conf を含めるかを定義します。Type には、2 つの値 (SystemResolvConf または Network) を指定できます。* SystemResolvConf を使用する場合、アップストリーム構造に追加のフィールドを定義する必要はありません。/etc/resolv.conf が使用されます。* Network を使用する場合、アップストリーム構造に少なくともアドレスが含まれている必要があります。 |
10.1.18. .status
- 説明
- status は、DNS の最後に観察されたステータスです。
- 型
-
object
- 必須
-
clusterDomain
-
clusterIP
-
プロパティー | 型 | 説明 |
---|---|---|
|
| clusterDomain は、DNS サービスのローカルクラスター DNS ドメイン接尾辞です。これは、RFC 1034 のセクション 3.5 (https://tools.ietf.org/html/rfc1034#section-3.5) で定義されているサブドメインです。たとえば、"cluster.local" です。 詳細: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service |
|
| clusterIP は、この DNS を利用できるようにするためのサービス IP です。デフォルトの DNS の場合、これは、デフォルトの ClusterFirst DNS ポリシーを使用している Pod のデフォルトのネームサーバーとして使用されている既知の IP です。一般に、この IP は、Pod の spec.dnsConfig.nameservers リストで指定するか、クラスター内から名前解決を実行するときに明示的に使用できます。例: dig foo.com @<service IP> 詳細: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies |
|
| 条件は、クラスター上の DNS の状態に関する情報を提供します。サポートされている DNS 条件は次のとおりです。*使用可能 - 次の条件が満たされた場合に真になります。*DNS コントローラーデーモンセットが使用可能です。- これらの条件のいずれかが満たされていない場合は False。 |
|
| OperatorCondition は、標準の状態フィールドです。 |
10.1.19. .status.conditions
- 説明
- 条件は、クラスター上の DNS の状態に関する情報を提供します。サポートされている DNS 条件は次のとおりです。*使用可能 - 次の条件が満たされた場合に真になります。*DNS コントローラーデーモンセットが使用可能です。- これらの条件のいずれかが満たされていない場合は False。
- 型
-
array
10.1.20. .status.conditions[]
- 説明
- OperatorCondition は、標準の状態フィールドです。
- 型
-
object
- 必須
-
type
-
プロパティー | 型 | 説明 |
---|---|---|
|
| |
|
| |
|
| |
|
| |
|
|