1.检查k8s集群是否有默认证书
查看集群默认traefik-ingress:
kubectl get ds -n kube-system
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
再查看该traefik是否有默认证书:
kubectl get cm -A
kubectl edit cm traefik-conf -n kube-system -o yaml
与含有证书的配置对比,如缺少下图红框中配置,则说明没有默认证书,需添加次配置
2.添加默认证书
先将证书文件导入宿主机:server.crt,server.key
通过证书文件新建Secret或cm,在证书文件下执行如下命令:
kubectl create cm gridsum --from-file=server.crt --from-file=server.key -n kube-system
再添加traefik-conf中的缺少的配置
最后在trarfik的ds中添加如下配置:
kubectl edit ds traefik-ingress-controller -n kube-system -o yaml
等待traefik的pod全部重启之后,此时默认证书就安装完成了。
3.检查对应命名空间下的engage服务的ingress
kubectl edit ingress compaas-tp.gridsum.com -n tenant-9h46s8u-env-b80uq53
如需要为其额外分配证书,则可以通过如下命令新建secret,在证书文件目录下:
kubectl -n tenant-9h46s8u-env-b80uq53 create secret tls compaas-tp-secret --key=server.key --cert=server.crt
再在engage的ingress配置中添加如下部分即可使用对应的secret证书
https://gitlab.gridsum.com/Engage2/platform/application-center/engage2.0/uploads/a499be826b1c184fd750c6c2417f3e96/image.png