You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure AKS集群部署Zalenium Helm Chart失败求助

解决Zalenium在AKS(K8s 1.9.6)部署的两个核心问题

从你的Pod日志来看,部署失败主要有两个关键问题:目录权限不足和Kubernetes API Server SSL证书验证失败,下面分别给出针对性的解决方案:

1. 解决/home/seluser/videos目录权限问题

日志里的Permission denied错误是因为Zalenium容器运行的seluser用户没有该目录的写入权限,你可以通过以下方式修复:

方案:添加InitContainer修改目录权限

在Helm Chart的values.yaml中,给Zalenium的hub容器添加一个InitContainer,提前修改目录权限:

hub:
  initContainers:
    - name: fix-permissions
      image: alpine:3.18
      command: ["sh", "-c", "chown -R 1200:1200 /home/seluser/videos"]
      volumeMounts:
        - name: videos
          mountPath: /home/seluser/videos

这个InitContainer会在主容器启动前,把videos目录的所有者改为Zalenium默认使用的seluser(UID/GID通常为1200),确保主容器拥有写入权限。

2. 解决Kubernetes API Server SSL证书验证失败问题

日志中的SSLPeerUnverifiedException是因为AKS的K8s API Server证书的Subject Alternative Name(SAN)只包含了IP地址10.0.0.1,没有包含kubernetes.default.svc域名,导致Zalenium内置的fabric8客户端无法通过主机名验证。针对这个问题,有两个可行方案:

方案1:升级Zalenium版本(推荐)

你当前使用的Zalenium版本搭配的fabric8客户端可能不兼容旧版本AKS的证书配置。尝试升级到较新的Zalenium Helm Chart版本(比如v3.141.59c或更高),新版本通常已经适配了AKS的证书验证逻辑,或者提供了更灵活的配置项来规避这个问题。

方案2:禁用SSL证书验证(临时应急)

如果暂时无法升级Zalenium,可以在部署时添加环境变量,让fabric8客户端跳过SSL主机名验证:
在values.yaml中添加:

hub:
  extraEnv:
    - name: KUBERNETES_SKIP_TLS_VERIFY
      value: "true"
    - name: JAVA_OPTS
      value: "-Dokhttp3.hostnameVerifier=org.apache.http.conn.ssl.NoopHostnameVerifier"

这个配置会强制Zalenium的Kubernetes客户端跳过证书和主机名的验证,虽然能快速解决问题,但会降低安全性,仅建议在测试环境使用。

额外提示

你的AKS集群使用的是K8s 1.9.6,这个版本已经非常老旧(官方早已停止支持),不仅存在安全漏洞,还可能和很多新版本的应用(包括Zalenium)存在兼容性问题。如果条件允许,建议尽快升级AKS集群到官方支持的稳定版本(比如1.24+),从根本上避免这类兼容性问题。

内容的提问来源于stack exchange,提问作者bramvdk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 09:02:35