×

POST /v1/networkpolicies/simulate/{clusterId}

描述 (Description)

参数 (Parameters)

路径参数 (Path Parameters)

名称 (Name) 描述 (Description) 必填 (Required) 默认值 (Default) 模式 (Pattern)

集群ID (clusterId)

是 (X)

空 (null)

主体参数 (Body Parameter)

名称 (Name) 描述 (Description) 必填 (Required) 默认值 (Default) 模式 (Pattern)

修改 (modification)

StorageNetworkPolicyModification

是 (X)

查询参数 (Query Parameters)

名称 (Name) 描述 (Description) 必填 (Required) 默认值 (Default) 模式 (Pattern)

查询 (query)

-

空 (null)

includePorts

如果设置为true,则在网络策略图中包含端口级别信息。

-

空 (null)

includeNodeDiff

-

空 (null)

scope.query

-

空 (null)

返回类型 (Return Type)

内容类型 (Content Type)

  • application/json

响应 (Responses)

表1. HTTP响应码 (Table 1. HTTP Response Codes)
代码 (Code) 消息 (Message) 数据类型 (Datatype)

200

成功的响应。(A successful response.)

V1SimulateNetworkGraphResponse

0

意外的错误响应。(An unexpected error response.)

GooglerpcStatus

示例 (Samples)

常用对象引用 (Common object reference)

DeploymentListenPort

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

端口 (port)

长整型 (Long)

int64

L4协议 (l4protocol)

StorageL4Protocol

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

GooglerpcStatus

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

代码 (code)

整型 (Integer)

int32

消息 (message)

字符串 (String)

详情 (details)

ProtobufAny 列表

NetworkEntityInfoExternalSource

更新central/networkgraph/aggregator/aggregator.go中的normalizeDupNameExtSrcs(...),每当此消息更新时。(Update normalizeDupNameExtSrcs(…​) in central/networkgraph/aggregator/aggregator.go whenever this message is updated.)

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

名称

字符串 (String)

CIDR

字符串 (String)

默认值

布尔值

default 指示外部来源是用户生成的还是系统生成的。

已发现

布尔值

discovered 指示外部来源是否是从监控流量中收集的。

ProtobufAny

Any 包含任意序列化的协议缓冲区消息以及描述序列化消息类型的 URL。

Protobuf 库提供支持,可以使用实用程序函数或 Any 类型的附加生成方法来打包/解包 Any 值。

示例 1:在 C++ 中打包和解包消息。

Foo foo = ...;
Any any;
any.PackFrom(foo);
...
if (any.UnpackTo(&foo)) {
  ...
}

示例 2:在 Java 中打包和解包消息。

Foo foo = ...;
Any any = Any.pack(foo);
...
if (any.is(Foo.class)) {
  foo = any.unpack(Foo.class);
}
// or ...
if (any.isSameTypeAs(Foo.getDefaultInstance())) {
  foo = any.unpack(Foo.getDefaultInstance());
}
Example 3: Pack and unpack a message in Python.
foo = Foo(...)
any = Any()
any.Pack(foo)
...
if any.Is(Foo.DESCRIPTOR):
  any.Unpack(foo)
  ...
Example 4: Pack and unpack a message in Go
foo := &pb.Foo{...}
any, err := anypb.New(foo)
if err != nil {
  ...
}
...
foo := &pb.Foo{}
if err := any.UnmarshalTo(foo); err != nil {
  ...
}

Protobuf 库提供的打包方法默认使用 'type.googleapis.com/full.type.name' 作为类型 URL,而解包方法仅使用类型 URL 中最后一个 '/' 后面的完全限定类型名称,例如 "foo.bar.com/x/y.z" 将产生类型名称 "y.z"。

JSON 表示

Any 值的 JSON 表示使用反序列化的嵌入式消息的常规表示,并添加一个包含类型 URL 的附加字段 @type。示例

package google.profile;
message Person {
  string first_name = 1;
  string last_name = 2;
}
{
  "@type": "type.googleapis.com/google.profile.Person",
  "firstName": <string>,
  "lastName": <string>
}

如果嵌入式消息类型是众所周知的并且具有自定义 JSON 表示,则该表示将被嵌入,并添加一个字段 value,该字段除了 @type 字段外还包含自定义 JSON。示例(对于消息 [google.protobuf.Duration][])

{
  "@type": "type.googleapis.com/google.protobuf.Duration",
  "value": "1.212s"
}
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

@type

字符串 (String)

唯一标识序列化协议缓冲区消息类型的 URL/资源名称。此字符串必须包含至少一个“/”字符。URL 路径的最后一部分必须表示类型的完全限定名称(如 path/google.protobuf.Duration)。名称应采用规范形式(例如,不允许使用前导“.”)。实际上,团队通常会将他们期望在 Any 上下文中使用的所有类型预编译到二进制文件中。但是,对于使用方案httphttps 或无方案的 URL,可以选择设置一个类型服务器,该服务器将类型 URL 映射到消息定义,如下所示:* 如果没有提供方案,则假定为 https。* 对 URL 的 HTTP GET 必须产生二进制格式的 [google.protobuf.Type][] 值,或产生错误。* 应用程序允许基于 URL 缓存查找结果,或将其预编译到二进制文件中以避免任何查找。因此,需要在类型更改时保留二进制兼容性。(使用版本化的类型名称来管理重大更改。)注意:此功能目前在官方 protobuf 版本中不可用,并且不用于以 type.googleapis.com 开头的类型 URL。截至 2023 年 5 月,没有广泛使用的类型服务器实现,也没有计划实现一个。可以使用具有特定于实现的语义的httphttps(或空方案)以外的方案。

StorageIPBlock

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

CIDR

字符串 (String)

例外

string 列表

StorageL4Protocol

枚举值

L4_PROTOCOL_UNKNOWN

L4_PROTOCOL_TCP

L4_PROTOCOL_UDP

L4_PROTOCOL_ICMP

L4_PROTOCOL_RAW

L4_PROTOCOL_SCTP

L4_PROTOCOL_ANY

StorageLabelSelector

Label selector components are joined with logical AND, see     http://kubernetes.ac.cn/docs/concepts/overview/working-with-objects/labels/

下一个可用标签:3

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

匹配标签

string 的映射

这实际上是一个oneof,但由于向后兼容性限制,我们无法将其设为oneof。

要求

StorageLabelSelectorRequirement 列表

StorageLabelSelectorOperator

枚举值

UNKNOWN

IN

NOT_IN

EXISTS

NOT_EXISTS

StorageLabelSelectorRequirement

Next available tag: 4
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

字符串 (String)

操作符

StorageLabelSelectorOperator

UNKNOWN、IN、NOT_IN、EXISTS、NOT_EXISTS、

string 列表

StorageNetworkEntityInfo

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

类型

StorageNetworkEntityInfoType

UNKNOWN_TYPE、DEPLOYMENT、INTERNET、LISTEN_ENDPOINT、EXTERNAL_SOURCE、INTERNAL_ENTITIES、

ID

字符串 (String)

部署

StorageNetworkEntityInfoDeployment

外部来源

NetworkEntityInfoExternalSource

StorageNetworkEntityInfoDeployment

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

名称

字符串 (String)

命名空间

字符串 (String)

集群

字符串 (String)

监听端口

DeploymentListenPort 列表

StorageNetworkEntityInfoType

  • INTERNAL_ENTITIES:INTERNAL_ENTITIES 用于将所有内部实体分组到单个网络图节点下

枚举值

UNKNOWN_TYPE

DEPLOYMENT

INTERNET

LISTEN_ENDPOINT

EXTERNAL_SOURCE

INTERNAL_ENTITIES

StorageNetworkPolicy

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

ID

字符串 (String)

名称

字符串 (String)

集群ID (clusterId)

字符串 (String)

集群名称

字符串 (String)

命名空间

字符串 (String)

标签

string 的映射

注释

string 的映射

规范

StorageNetworkPolicySpec

YAML

字符串 (String)

API版本

字符串 (String)

创建时间

日期

日期时间

StorageNetworkPolicyEgressRule

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

端口

StorageNetworkPolicyPort 列表

目标

StorageNetworkPolicyPeer 列表

StorageNetworkPolicyIngressRule

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

端口

StorageNetworkPolicyPort 列表

来源

StorageNetworkPolicyPeer 列表

StorageNetworkPolicyModification

Next available tag: 3
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

应用YAML

字符串 (String)

要删除的

StorageNetworkPolicyReference 列表

StorageNetworkPolicyPeer

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

Pod选择器

StorageLabelSelector

命名空间选择器

StorageLabelSelector

IP块

StorageIPBlock

StorageNetworkPolicyPort

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

协议

StorageProtocol

UNSET_PROTOCOL、TCP_PROTOCOL、UDP_PROTOCOL、SCTP_PROTOCOL、

端口 (port)

整型 (Integer)

int32

端口名称

字符串 (String)

StorageNetworkPolicyReference

Next available tag: 3
字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

命名空间

字符串 (String)

名称

字符串 (String)

StorageNetworkPolicySpec

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

Pod选择器

StorageLabelSelector

入口

StorageNetworkPolicyIngressRule 列表

出口

StorageNetworkPolicyEgressRule 列表

策略类型

StorageNetworkPolicyType 列表

StorageNetworkPolicyType

枚举值

UNSET_NETWORK_POLICY_TYPE

INGRESS_NETWORK_POLICY_TYPE

出站网络策略类型

StorageProtocol

枚举值

未设置协议

TCP协议

UDP协议

SCTP协议

V1NetworkEdgeProperties

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

端口 (port)

长整型 (Long)

int64

协议

StorageL4Protocol

L4_PROTOCOL_UNKNOWN, L4_PROTOCOL_TCP, L4_PROTOCOL_UDP, L4_PROTOCOL_ICMP, L4_PROTOCOL_RAW, L4_PROTOCOL_SCTP, L4_PROTOCOL_ANY,

上次活跃时间戳

日期

日期时间

V1NetworkEdgePropertiesBundle

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

属性

V1NetworkEdgeProperties 列表

V1NetworkGraph

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

纪元

长整型 (Long)

int64

节点

V1NetworkNode 列表

V1NetworkGraphDiff

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

已弃用NodeDiffs

V1NetworkNodeDiff 映射

nodeDiffs

V1NetworkNodeDiff 映射

V1NetworkNode

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

实体

StorageNetworkEntityInfo

互联网访问

布尔值

策略ID

string 列表

非隔离入口

布尔值

非隔离出口

布尔值

查询匹配

布尔值

出边

V1NetworkEdgePropertiesBundle 映射

V1NetworkNodeDiff

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

策略ID

string 列表

已弃用OutEdges

V1NetworkEdgePropertiesBundle 映射

出边

V1NetworkEdgePropertiesBundle 映射

非隔离入口

布尔值

非隔离出口

布尔值

V1NetworkPolicyInSimulation

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

策略

StorageNetworkPolicy

状态

V1NetworkPolicyInSimulationStatus

无效、不变、已修改、已添加、已删除

旧策略

StorageNetworkPolicy

V1NetworkPolicyInSimulationStatus

枚举值

无效

不变

已修改

已添加

已删除

V1SimulateNetworkGraphResponse

字段名称 (Field Name) 必填 (Required) 可为空 (Nullable) 类型 (Type) 描述 (Description) 格式 (Format)

模拟图

V1NetworkGraph

策略

V1NetworkPolicyInSimulation 列表

已添加

V1NetworkGraphDiff

已移除

V1NetworkGraphDiff