当您的应用程序需要统一的公网或内网出口时,可以在Kubernetes集群中部署ASM出口网关(Egress Gateway)。出口网关作为统一的访问出口,可以简化集群对外部服务流量的管理和路由。
前提条件
操作步骤
登录ASM控制台,在左侧导航栏,选择 。
在网格管理页面,单击目标实例名称,然后在左侧导航栏,选择 。
在出口网关页面,单击创建,配置网关的基本信息。
网关配置项说明如下。您也可以在出口网关页面,单击使用YAML创建定义出口网关。具体操作,请参见使用KubeAPI管理出口网关。
配置项
说明
名称
自定义网关的名称。
部署集群
选择网关部署的集群。
端口映射
配置协议和服务端口。
说明控制台默认提供2个常用的端口。您可以按需进行修改。
资源规格
选择网关Pod的CPU和内存规格。
网关副本数
设置网关副本数。
可选:单击高级选项,进行相关配置。
配置项
说明
扩缩容HPA
选择是否启用扩缩容HPA功能。选中扩缩容HPA后,相关配置项说明如下:
指标:设置监控项和阈值。超过该阈值,将增加网关副本数;低于该阈值,将减少网关副本数。
同时设置CPU和内存的阈值,表示只要其中一个高于或低于该阈值,都会进行扩缩容。
最大副本数:网关可扩容的副本数量上限。
最小副本数:网关可缩容的副本数量下限。
说明该功能仅适用于企业版或旗舰版。
滚动升级
选择是否启用滚动升级功能。选中滚动升级后,相关配置项说明如下:
不可用最大的副本数量:设置滚动升级时不可用的最大副本数量,保障升级时有一定数量的Pod可以提供服务。
超过期望的副本数量:设置滚动升级时最多不能超过的副本数量。例如设置为25%,表示滚动升级时副本数量不能超过原来副本的125%。
尽量分散部署网关副本
设置
podAntiAffinity
时,Pod优先部署到不同的节点上。自定义部署策略
您可以自定义网关的
nodeSelector
、tolerations
和affinity
。关于字段的详细说明,请参见ASM网关CRD说明。支持双向TLS认证
选中支持双向TLS认证后,业务(Sidecar)和出口网关之间的流量会使用双向TLS方式,增强了安全性。您可以基于双向TLS认证后的身份信息,结合AuthorizationPolicy进行出口流量访问策略配置。
重要未注入Sidecar的Pod将不能通过出口网关访问外部服务。
配置完成后,单击创建。
网关状态为运行中,表示创建成功。服务地址即为出口网关的IP地址。
相关操作
出口网关创建成功后,您可以登录ASM控制台管理出口网关,也可以登录ACK控制台查看出口网关。
登录ASM控制台管理出口网关
出口网关创建成功后,您可以登录ASM控制台,查看、编辑或删除出口网关。
登录ASM控制台,在左侧导航栏,选择 。
在网格管理页面,单击目标实例名称,然后在左侧导航栏,选择 。
在出口网关页面,对出口网关进行管理。
操作
说明
查看或编辑出口网关
方式一:
在目标网关右侧,单击查看详情。
在网关详情页面,单击修改项右侧的图标,按需修改相关配置项,然后单击确认。
方式二:
在目标网关右侧,单击查看YAML。
在编辑对话框,按需修改相关YAML配置,然后单击确定。
删除出口网关
在目标网关右侧,单击删除,然后在确认对话框,单击确定。
重要出口网关删除后,ASM内部服务将无法通过该出口网关访问外部服务,请谨慎操作。
登录ACK控制台查看出口网关
查看出口网关的基本信息。
登录容器服务管理控制台,在左侧导航栏单击集群。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择
。在服务页面,从命名空间下拉列表中选择istio-system。
可以看到出口网关的基本信息,您也可以单击出口网关服务名称,查看更详细的信息。
查看出口网关的Pod信息。
在集群管理页左侧导航栏,选择
。在容器组页面,从命名空间下拉列表中选择istio-system。
单击目标Pod,查看出口网关的Pod详细信息。
相关文档
如果您需要通过API创建出口网关,请参见CreateASMGateway - 创建ASM网关。
您可以使用出口网关作为外部服务的统一出口,在网关上使用ASM提供的可观测以及安全相关的能力,更加高效地管理出口流量。具体操作,请参见为网格内流量配置统一的出口网关、可观测性能力和安全支持及证书动态加载。
您可以使用ASMEgressTrafficPolicy CRD,自定义如何通过出口网关来管理和访问外部流量。具体操作,请参见使用ASMEgressTrafficPolicy管理出口流量。
关于网关的更多功能介绍,请参见ASM网关概述。