rancher helm 部署安全 elasticsearch

官方 helm:https://github.com/elastic/helm-charts/blob/v7.16.2/elasticsearch

查看官方的例子,可以看到要修改的点有

  • elasticsearch.yml 设置开启 xpack
  • 在生产环境中,开启 xpack 必须开启 transport 的 ssl,所以还要生成证书并挂载
  • es 超级管理员 elastic 的密码

在修改 values.yaml 文件之前,我们要先创建用户密码的 secret 文件和证书的 secret 文件

创建密码的 secret 对象

kubectl create secret generic elastic-credentials --from-literal=password=123123 -n efk

创建证书的 secret 对象

先生成证书

  1. 在本地使用 docker 运行一个 es docker run -d --name es -e discovery.type=single-node elasticsearch:7.14.1

  2. 进入容器内部,cd 到 /usr/share/elasticsearch/bin 目录下,运行 elasticsearch-certutil cert

  3. 将 /usr/share/elasticsearch/elastic-certificates.p12 复制出来

  4. 使用证书文件创建 secret 对象

    kubectl create secret generic elastic-credentials --from-file=elastic-certificates.p12 -n efk

values.yaml 中需要修改的地方

antiAffinity: soft

esConfig:
  elasticsearch.yml: |
    xpack.security.enabled: true
    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.keystore.path: /usr/share/elasticsearch/config/certs/elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: /usr/share/elasticsearch/config/certs/elastic-certificates.p12
    xpack.security.http.ssl.enabled: true

image: elasticsearch
imageTag: 7.14.1

replicas: 2

extraEnvs:
  - name: ELASTIC_PASSWORD
    valueFrom:
      secretKeyRef:
        name: elastic-credentials
        key: password

secretMounts:
  - name: elastic-certificates
    secretName: elastic-certificates
    path: /usr/share/elasticsearch/config/certs
    
roles:
  master: "true"
  data: "true"

坑:我一开始使用 rancher 创建证书的 secret 文件启动失败,要使用 kubectl 命令来创建

参考:https://cloud.tencent.com/developer/article/1754675

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值