iManager for K8S 配置https证书流程步骤

针对10.1及之前版本,需要手动去配置证书,未来版本会考虑进行界面化配置。

一、提前准备

1. 证书需要准备三个文件

  • *.key
  • *.crt
  • private.pem

2. 如果没有修改iManager for K8S 命名空间,默认创建在supermap命名空间下

例如下图

3. 10.1版本需要在values.yaml中新增1个deploy_imanager_service_protocol,再启动iManager

# 选填,imanager服务协议,可填[https|http],默认http。当设置为https时,deploy_keycloak_service_protocol也需要设置为https。
deploy_imanager_service_protocol: https

二、Keycloak 证书替换

1.命名空间切换到supermap后,访问K8S UI右上角点击创建按钮

2.创建Keycloak PVC挂载目录

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-keycloak-certificate-supermap
  labels:
    type: icloud-native
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 100Mi
  storageClassName: appset-storage-class-gisappset

如果储存类有修改,那么用实际的存储类替换,默认使用的是 appset-storage-class-gisappset

创建完成后可以在K8S UI上进行搜索
pvc-keycloak-certificate-supermap

点击名称

点击存储卷

即可找到物理存储地址

3.将.key和*.crt证书放到上一步物理存储地址,并修改文件名为tls.key 和 tls.crt,其中 tls.key 是私钥,tls.crt 是公钥。

4.给予 tls.key 和 tls.crt 文件权限

chmod 755 *

5.修改keycloak编排文件

kubectl -n supermap edit deploy keycloak

5.1 增加pvc

 volumes:
 - name: certificate
   persistentVolumeClaim:
     claimName: pvc-keycloak-certificate-supermap

5.2 将 keycloak 容器的 /etc/x509/https 目录挂载到证书目录

  volumeMounts:
  - mountPath: /etc/x509/https
    name: certificate

6.保存退出后,会重新创建Pod

输入:wq ,保存退出并更新编排

:wq

7.Keycloak证书更新,其表现在iManager登录。

三、imanager-dashboard-ui 证书替换(10.1支持)

1.命名空间切换到supermap后,访问K8S UI右上角点击创建按钮

2.创建imanager-dashboard-ui PVC挂载目录

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvc-imanager-dashboard-ui-certificate-supermap
  labels:
    type: icloud-native
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 100Mi
  storageClassName: appset-storage-class-gisappset

如果储存类有修改,那么用实际的存储类替换,默认使用的是 appset-storage-class-gisappset

创建完成后可以在K8S UI上进行搜索
pvc-imanager-dashboard-ui-certificate-supermap

点击名称

点击存储卷

即可找到物理存储地址

3.将private.pem和*.crt证书放到上一步物理存储地址,并修改文件名 private.pem 和 certificate.crt。

4.给予private.pem 和 certificate.crt文件权限

chmod 755 *

5.修改imanager-dashboard-ui编排文件

kubectl -n supermap edit deploy imanager-dashboard-ui

5.1 增加pvc,增加映射目录

volumeMounts:
- mountPath: /etc/icloud/imanager-dashboard-ui/certificate
  name: certificate

volumes:
- name: certificate
  persistentVolumeClaim: 
    claimName: pvc-imanager-dashboard-ui-certificate-supermap

5.2 修改启动脚本

command: ["/bin/sh", "-c"]
args:
- >
  cp /etc/icloud/imanager-dashboard-ui/certificate/* /etc/icloud/imanager-dashboard-ui/;
  node startup-$PROTOCOL.js;

6.保存退出后,会重新创建Pod

输入:wq ,保存退出并更新编排

:wq

7.imanager-dashboard-ui证书更新,其表现在iManager UI。


(转发请注明出处:http://www.cnblogs.com/zhangyongli2011/ 如发现有错,请留言,谢谢)

原文地址:https://www.cnblogs.com/zhangyongli2011/p/13674321.html