服务网格ASM提供了一个全托管式的服务网格平台,兼容于社区Istio开源服务。安装Istio或使用ASM时,存在一些默认的功能及参数值。本文以ASM与Istio进行对比,介绍ASM的默认功能选项和参数说明。
背景信息
社区Istio安装命令示例如下,profile=demo
表示采用名为demo的配置文件。您可以在Istio对应Release版本的manifests/profiles目录下,找到对应profile的文件,例如demo.yaml。
./istioctl install --set profile=demo -y
各组件的参数和默认值说明
本文以Istio 1.17版本为例进行说明。
proxy
参数 | Istio默认值 | ASM默认值 | 说明 |
clusterDomain | cluster.local | 创建时指定 | 集群的本地域名。ASM实例与数据面Kubernetes集群的本地域名必须一致。 |
enableCoreDump | false | 和社区版本相同 | 为注入的Sidecar开启Core Dump选项,可用于调试Sidecar。 |
excludeInboundPorts | "" | 和社区版本相同 | 设置端口使入口流量免于经过Sidecar代理。 |
includeInboundPorts | "*" | 和社区版本相同 | 设置端口使入口流量经过Sidecar代理。 |
includeIPRanges | "*" | 和社区版本相同 | 拦截对外访问的地址范围。 |
excludeIPRanges | "" | 和社区版本相同 | 不拦截对外访问的地址范围。 |
includeOutboundPorts | "" | 和社区版本相同 | 设置端口使出口流量经过Sidecar代理。 |
excludeOutboundPorts | "" | 和社区版本相同 | 设置端口使出口流量免于经过Sidecar代理。 |
logLevel | warning | 和社区版本相同 | Sidecar代理的Log级别设定。 |
readinessFailureThreshold | 30 | 和社区版本相同 | 在判定Sidecar代理未就绪之前连续失败的探测数。 |
readinessInitialDelaySeconds | 1 | 和社区版本相同 | Sidecar代理的就绪性探测在首次探测开启之前的等待时间(秒数)。 |
readinessPeriodSeconds | 2 | 和社区版本相同 | Sidecar代理两次就绪性探测之间的时间间隔(秒数)。 |
resources |
| 和社区版本相同 | Sidecar代理容器的默认资源设置。 |
holdApplicationUntilProxyStarts | false | true | 在Pod启动时,是否在业务容器启动之前保证Sidecar代理容器已经启动。 |
concurrency | 2 | 和社区版本相同 | Envoy启动的工作线程数量。 |
interceptionMode | REDIRECT | 和社区版本相同 | Sidecar代理拦截流量时使用的拦截模式。 |
tracing |
| 无,ASM默认不开启链路追踪。 | 链路追踪配置。 |
proxyMetadata | {} |
| 为Sidecar代理容器额外添加的环境变量。 |
terminationDrainDuration | 5s | 和社区版本相同 | Sidecar代理在终止时的等待时长。 |
proxyStatsMatcher | 无 |
| 自定义需要上报的Envoy指标。 |
初始化容器资源 |
|
| Sidecar代理初始化容器使用的资源设定。 |
OutboundTrafficPolicy | ALLOW_ANY | 和社区版本相同 | Sidecar代理对外部服务的访问策略。 |
pilot (控制面)
参数 | Istio默认值 | ASM默认值 | 说明 |
jwtPolicy | third-party-jwt | 和社区版本相同 | 配置JWT验证策略。支持以下两种取值:
|
meshConfig
参数 | 子项 | Istio默认值 | ASM默认值 | 说明 |
proxyMetadata | ISTIO_META_DNS_CAPTURE | true | false | 是否开启DNS代理。 |
BOOTSTRAP_XDS_AGENT | true | false | 是否开启Bootstrap启动配置动态生成。 | |
accessLogFile | /dev/stdout | 和社区版本相同 | accessLog日志输出文件。 | |
enablePrometheusMerge | true | false | 如果启用,Istio Agent将合并应用程序公开的指标与Envoy和Istio Agent的指标。 | |
extensionProviders | 需要根据安装的Addon进行配置。 | 您可以在ASM控制台进行配置,定义日志服务、链路追踪和指标监控的服务提供者。 | 无 |
telemetry
参数 | 子项 | Istio默认值 | ASM默认值 | 说明 |
prometheus | wasmEnabled | false | 和社区版本相同 | 表示是否为统计过滤器启用WebAssembly运行时。 |
metadataExchange | wasmEnabled | false | 和社区版本相同 | 表示是否为元数据交换过滤器启用WebAssembly运行时。 |