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

AKS 1.20.7下Elasticsearch 7.12.0挂载云PEM证书报RSA验证错误

根因

核心问题为CSI驱动从KeyVault拉取并挂载的PEM证书内容/格式被修改,不符合OpenSSL解析要求,从你提供的两个场景的openssl返回结果可以看出,CSI挂载的证书和内置证书的序列化内容存在明显差异,最终触发RSA签名校验失败,具体常见诱因如下:

  • 未在SecretProviderClass配置中明确指定证书导出格式为PEM,CSI驱动默认导出二进制PFX格式的证书却以PEM后缀命名,OpenSSL无法正常解析二进制内容
  • 导出的PEM证书携带Windows风格的CRLF换行符,而非OpenSSL要求的Unix风格LF换行符,解析时出现字节错位
  • 挂载的PEM证书末尾缺少标准格式要求的结束换行符,导致最后一个字节读取异常
  • 部分版本的KeyVault CSI驱动导出证书时会自动添加UTF-8 BOM头,也会导致OpenSSL解析失败

自定义镜像中内置的证书是提前处理好的标准PEM格式,编码、换行符、内容完全符合解析要求,因此集群可以正常运行。

解决方案

1. 修正CSI证书导出配置

在SecretProviderClass资源中明确指定证书的导出格式和编码,避免默认配置导致的格式异常,参考配置:

apiVersion: secrets-store.csi.x-k8s.io/v1
kind: SecretProviderClass
metadata:
  name: es-kv-cert
spec:
  provider: azure
  parameters:
    keyvaultName: <你的KeyVault名称>
    usePodIdentity: "false"
    tenantId: <你的租户ID>
    objects: |
      array:
        - |
          objectName: <证书在KeyVault中的名称>
          objectType: certificate
          objectFormat: pem
          objectEncoding: utf8
  secretObjects:
  - secretName: es-tls-cert
    type: Opaque
    data:
    - key: tls.crt
      objectName: <证书在KeyVault中的名称>
    - key: tls.key
      objectName: <证书在KeyVault中的名称>

2. 增加证书预处理步骤

通过initContainer统一处理挂载的证书格式,适配Elasticsearch官方镜像的要求:

initContainers:
- name: cert-format
  image: busybox:1.36
  command: ["/bin/sh", "-c"]
  args:
    - |
      cp /mnt/csi-cert/* /mnt/es-cert/
      # 移除UTF-8 BOM头
      sed -i '1s/^\xEF\xBB\xBF//' /mnt/es-cert/*.pem
      # 转换CRLF换行为LF
      sed -i 's/\r$//' /mnt/es-cert/*.pem
      # 补全末尾换行
      sed -i -e '$a\' /mnt/es-cert/*.pem
      # 适配官方Elasticsearch镜像的用户UID(默认1000)
      chown -R 1000:1000 /mnt/es-cert
  volumeMounts:
  - name: csi-cert-volume
    mountPath: /mnt/csi-cert
  - name: es-cert-volume
    mountPath: /mnt/es-cert

主容器挂载es-cert-volume到/usr/share/elasticsearch/config/certs路径即可。

3. 验证方法

修改配置后可进入Pod执行以下命令验证证书格式是否正常,无报错即为格式符合要求:
openssl x509 -in /usr/share/elasticsearch/config/certs/tls.crt -text -noout


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 14:06:04