在 创建应用服务 的过程中,您可以在配置 Pod 模板时进行以下高级配置。
环境变量
通过键值对的形式为 Pod 配置环境变量,从而给 Pod 添加环境标志或传递配置等,在容器启动时传入应用进程,例如:USER=tester
。具体参见 Pod variable。
参数说明如下:
来源:
手动输入:自行指定环境变量的名称和值。
配置项:选择已配置的 ConfigMap 来指定环境变量的值。
保密字典:选择已配置的 Secret 来指定环境变量的值。
变量名:环境变量的名称。
变量值/变量引用:
选择 手动输入 时,为环境变量的值。
选择 配置项 或 保密字典 时,为 ConfigMap 和 Secret 的引用。
数据卷配置
配置容器使用的数据卷,目前仅支持挂载在当前容器所在宿主机的目录。
参数说明如下:
类型:支持 本地存储、配置项、保密字典。更多信息参见 volumes。
权限:支持 读写 或 只读。
容器目录:容器中的数据卷路径。
主机目录/配置项引用:
选择 本地存储 时,为 Pod 所在宿主机的目录。
选择 配置项 或 保密字典 时,为对应的引用。
健康检查配置
健康检查是指容器运行过程中,基于用户配置的健康检查,定时检查容器健康状况。若不配置健康检查,如果出现业务异常,容器将无法感知,也不会自动重启去恢复业务,进而可能影响业务的正常运作。
目前 AKS 提供两种检查机制:Readiness Probe 和 Liveness Probe。
Readiness Probe 用来判断容器是否准备好接收流量。如果检查失败,集群会屏蔽请求访问该容器;若检查成功,则会开放对该容器的访问。
Liveness Probe 用来检测容器是否正常,如果检查失败,集群会对该容器执行重启操作。
Readiness Probe、Liveness Probe 是 kubernetes 原生概念。更多详情请参见 Kubernetes Probes。
配置 Readiness Probe
参数说明如下:
检查方式:
TCP Socket 端口:通过发送 TCP 请求来进行判断,若能成功建立连接,则检查通过。
访问端口:TCP 访问的容器端口。
HTTP Get 方法:通过发送 HTTP Get 方法的请求来进行判断,若返回的状态码大于等于 200 且小于 400,则检查通过。
访问路径:HTTP 请求的访问路径。
访问端口:HTTP 请求的访问容器端口。范围 1-65535。
在容器中执行命令:通过在容器中执行命令来进行判断,若命令成功执行,并返回 0,则检查通过。
执行命令:指定在容器中执行的命令。
首次检查延时:即 initialDelaySeconds,容器启动后第一次执行探测时需要等待多少秒,默认为 5 秒。
检查超时:即 timeoutSeconds,探测超时时间。默认 1 秒,最小 1 秒。
检查间隔:即 periodSeconds,指执行探测的时间间隔,默认为 10 秒,最小为 1 秒。
健康阈值:探测失败后,最少连续探测成功多少次才被认定为成功。默认是 1,最小值是 1。
不健康阈值:探测成功后,最少连续探测失败多少次才被认定为失败。默认是 3,最小值是 1。
配置 Liveness Probe
参数说明如下:
检查方式:
TCP Socket 端口:通过发送 TCP 请求来进行判断,若能成功建立连接,则检查通过。
访问端口:TCP 访问的容器端口。
HTTP Get 方法:通过发送 HTTP Get 方法的请求来进行判断,若返回的状态码大于等于 200 且小于 400,则检查通过。
访问路径:HTTP 请求的访问路径。
访问端口:HTTP 请求的访问容器端口。范围 1-65535。
在容器中执行命令:通过在容器中执行命令来进行判断,若命令成功执行,并返回 0,则检查通过。
执行命令:指定在容器中执行的命令。
首次检查延时:即 initialDelaySeconds,容器启动后第一次执行探测时需要等待多少秒,默认为 5 秒。
检查超时:即 timeoutSeconds,探测超时时间。默认 1 秒,最小 1 秒。
检查间隔:即 periodSeconds,指执行探测的时间间隔,默认为 10 秒,最小为 1 秒。
健康阈值:探测失败后,最少连续探测成功多少次才被认定为成功。默认是 1,最小值是 1。
不健康阈值:探测成功后,最少连续探测失败多少次才被认定为失败。默认是 3,最小值是 1。
生命周期事件回调配置
为容器添加生命周期事件回调,分别在容器启动后和容器停止前执行。
目前提供的生命周期回调函数为:Post Start (容器启动后触发)和 Pre Stop(容器停止前触发)。
参数说明如下:
配置 Post Start:
回调方式:支持 在容器中执行命令 (需输入执行命令,如
cat tmp/healthy
) 及 HTTP GET 方法(需输入执行路径,如/healthy/readiness
,以及输入访问端口,范围 1-65535)。配置 Pre Stop:
回调方式:支持 在容器中执行命令 (需输入执行命令,如
cat tmp/healthy
) 及 HTTP GET 方法(需输入执行路径,如/healthy/liveness
,以及输入访问端口,范围 1-65535)。
日志服务配置
配置阿里云日志服务(SLS),可选择已有日志库或创建新的日志库。
参数说明如下:
日志库: 从已有的日志库中选择。如果没有可用日志库,可单击 创建日志库 来创建新的日志库。
日志类型: 容器文本日志。
路径:收集容器内指定路径的日志。例如:
/home/admin/*.log
或/root/*.log
。
业务实时监控
添加监控目录,可以在应用服务详情页查看容器的监控数据。目录内容将被监控应用读取。
参数说明如下:
监控目录:指定应用需采集的业务监控日志的输出目录。