ASM网关可以为网格内应用提供统一的流量入口和出口,实现端到端安全加密和流量控制。本文介绍ASM入口网关和出口网关的相关功能。

入口网关

入口网关服务为Kubernetes集群提供了七层网关功能,根据HTTP请求的内容将来自同一个TCP端口的请求分发到不同的Kubernetes服务。ASM提供了网关的全生命周期管理,支持多种协议,具有强大的流量管理、安全以及可观测能力。

功能描述相关文档
生命周期管理ASM提供入口网关服务,为网格内应用提供统一的流量入口。您可以通过ASM控制台管理入口网关服务。创建入口网关服务
多协议支持ASM网关提供了图形化创建目标规则和虚拟服务的功能,无需您编写YAML文件,简化流量管理操作。使用ASM网关的流量路由功能
ASM的流量管理功能可以实现应用的流量迁移。您可以通过入口网关,在TCP服务的两个版本之间进行流量灰度切换。通过ASM实现TCP应用流量迁移
ASM支持HTTPS协议和动态加载证书功能,保障流量的安全。通过ASM网关启用HTTPS安全服务
ASM支持通过入口网关访问内部gRPC服务,并在gRPC的两个版本之间进行流量切换。通过入口网关访问网格内gRPC服务
ASM入口网关支持协议转码的能力,使用户及其客户端可以使用HTTP/JSON访问服务网格内的gRPC服务。通过ASM入口网关实现HTTP请求网格内gRPC服务
ASM支持通过入口网关访问网格内WebSocket服务。通过入口网关访问网格内WebSocket服务
常用流量管理ASM支持通过编写VirtualService和DestinationRule等资源,实现微服务的无侵入的流量治理能力,包括流量路由、限流、熔断、镜像流量等功能。使用ASM接口级熔断功能
在大促等场景下,瞬间洪峰流量会使系统超出最大负载,调用大量堆积,导致整个调用链路卡死。ASM提供了本地限流功能,支持对网关和服务进行流量限制,达到保护系统的目的。使用ASM本地限流功能
ASM支持使用Gateway API对集群内应用访问的路由规则进行条件限制。使用Gateway API定义路由规则
ASM支持在管理的集群中使用Ingress资源,并指定特定的ASM网关作为Ingress Controller。使用ASM网关作为Ingress Controller暴露集群内的服务
流量镜像功能可以将生产的流量镜像拷贝到测试集群或者新的测试版本中,在不影响实际生产环境的情况下,测试具有实际生产流量的服务,帮助您减低版本变更的风险。基于网格层跨集群使用流量镜像
安全支持及证书动态加载ASM支持HTTPS协议和动态加载证书功能,保障流量的安全。通过ASM网关启用HTTPS安全服务
通过ASM网关启用TLS透传,可以实现对集群内HTTPS服务的安全入口访问。通过ASM网关启用TLS透传
在ASM网关配置TLS协议版本,增强网关的安全性。在ASM网关配置TLS协议版本增强安全性
ASM通过ASM网关配置基于mTLS的gRPC服务,保障数据的安全。通过ASM网关配置基于mTLS的gRPC服务
ASM支持以图形化的方式为域名添加证书,便于您使用HTTPS等协议访问域名,提升服务网关的安全性。为域名添加证书
ASM网关支持对接WAF,并且可以通过自定义访问日志格式来查看WAF对回源请求添加的Header,更方便线上运维。使用ASM网关对接WAF
ASM网关支持HTTPS安全支持和证书动态加载功能,以此提高ASM网关的安全性。您可以在ASM网关的SLB侧绑定证书,创建HTTPS类型的监听。HTTPS请求将在SLB侧解密,然后以HTTP请求的形式发送给后端的网关Pod。在ASM网关的SLB侧创建HTTPS监听
ASM支持使用cert-manager颁发ASM网关的证书。基于HTTPS协议,通过ASM网关访问服务,保证数据传输的安全。使用cert-manager管理网关的证书
授权管理ASM网关支持从源地址、HTTP域名和端口三个维度配置黑白名单,保障网格内应用的安全。在ASM网关中配置黑白名单
ASM提供自定义授权服务。在ASM网关上加入鉴权流程,以确保只有得到授权的情况下,才能访问关键服务。在ASM网关上使用自定义授权服务
OIDC(OpenID Connect)是一种身份认证与授权的协议,通常用于实现单点登录(SSO)。您可以在ASM网关上配置基于OIDC协议的单点登录。在ASM网关中配置OIDC单点登录
JWT(JSON Web Token)是一种常用的身份认证和鉴权机制。JWT中会携带一些用户信息和一个存储加密后信息的字段。将加密后的信息字段进行解密,与原始用户信息字段进行比较,可以验证该用户的信息是否有效,从而完成身份认证。您可以在ASM网关中配置JWT认证。在ASM网关中配置JWT认证
ASM支持“无侵入”的接入自定义授权服务,以实现网格内应用的单点登录,降低应用的改造、运维等成本。ASM集成阿里云IDaaS实现网格内应用单点登录
使用自建的Keycloak作为IdP来提供身份服务,可以实现网格内应用的单点登录。ASM中集成Keycloak实现网格内应用单点登录
服务网格中配置JWT(JSON Web Token)请求授权,可以实现来源认证,又称为最终用户认证。在接收用户请求时,该配置用于认证请求头信息中的Access Token是否可信,并授权给来源合法的请求。在ASM中对入口网关进行JWT请求鉴权
当一个客户端去访问另一个不同域名或者同域名不同端口的服务时,就会发出跨域请求。如果此时该服务不允许其进行跨域资源访问,那么就会因为跨域问题而导致访问失败。ASM支持在Virtualservice中配置corsPolicy,实现跨域访问。在ASM中实现跨域访问
定制化功能ASM支持多个入口网关使用同一个网关配置规则,简化您的配置操作。为多个入口网关配置统一的网关规则
您可以为ASM网关绑定多个SLB,实现多个SLB可以访问一个ASM网关。使用多个SLB访问ASM网关
ASM支持自定义资源定义CRD和相应的Controller。通过监听该CRD资源变化事件,对应的Controller可以在相应的Kubernetes集群中同步对应的Service、Deployment以及相关联的ServiceAccount等。您可以通过KubeAPI对CRD进行管理。使用KubeAPI管理入口网关
您可以在HTTP请求头中获取客户端真实IP,通过使用授权策略设置访问入口网关的IP黑名单和白名单,提高网关的安全性。在HTTP请求头中获取客户端真实IP
ASM支持创建IPv6地址的ASM网关,提高网关安全性。创建IPv6网关
当数据面Kubernetes集群中的Pod无法访问入口网关的SLB地址时,您可以在Kubernetes集群内通过ClusterIP或者服务名等方法访问SLB地址。如何解决Kubernetes集群中的Pod无法访问入口网关的SLB地址的问题?

出口网关

ASM提供出口网关服务,为网格内应用提供统一的流量出口。您可以通过控制台或KubeAPI的方式管理出口网关。

功能描述相关文档
生命周期管理

ASM提供出口网关服务,为网格内应用提供统一的流量出口。您可以通过ASM控制台管理出口网关服务。

创建出口网关服务
定制化功能ASM支持使用KubeAPI管理出口网关。使用KubeAPI管理出口网关
ASM网关不仅可以作为Ingress网关,还可以作为Egress出口网关,为网格内应用提供统一的出口,帮助您更便捷地使用网格提供的可观测及安全能力,提升运维效率。为网格内流量配置统一的出口网关

网关规则

网关规则定义了在网格出入口操作的负载均衡器,用于接收传入或传出的HTTP/TCP连接。

功能描述相关文档
生命周期管理您可以在ASM控制台对网关规则进行创建、修改和删除操作。管理网关规则

网关高级特性

ASM支持配置高可用的ASM网关,提供SLB优雅下线、可观测性等功能,降低流量的损耗,减少您的运维成本。

功能描述相关文档
高可用性配置配置高性能和高可用的ASM网关,可以保障业务的连续性。配置高性能和高可用的ASM网关
ASM网关作为业务的流量入口,为了避免服务不可用,您可以通过配置Pod反亲和性策略等方法提高网关高可用性。增强ASM网关高可用性
ASM网关在缩容或滚动重启时,会删除网关Pod而导致少量流量损失。启用SLB连接优雅下线功能后,即使删除网关Pod,现有连接在一定时间内仍能正常传输,避免流量损失。使用SLB优雅下线功能避免流量损失
ASM网关支持同时部署在多个集群,以提高服务可用性。您可以将服务部署在多个集群,然后为多集群配置统一的入口网关,即可代理多个集群对应的入口流量。为多个集群配置统一的入口网关
可观测性能力容器服务ACK集成了日志服务功能,您可在创建集群时启用日志服务,采集服务网格数据平面集群入口网关的访问日志。使用日志服务采集数据平面入口网关日志
您可以对ASM网关的日志格式进行定制,使ASM日志包含特定的Header。自定义ASM网关日志格式
请求Payload处理在应用程序中添加HTTP响应头,可以提高Web应用程序的安全性。在ASM中通过EnvoyFilter添加HTTP响应头
启用ASM网关的压缩能力,将对HTTP请求的Response进行压缩,可以提高响应速度,降低流量消耗。为ASM网关启用压缩

与现有系统整合

ASM支持将您自建的Istio IngressGateway或Nginx Ingress迁移至ASM网关,进行统一的管理,降低您的维护成本,提高运维效率。

功能描述相关文档
迁移自建网关ASM支持自建Istio IngressGateway迁移至ASM网关。自建Istio IngressGateway如何迁移至ASM网关
ASM支持Nginx Ingress迁移至ASM网关。Nginx Ingress如何迁移至ASM网关