Ambient模式下的关键数据面组件有Ztunnel和Waypoint。Ztunnel组件以Daemonset形式部署,负责处理每个节点上的4层流量;Waypoint组件以独立的Deployment形式部署,负责处理指定Service、Pod的7层流量。本文介绍如何配置Ztunnel和Waypoint组件。
Ztunnel组件资源配置
Ztunnel组件以Daemonset形式由ASM控制面下发到您的数据面集群中。您可以通过kubectl
修改ASMMeshConfig资源来配置Ztunnel资源。以下为ASMMeshConfig示例。
说明
自ASM 1.22版本开始,已经默认开启使用数据面kubeconfig操作ASMMeshConfig资源。若您遇到例如“对应资源不存在”等报错时,请确保ASM实例已开启启用数据面KubeAPI访问功能。
apiVersion: istio.alibabacloud.com/v1beta1
kind: ASMMeshConfig
metadata:
name: default
spec:
......
ambientConfiguration:
enabled: true
redirectMode: ""
waypoint: {}
ztunnel:
# ztunnel优雅下线时间
# 该时间段内,老的ztunnel将正常处理已有连接
terminationGracePeriodSeconds: 30
# ztunnel resources配置
resources:
limits:
cpu: "2"
memory: 1024Mi
requests:
cpu: 200m
memory: 256Mi
......
您可以按照以下步骤进行修改:
获取当前ASMMeshConfig内容,保存至本地。
kubectl get ASMMeshConfig default -o yaml > asmmeshconfig.yaml
本地编辑asmmeshconfig.yaml文件,修改
ztunnel
中的resources
字段。应用配置。
kubectl apply -f asmmeshconfig.yaml
Waypoint组件配置
Waypoint组件使用Gateway API中的Gateway资源配置,以Deployment形式部署在数据面集群中,所以在您的集群中可能存在多个Waypoint实例。您可以灵活地指定某个服务或工作负载的请求要经过某个特定的Waypoint。
Waypoint的全局配置同样保存在ASMMeshconfig中,示例配置如下。
apiVersion: istio.alibabacloud.com/v1beta1
kind: ASMMeshConfig
metadata:
name: default
spec:
......
ambientConfiguration:
enabled: true
redirectMode: ""
waypoint:
proxyResources:
limits:
cpu: "2"
memory: 1024Mi
requests:
cpu: 200m
memory: 256Mi
ztunnel:
resources:
limits:
cpu: "2"
memory: 1024Mi
requests:
cpu: 200m
memory: 256Mi
......
您可以参考和Ztunnel类似的步骤,修改Waypoint的全局配置。
该文章对您有帮助吗?