第13章 NetworkPolicy networking.k8s.io/v1
- 説明
- NetworkPolicy は、一連の Pod で許可されるネットワークトラフィックを記述します
- タイプ
-
object
13.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 を参照してください。 | |
|
| NetworkPolicySpec は、NetworkPolicy の仕様を提供します |
|
| NetworkPolicyStatus は、NetworkPolicy の現在の状態を記述します。 |
13.1.1. .spec
- 説明
- NetworkPolicySpec は、NetworkPolicy の仕様を提供します
- タイプ
-
object
- 必須
-
podSelector
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| 選択した Pod に適用されるスロールールのリスト。Pod を選択する NetworkPolicies がない場合 (およびクラスターポリシーがトラフィックを許可する場合)、または podSelector が Pod と一致するすべての NetworkPolicy オブジェクトにわたってトラフィックが少なくとも 1 つのスロールールと一致する場合、送信トラフィックが許可されます。このフィールドが空の場合、この NetworkPolicy はすべての送信トラフィックを制限します (そして、選択した Pod がデフォルトで分離されていることを確認するためだけに機能します)。このフィールドは 1.8 のベータレベルです |
|
| NetworkPolicyEgressRule は、NetworkPolicySpec の podSelector によって一致する Pod から許可される特定のトラフィックセットを記述します。トラフィックは、ポートと宛先の両方に一致する必要があります。このタイプは 1.8 のベータレベルです |
|
| 選択した Pod に適用される入力ルールのリスト。Pod を選択する NetworkPolicies がない場合 (およびクラスターポリシーがトラフィックを許可する場合)、トラフィックソースが Pod のローカルノードである場合、またはトラフィックがすべての NetworkPolicy 全体で少なくとも 1 つの入力ルールに一致する場合、トラフィックは Pod に許可されます podSelector が Pod と一致するオブジェクト。このフィールドが空の場合、この NetworkPolicy はトラフィックを許可しません (そして、選択した Pod がデフォルトで分離されていることを確認するためだけに機能します) |
|
| NetworkPolicyIngressRule は、NetworkPolicySpec の podSelector によって一致する Pod に許可される特定のトラフィックセットを記述します。トラフィックは、ポートと送信元の両方に一致する必要があります。 |
| この NetworkPolicy オブジェクトが適用される Pod を選択します。入力ルールの配列は、このフィールドで選択されたすべての Pod に適用されます。複数のネットワークポリシーで同じ Pod のセットを選択できます。この場合、それぞれの ingress ルールは加算的に組み合わされます。このフィールドはオプションではなく、標準のラベルセレクターセマンティクスに従います。空の podSelector は、この名前空間内のすべての Pod と一致します。 | |
|
| NetworkPolicy が関連するルールタイプのリスト。有効なオプションは、"Ingress"、"Egress"、または "Ingress"、"Egress" です。このフィールドが指定されていない場合、入力ルールまたはスロールールの存在に基づいてデフォルトになります。Egress セクションを含むポリシーは、Egress に影響を与えると見なされ、すべてのポリシー (Ingress セクションを含むかどうかに関係なく) は、Ingress に影響を与えると見なされます。出力専用ポリシーを作成する場合は、policyTypes"Egress" を明示的に指定する必要があります。同様に、出力が許可されないことを指定するポリシーを作成する場合は、Egress を含む policyTypes 値を指定する必要があります (このようなポリシーには Egress セクションが含まれず、デフォルトで "Ingress" に設定されるためです。)。このフィールドは 1.8 のベータレベルです |
13.1.2. .spec.egress
- Description
- 選択した Pod に適用されるスロールールのリスト。Pod を選択する NetworkPolicies がない場合 (およびクラスターポリシーがトラフィックを許可する場合)、または podSelector が Pod と一致するすべての NetworkPolicy オブジェクトにわたってトラフィックが少なくとも 1 つのスロールールと一致する場合、送信トラフィックが許可されます。このフィールドが空の場合、この NetworkPolicy はすべての送信トラフィックを制限します (そして、選択した Pod がデフォルトで分離されていることを確認するためだけに機能します)。このフィールドは 1.8 のベータレベルです
- タイプ
-
array
13.1.3. .spec.egress[]
- 説明
- NetworkPolicyEgressRule は、NetworkPolicySpec の podSelector によって一致する Pod から許可される特定のトラフィックセットを記述します。トラフィックは、ポートと宛先の両方に一致する必要があります。このタイプは 1.8 のベータレベルです
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| 発信トラフィックの宛先ポートのリスト。このリストの各項目は、論理 OR を使用して結合されます。このフィールドが空または欠落している場合、このルールはすべてのポートに一致します (トラフィックはポートによって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックがリスト内の少なくとも 1 つのポートに一致する場合にのみトラフィックを許可します。 |
|
| NetworkPolicyPort は、トラフィックを許可するポートを記述します |
|
| このルール用に選択された Pod の送信トラフィックの宛先のリスト。このリストの項目は、論理演算子 OR を使用して組み合わせます。このフィールドが空または欠落している場合、このルールはすべての宛先に一致します (トラフィックは宛先によって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックが to リストの少なくとも 1 つのアイテムと一致する場合にのみトラフィックを許可します。 |
|
| NetworkPolicyPeer は、トラフィックとの間のトラフィックを許可するピアについて説明します。フィールドの特定の組み合わせのみが許可されます |
13.1.4. .spec.egress[].ports
- Description
- 発信トラフィックの宛先ポートのリスト。このリストの各項目は、論理 OR を使用して結合されます。このフィールドが空または欠落している場合、このルールはすべてのポートに一致します (トラフィックはポートによって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックがリスト内の少なくとも 1 つのポートに一致する場合にのみトラフィックを許可します。
- タイプ
-
array
13.1.5. .spec.egress[].ports[]
- 説明
- NetworkPolicyPort は、トラフィックを許可するポートを記述します
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| 設定されている場合、ポートから endPort までのポートの範囲 (両端を含む) がポリシーで許可される必要があることを示します。ポートフィールドが定義されていない場合、またはポートフィールドが名前付き (文字列) ポートとして定義されている場合、このフィールドは定義できません。endPort は、port 以上である必要があります。 |
| 指定されたプロトコルのポート。これは、Pod の数値ポートまたは名前付きポートのいずれかです。このフィールドが指定されていない場合、これはすべてのポート名と番号に一致します。存在する場合、指定されたプロトコル AND ポートのトラフィックのみが一致します。 | |
|
| トラフィックが一致する必要があるプロトコル (TCP、UDP、または SCTP)。指定しない場合、このフィールドのデフォルトは TCP です。 |
13.1.6. .spec.egress[].to
- Description
- このルール用に選択された Pod の送信トラフィックの宛先のリスト。このリストの項目は、論理演算子 OR を使用して組み合わせます。このフィールドが空または欠落している場合、このルールはすべての宛先に一致します (トラフィックは宛先によって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックが to リストの少なくとも 1 つのアイテムと一致する場合にのみトラフィックを許可します。
- タイプ
-
array
13.1.7. .spec.egress[].to[]
- 説明
- NetworkPolicyPeer は、トラフィックとの間のトラフィックを許可するピアについて説明します。フィールドの特定の組み合わせのみが許可されます
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| IPBlock は、特定の CIDR を記述します (例:"192.168.1.0/24","2001:db8::/64")、NetworkPolicySpec の podSelector で一致した Pod に対しては許可されます。例外エントリーは、このルールに含めるべきではない CIDR を記述します。 |
| クラスタースコープのラベルを使用して名前空間を選択します。このフィールドは、標準のラベルセレクターセマンティクスに従います。存在するが空の場合、すべての名前空間が選択されます。 PodSelector も設定されている場合、NetworkPolicyPeer は全体として、NamespaceSelector によって選択された名前空間で PodSelector に一致する Pod を選択します。それ以外の場合は、NamespaceSelector によって選択されたネームスペース内のすべての Pod を選択します。 | |
| Pod を選択するラベルセレクターです。このフィールドは、標準のラベルセレクターセマンティクスに従います。存在するが空の場合、すべての Pod が選択されます。 NamespaceSelector も設定されている場合、NetworkPolicyPeer は全体として、NamespaceSelector によって選択された名前空間で PodSelector に一致する Pod を選択します。それ以外の場合は、ポリシー自体の名前空間で PodSelector に一致する Pod を選択します。 |
13.1.8. .spec.egress[].to[].ipBlock
- 説明
- IPBlock は、特定の CIDR を記述します (例:"192.168.1.0/24","2001:db8::/64")、NetworkPolicySpec の podSelector で一致した Pod に対しては許可されます。例外エントリーは、このルールに含めるべきではない CIDR を記述します。
- タイプ
-
object
- 必須
-
cidr
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| CIDR は、IP Block Valid の例(192.168.1.0/24 または 2001:db8::/64)を表す文字列です。 |
|
| ただし、IP ブロックの有効な例には含めない CIDR のスライスは、"192.168.1.0/24" または "2001:db8::/64"、CIDR 範囲外の場合に拒否されます。 |
13.1.9. .spec.ingress
- Description
- 選択した Pod に適用される入力ルールのリスト。Pod を選択する NetworkPolicies がない場合 (およびクラスターポリシーがトラフィックを許可する場合)、トラフィックソースが Pod のローカルノードである場合、またはトラフィックがすべての NetworkPolicy 全体で少なくとも 1 つの入力ルールに一致する場合、トラフィックは Pod に許可されます podSelector が Pod と一致するオブジェクト。このフィールドが空の場合、この NetworkPolicy はトラフィックを許可しません (そして、選択した Pod がデフォルトで分離されていることを確認するためだけに機能します)
- タイプ
-
array
13.1.10. .spec.ingress[]
- 説明
- NetworkPolicyIngressRule は、NetworkPolicySpec の podSelector によって一致する Pod に許可される特定のトラフィックセットを記述します。トラフィックは、ポートと送信元の両方に一致する必要があります。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| このルール用に選択された Pod にアクセスできる必要があるソースのリスト。このリストの項目は、論理演算子 OR を使用して組み合わせます。このフィールドが空または欠落している場合、このルールはすべてのソースに一致します (トラフィックはソースによって制限されていません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックが from リストの少なくとも 1 つのアイテムと一致する場合にのみトラフィックを許可します。 |
|
| NetworkPolicyPeer は、トラフィックとの間のトラフィックを許可するピアについて説明します。フィールドの特定の組み合わせのみが許可されます |
|
| このルール用に選択された Pod でアクセス可能にする必要があるポートのリスト。このリストの各項目は、論理 OR を使用して結合されます。このフィールドが空または欠落している場合、このルールはすべてのポートに一致します (トラフィックはポートによって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックがリスト内の少なくとも 1 つのポートに一致する場合にのみトラフィックを許可します。 |
|
| NetworkPolicyPort は、トラフィックを許可するポートを記述します |
13.1.11. .spec.ingress[].from
- Description
- このルール用に選択された Pod にアクセスできる必要があるソースのリスト。このリストの項目は、論理演算子 OR を使用して組み合わせます。このフィールドが空または欠落している場合、このルールはすべてのソースに一致します (トラフィックはソースによって制限されていません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックが from リストの少なくとも 1 つのアイテムと一致する場合にのみトラフィックを許可します。
- タイプ
-
array
13.1.12. .spec.ingress[].from[]
- 説明
- NetworkPolicyPeer は、トラフィックとの間のトラフィックを許可するピアについて説明します。フィールドの特定の組み合わせのみが許可されます
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| IPBlock は、特定の CIDR を記述します (例:"192.168.1.0/24","2001:db8::/64")、NetworkPolicySpec の podSelector で一致した Pod に対しては許可されます。例外エントリーは、このルールに含めるべきではない CIDR を記述します。 |
| クラスタースコープのラベルを使用して名前空間を選択します。このフィールドは、標準のラベルセレクターセマンティクスに従います。存在するが空の場合、すべての名前空間が選択されます。 PodSelector も設定されている場合、NetworkPolicyPeer は全体として、NamespaceSelector によって選択された名前空間で PodSelector に一致する Pod を選択します。それ以外の場合は、NamespaceSelector によって選択されたネームスペース内のすべての Pod を選択します。 | |
| Pod を選択するラベルセレクターです。このフィールドは、標準のラベルセレクターセマンティクスに従います。存在するが空の場合、すべての Pod が選択されます。 NamespaceSelector も設定されている場合、NetworkPolicyPeer は全体として、NamespaceSelector によって選択された名前空間で PodSelector に一致する Pod を選択します。それ以外の場合は、ポリシー自体の名前空間で PodSelector に一致する Pod を選択します。 |
13.1.13. .spec.ingress[].from[].ipBlock
- 説明
- IPBlock は、特定の CIDR を記述します (例:"192.168.1.0/24","2001:db8::/64")、NetworkPolicySpec の podSelector で一致した Pod に対しては許可されます。例外エントリーは、このルールに含めるべきではない CIDR を記述します。
- タイプ
-
object
- 必須
-
cidr
-
プロパティー | タイプ | 説明 |
---|---|---|
|
| CIDR は、IP Block Valid の例(192.168.1.0/24 または 2001:db8::/64)を表す文字列です。 |
|
| ただし、IP ブロックの有効な例には含めない CIDR のスライスは、"192.168.1.0/24" または "2001:db8::/64"、CIDR 範囲外の場合に拒否されます。 |
13.1.14. .spec.ingress[].ports
- Description
- このルール用に選択された Pod でアクセス可能にする必要があるポートのリスト。このリストの各項目は、論理 OR を使用して結合されます。このフィールドが空または欠落している場合、このルールはすべてのポートに一致します (トラフィックはポートによって制限されません)。このフィールドが存在し、少なくとも 1 つのアイテムが含まれている場合、このルールは、トラフィックがリスト内の少なくとも 1 つのポートに一致する場合にのみトラフィックを許可します。
- タイプ
-
array
13.1.15. .spec.ingress[].ports[]
- 説明
- NetworkPolicyPort は、トラフィックを許可するポートを記述します
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
|
| 設定されている場合、ポートから endPort までのポートの範囲 (両端を含む) がポリシーで許可される必要があることを示します。ポートフィールドが定義されていない場合、またはポートフィールドが名前付き (文字列) ポートとして定義されている場合、このフィールドは定義できません。endPort は、port 以上である必要があります。 |
| 指定されたプロトコルのポート。これは、Pod の数値ポートまたは名前付きポートのいずれかです。このフィールドが指定されていない場合、これはすべてのポート名と番号に一致します。存在する場合、指定されたプロトコル AND ポートのトラフィックのみが一致します。 | |
|
| トラフィックが一致する必要があるプロトコル (TCP、UDP、または SCTP)。指定しない場合、このフィールドのデフォルトは TCP です。 |
13.1.16. .status
- 説明
- NetworkPolicyStatus は、NetworkPolicy の現在の状態を記述します。
- タイプ
-
object
プロパティー | タイプ | 説明 |
---|---|---|
| 条件は、NetworkPolicy の状態を記述する metav1.Condition の配列を保持します。現在のサービス状態 |