第17章 Network [config.openshift.io/v1]
- 説明
-
ネットワークは、ネットワークに関するクラスター全体の情報を保持します。正規名は
cluster
です。これは、サービス/Pod IP の IP アドレスプール、ネットワークプラグインなどの目的のネットワーク設定を設定するために使用されます。このリソースを設定するときに適用される内容の説明は、network.spec を参照してください。互換性レベル 1: メジャーリリース内で最低 12 か月または 3 つのマイナーリリース (どちらか長い方) の間安定しています。 - 型
-
object
- 必須
-
spec
-
17.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 設定でユーザーが設定できる値を保持します。原則として、これを直接読み取るべきではありません。代わりに、現在デプロイメントされている設定を示すため、NetworkStatus を使用する必要があります。現在、ほとんどのスペックフィールドはインストール後に不変です。各詳細はそれぞれ参照してください。 |
|
| status クラスターから監視される値を保持します。それらはオーバーライドされない場合があります。 |
17.1.1. .spec
- 説明
- spec 設定でユーザーが設定できる値を保持します。原則として、これを直接読み取るべきではありません。代わりに、現在デプロイメントされている設定を示すため、NetworkStatus を使用する必要があります。現在、ほとんどのスペックフィールドはインストール後に不変です。各詳細はそれぞれ参照してください。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| Pod IP に使用する IP アドレスプール。このフィールドは、インストール後は不変です。 |
|
| clusterNetworkEntry は、Pod IP が割り当てられる IP アドレスの連続したブロックです。 |
|
| externalIP は、Service.ExternalIP に影響を与えるコントローラーの設定を定義します。nil の場合、ExternalIP を設定することはできません。 |
|
| networkDiagnostics はネットワーク診断設定を定義します。network.operator.openshift.io の spec.disableNetworkDiagnostics よりも優先されます。networkDiagnostics が指定されていないか空の場合、network.operator.openshift.io の spec.disableNetworkDiagnostics フラグが true に設定されていれば、ネットワーク診断機能は無効になります。 |
|
| NetworkType は、デプロイされるプラグインです (OpenShiftSDN など)。これは、cluster-network-operator が理解できる値と一致する必要があります。一致しない場合、ネットワークはインストールされません。現在サポートされている値は次のとおりです。-OpenShiftSDN このフィールドは、インストール後は不変です。 |
|
| サービスの IP アドレスプール。現在、ここでは 1 つのエントリーのみをサポートしています。このフィールドは、インストール後は不変です。 |
|
| NodePort タイプのサービスに許可されるポート範囲。指定しない場合、デフォルトの 30000-32767 が使用されます。NodePort が指定されていないこのようなサービスでは、この範囲から自動的に割り当てられます。このパラメーターは、クラスターのインストール後に更新できます。 |
17.1.2. .spec.clusterNetwork
- 説明
- Pod IP に使用する IP アドレスプール。このフィールドは、インストール後は不変です。
- 型
-
array
17.1.3. .spec.clusterNetwork[]
- 説明
- clusterNetworkEntry は、Pod IP が割り当てられる IP アドレスの連続したブロックです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| Pod IP の完全なブロック。 |
|
| 各ノードに割り当てるブロックのサイズ (接頭辞)。このフィールドがプラグインで使用されていない場合は、未設定のままにしておくことができます。 |
17.1.4. .spec.externalIP
- 説明
- externalIP は、Service.ExternalIP に影響を与えるコントローラーの設定を定義します。nil の場合、ExternalIP を設定することはできません。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| autoAssignCIDRs は、Service.ExternalIP を自動的に割り当てる CIDR のリストです。これらは、サービスのタイプが LoadBalancer の場合に割り当てられます。一般に、これはベアメタルクラスターにのみ役立ちます。OpenShift 3.x では、これは誤解を招くように "IngressIPs" と呼ばれていました。自動的に割り当てられた外部 IP は、ExternalIPPolicy ルールの影響を受けません。現在、提供できるエントリーは 1 つだけです。 |
|
| ポリシーは、ExternalIP フィールドに適用される一連の制限です。nil または空の場合、ExternalIP を設定することはできません。 |
17.1.5. .spec.externalIP.policy
- 説明
- ポリシーは、ExternalIP フィールドに適用される一連の制限です。nil または空の場合、ExternalIP を設定することはできません。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| allowedCIDRs は、許可された CIDR のリストです。 |
|
| rejectedCIDRs は、許可されていない CIDR のリストです。これらは、allowedCIDR よりも優先されます。 |
17.1.6. .spec.networkDiagnostics
- 説明
- networkDiagnostics はネットワーク診断設定を定義します。network.operator.openshift.io の spec.disableNetworkDiagnostics よりも優先されます。networkDiagnostics が指定されていないか空の場合、network.operator.openshift.io の spec.disableNetworkDiagnostics フラグが true に設定されていれば、ネットワーク診断機能は無効になります。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| mode はネットワーク診断モードを制御します。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは All です。 |
|
| sourcePlacement は、ネットワーク診断ソースデプロイメントのスケジュールを制御します。デフォルト値の詳細は、NetworkDiagnosticsSourcePlacement を参照してください。 |
|
| targetPlacement は、ネットワーク診断ターゲットデーモンセットのスケジュールを制御します。デフォルト値の詳細は、NetworkDiagnosticsTargetPlacement を参照してください。 |
17.1.7. .spec.networkDiagnostics.sourcePlacement
- 説明
- sourcePlacement は、ネットワーク診断ソースデプロイメントのスケジュールを制御します。デフォルト値の詳細は、NetworkDiagnosticsSourcePlacement を参照してください。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
|
nodeSelector は、ネットワーク診断コンポーネントに適用されるノードセレクターです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは |
|
| toleration は、ネットワーク診断コンポーネントに適用される toleration のリストです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは空のリストです。 |
|
| この toleration が割り当てられる Pod は、マッチング Operator <operator> を使用してトリプル <key,value,effect> と一致するテイントを許容します。 |
17.1.8. .spec.networkDiagnostics.sourcePlacement.tolerations
- 説明
- toleration は、ネットワーク診断コンポーネントに適用される toleration のリストです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは空のリストです。
- 型
-
array
17.1.9. .spec.networkDiagnostics.sourcePlacement.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 の場合、値は空である必要があります。それ以外の場合は、通常の文字列のみになります。 |
17.1.10. .spec.networkDiagnostics.targetPlacement
- 説明
- targetPlacement は、ネットワーク診断ターゲットデーモンセットのスケジュールを制御します。デフォルト値の詳細は、NetworkDiagnosticsTargetPlacement を参照してください。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
|
nodeSelector は、ネットワーク診断コンポーネントに適用されるノードセレクターです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは |
|
|
toleration は、ネットワーク診断コンポーネントに適用される toleration のリストです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは |
|
| この toleration が割り当てられる Pod は、マッチング Operator <operator> を使用してトリプル <key,value,effect> と一致するテイントを許容します。 |
17.1.11. .spec.networkDiagnostics.targetPlacement.tolerations
- 説明
-
toleration は、ネットワーク診断コンポーネントに適用される toleration のリストです。これを省略した場合、ユーザーには選択する意図がないことを意味し、プラットフォームが適切なデフォルトを選択します。これらのデフォルトは時間の経過とともに変更される可能性があります。現在のデフォルトは
- operator: "Exists"
であり、これはすべての taint に toleration が付けられることを意味します。 - 型
-
array
17.1.12. .spec.networkDiagnostics.targetPlacement.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 の場合、値は空である必要があります。それ以外の場合は、通常の文字列のみになります。 |
17.1.13. .status
- 説明
- status クラスターから監視される値を保持します。それらはオーバーライドされない場合があります。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| Pod IP に使用する IP アドレスプール。 |
|
| clusterNetworkEntry は、Pod IP が割り当てられる IP アドレスの連続したブロックです。 |
|
| ClusterNetworkMTU は、Pod 間ネットワーク用の MTU です。 |
|
| conditions は、network.config の現在の状態の観察結果を表します。既知の .status.conditions.type は次のとおりです:NetworkTypeMigrationInProgress、NetworkTypeMigrationMTUReady、NetworkTypeMigrationTargetCNIAvailable、NetworkTypeMigrationTargetCNIInUse、NetworkTypeMigrationOriginalCNIPurged、および NetworkDiagnosticsAvailable |
|
|
条件には、この API リソースの現在の状態の 1 つの側面の詳細が含まれています。--- この構造体は、フィールドパスの .status.conditions で配列として直接使用することを目的としています。たとえば、次のように入力します。FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition |
|
| 移行には、クラスターネットワークの移行設定が含まれます。 |
|
| NetworkType は、デプロイされるプラグインです (OpenShiftSDN など)。 |
|
| サービスの IP アドレスプール。現在、ここでは 1 つのエントリーのみをサポートしています。 |
17.1.14. .status.clusterNetwork
- 説明
- Pod IP に使用する IP アドレスプール。
- 型
-
array
17.1.15. .status.clusterNetwork[]
- 説明
- clusterNetworkEntry は、Pod IP が割り当てられる IP アドレスの連続したブロックです。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| Pod IP の完全なブロック。 |
|
| 各ノードに割り当てるブロックのサイズ (接頭辞)。このフィールドがプラグインで使用されていない場合は、未設定のままにしておくことができます。 |
17.1.16. .status.conditions
- 説明
- conditions は、network.config の現在の状態の観察結果を表します。既知の .status.conditions.type は次のとおりです:NetworkTypeMigrationInProgress、NetworkTypeMigrationMTUReady、NetworkTypeMigrationTargetCNIAvailable、NetworkTypeMigrationTargetCNIInUse、NetworkTypeMigrationOriginalCNIPurged、および NetworkDiagnosticsAvailable
- 型
-
array
17.1.17. .status.conditions[]
- 説明
-
条件には、この API リソースの現在の状態の 1 つの側面の詳細が含まれています。--- この構造体は、フィールドパスの .status.conditions で配列として直接使用することを目的としています。たとえば、次のように入力します。FooStatus struct{ // Represents the observations of a foo’s current state. // Known .status.conditions.type are: "Available", "Progressing", and "Degraded" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition
json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"
// other fields } - 型
-
object
- 必須
-
lastTransitionTime
-
message
-
reason
-
status
-
type
-
プロパティー | 型 | 説明 |
---|---|---|
|
| lastTransitionTime は、ある状態から別の状態に最後に遷移した時間です。これは、基本的な条件が変更された時点となります。不明な場合には、API フィールドが変更された時点を使用することも可能です。 |
|
| message は、遷移の詳細を示す人が判読できるメッセージです。空の文字列の場合もあります。 |
|
| observedGeneration は、それをベースに条件が設定された .metadata.generation を表します。たとえば、.metadata.generation が現在 12 で、.status.conditions[x].observedGeneration が 9 の場合、インスタンスの現在の状態に対して条件が古くなっています。 |
|
| reason には、条件の最後の遷移の理由を示すプログラムによる識別子が含まれます。特定の条件タイプのプロデューサーは、このフィールドの期待値と意味、および値が保証された API と見なされるかどうかを定義できます。値は CamelCase 文字列である必要があります。このフィールドには空白を指定できません。 |
|
| 条件のステータス、True、False、Unknown のいずれか。 |
|
| CamelCase または foo.example.com/CamelCase の条件のタイプ。--- 多くの.condition.type 値は、Available などのリソース全体で一貫していますが、任意の条件が役立つ可能性があるため (.node.status.conditions を参照)、競合を解消する機能が重要です。一致する正規表現は (dns1123SubdomainFmt/)?(qualifiedNameFmt) です。 |
17.1.18. .status.migration
- 説明
- 移行には、クラスターネットワークの移行設定が含まれます。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| MTU には MTU 移行設定が含まれています。 |
|
| NetworkType は、デプロイされるターゲットプラグインです。現在サポートされている値は次のとおりです。OpenShiftSDN、OVNKubernetes |
17.1.19. .status.migration.mtu
- 説明
- MTU には MTU 移行設定が含まれています。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| machine には、マシンのアップリンクの MTU 移行設定が含まれています。 |
|
| network には、デフォルトネットワークの MTU 移行設定が含まれています。 |
17.1.20. .status.migration.mtu.machine
- 説明
- machine には、マシンのアップリンクの MTU 移行設定が含まれています。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| from は移行元の MTU です。 |
|
| to は移行先の MTU です。 |
17.1.21. .status.migration.mtu.network
- 説明
- network には、デフォルトネットワークの MTU 移行設定が含まれています。
- 型
-
object
プロパティー | 型 | 説明 |
---|---|---|
|
| from は移行元の MTU です。 |
|
| to は移行先の MTU です。 |