hubble集群在一定时期内需要进行证书的替换,以保证不影响后续的正常使用,允许您轮换安全证书而无需重新启动节点。
在以下情况下,您可能需要轮换节点,客户端或CA证书:
cert list
语句(使用root用户)/usr/local/bin/hubble cert list --certs-dir=/var/lib/hubble/certs
cd /var/lib/hubble
cp -r certs/ certs_bak
cp -r mysafedirectory/ mysafedirectory_bak
systemctl stop hubble
针对所有需要换证书的节点,都要关闭服务
本步骤通过root用户操作
license machinecode
语句cd /var/lib/hubble
/usr/local/bin/hubble license machinecode --certs-dir=/var/lib/hubble/certs
执行后会在/var/lib/hubble/certs下生成BDPMACHINE.txt文件
license register
语句/usr/local/bin/hubble license register --certs-dir=/var/lib/hubble/certs
cert create-ca
语句(使用hubble用户)cd /var/lib/hubble/
hubble cert create-ca --certs-dir=certs --ca-key=mysafedirectory/ca.key #生成本机证书和密钥
cert create-node
语句(使用hubble用户)cd /var/lib/hubble/
hubble cert create-node hubble02 192.168.1.12 --certs-dir=certs --ca-key=mysafedirectory/ca.key --overwrite
scp -r certs/ hubble@hubble02:/var/lib/hubble/
create-node hubble02 192.168.1.12
创建其他节点的证书
基于ca.key
生成其他节点证书
scp
分发到对应的节点上
cert create-node
语句(使用hubble用户)cd /var/lib/hubble/
hubble cert create-node hubble01 192.168.1.11 --certs-dir=certs --ca-key=mysafedirectory/ca.key --overwrite
cert create-client
语句(使用hubble用户)cd /var/lib/hubble/
hubble cert create-client root --certs-dir=certs --ca-key=mysafedirectory/ca.key --overwrite #root的,也可以生成其他用户的
如果在执行create-client客户端授权时,有的license申请期限时常较少,会出现"Error: failed to generate client certificate and key: xxx key: CA lifetime is 2364.193159h, shorter than the requested 43920.000000h. Renew CA certificate, or rerun with
--lifetime=2364h
for a shorter duration" 需要后面添加--lifetime=2364h
参数,执行命令hubble cert create-client root --certs-dir=certs --ca-key=mysafedirectory/ca.key --overwrite--lifetime=2364h
所有用到的节点都需要执行一次
/usr/local/bin/hubble cert list --certs-dir=/var/lib/hubble/certs
说明:查看失效日期的变化
systemctl start hubble
所有用到的节点都重启
hubble sql --certs-dir=/var/lib/hubble/certs --host=hubble01:15432
show databases