# 创建 Egress 网关策略 Egress 网关策略用于定义哪些 Pod 的出口流量要经过 EgressGateway 节点转发,以及定义其它的配置细节。 当匹配的 Pod 访问任意集群外部的地址(任意非 Node IP、CNI Pod CIDR、ClusterIP 的地址)时,都会被 EgressGateway Node 转发。 当前 Egress 网关策略分为两类:命名空间级别策略、集群级别策略。 - __命名空间级别__ :创建的策略生效范围为命名空间级别 - __集群级别__ : 创建的策略生效范围为集群级别 ## 创建命名空间 Egress 网关策略 1. 点击 __网关策略__ -> __创建命名空间策略__ ,并填入如下参数: ![egresspolicy-create-1](../../images/egresspolicy-create-1.jpg) **基本信息** : * __策略名称__ :输入待创建的策略名称。 * __描述__ :定义待创建策略描述。 * __命名空间__ :创建的策略生效的命名空间,此示例中选择的为 __default__ 。 * __网关选择__ :指定使用哪一个已经创建好的[Egress 网关实例](../egressgateway/create_eg.md)。 **出口地址** : * __出口 IP 地址__ :可使用独立的 VIP 作为出口 IP。因为 EgressGateway 基于 ARP 生效 VIP ,适用于传统网络, 源 IP 是永久固定的。在不做设置时,则默认使用缺省 VIP, IP 值必须在 EgressGateway 中的 IP 池范围内。可通过如下两种方式选择 IP: * __指定出口 IP 地址__ :从[选择网关](./create_eg.md)对应的出口 IP 范围中,指定某一个 IP 地址作为 出口 IP 。 * __指定分配策略__ :可使用选择网关的默认出口 IP 或者通过轮询方式选择 IP 池中地址作为出口 IP 。 * __节点 IP 地址__ :使用节点 IP 地址作为出口 IP。适用于公有云和传统网络等环境,缺点是随着网关节点的故障,出口源 IP 可能会发生变化。对应字段信息为 `spec.egressIP.useNodeIP=true` **源地址容器组** : __选择容器组__ :支持通过 __标签选择器__ 或者 __源地址__ 方式选择源地址容器组,指定本策略生效的容器范围, 当匹配的 Pod 访问任意集群外部的地址(任意不是 Node IP、CNI Pod CIDR、ClusterIP 的地址)时,都会被 EgressGateway Node 转发。 - __标签选择器__ :通过标签指定源地址容器组。 - __源地址__ :通过添加源地址 CIDR 地址段方式,添加白名单,锁定的容器组将生效本策略。 **高级设置** : __目标地址__ :可指定访问目标地址白名单,指定后此策略将对定义的目标地址生效,支持 单个 IP 地址,IP 段,CIDR 等方式输入。默认不定义,对所有目标地址生效。 2. 输入完成后点击 **确定** 完成创建。 ## 创建集群 Egress 网关策略 1. 点击 __网关策略__ -> __创建集群策略__ ,基本信息、出口地址、容器组选择等参数请参考[创建命名空间 Egress 网关策略](#egress_1)。 **高级设置** : * __命名空间选择器__ :通过 Label 方式选择命名空间,策略生效范围为所选择命名空间。 * __目标地址__ :同创建命名空间 Egress 网关策略 规则一致。 2. 输入完成后点击 **确定** 完成创建。 ## 通过 YAML 创建 Egress 网关策略 1. 创建网关策略 YAML ```shell cat <