iManager微服务(云套件)配置https证书流程步骤
本文使用的是10.1版本,需要手动去配置证书,未来版本会考虑进行界面化配置。
一、提前准备
1. 证书需要准备三个文件
- *.key
- *.crt
- *.keystore
2. 需要知道自己创建的微服务是哪个命名空间下的
例如下图:微服务(云套件)命名空间为:icloud-native-10
还可以通过iManager点击所创建的微服务(云套件)名称后,查看URL后面,例如:
http://XXX.XXX.XXX.XX:31100/views/appset/detail.html?type=icloud-native&id=10
二、Keycloak 证书替换
1.命名空间切换到当前微服务(云套件)后,访问K8S UI右上角点击创建按钮
2.创建Keycloak PVC挂载目录
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-keycloak-certificate-${appsetId}
labels:
type: icloud-native
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 100Mi
storageClassName: appset-storage-class-gisappset
其中 ${appsetId} 用实际 id 替换,id 是结尾的数字,比如 icloud-native-10,id 就是 10。
如果储存类有修改,那么用实际的存储类替换,默认使用的是 appset-storage-class-gisappset
创建完成后可以在K8S UI上进行搜索
pvc-keycloak-certificate-10
点击名称
点击存储卷
即可找到物理存储地址
3.将.key和*.crt证书放到上一步物理存储地址,并修改文件名为tls.key 和 tls.crt,其中 tls.key 是私钥,tls.crt 是公钥。
4.给予 tls.key 和 tls.crt 文件权限
chmod 755 *
5.修改keycloak编排文件
kubectl -n icloud-native-${appsetId} edit deploy keycloak
5.1 增加pvc
volumes:
- name: certificate
persistentVolumeClaim:
claimName: pvc-keycloak-certificate-10
5.2 将 keycloak 容器的 /etc/x509/https 目录挂载到证书目录
volumeMounts:
- mountPath: /etc/x509/https
name: certificate
6.保存退出后,会重新创建Pod
输入:wq ,保存退出并更新编排
:wq
7.Keycloak证书更新,其表现在微服务(云套件)登录。
二、Gateway 证书替换
1.命名空间切换到当前微服务(云套件)后,访问K8S UI右上角点击创建按钮
2.创建Gateway PVC挂载目录
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-gateway-certificate-${appsetId}
labels:
type: icloud-native
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 100Mi
storageClassName: appset-storage-class-gisappset
创建完成后可以在K8S UI上进行搜索
pvc-gateway-certificate-10
点击名称
点击存储卷
即可找到物理存储地址
3.将keystore证书放到上一步物理存储地址。
4.给予*.keystore文件权限
chmod 755 *
5.修改Gateway编排文件
kubectl -n icloud-native-${appsetId} edit deploy iserver-gateway
5.1 增加pvc
- name: certificate
persistentVolumeClaim:
claimName: pvc-gateway-certificate-10
5.2 只保留 gateway 启动脚本
5.3 增加映射目录
- mountPath: /etc/icloud/gateway/config/certificate
name: certificate
5.4 修改https证书环境配置
- icn_ext_param_server_ssl_keyAlias 是证书别名
- icn_ext_param_server_ssl_keyStorePassword 证书密码
- icn_ext_param_server_ssl_keyStoreType 证书类型,比如PKCS12
- icn_ext_param_server_ssl_keyStore 证书所在容器路径
6.保存退出后,会重新创建Pod
输入:wq ,保存退出并更新编排
:wq
7.Gateway证书更新,其表现在微服务页面和自己的服务。
(转发请注明出处:http://www.cnblogs.com/zhangyongli2011/ 如发现有错,请留言,谢谢)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)