导入证书和KubeConfig
导入工具cert-importer在各组件的软件包中。
- 使用之前请先查看导入工具说明,根据实际情况选择对应的导入步骤。
- 导入KubeConfig文件参见导入KubeConfig文件。
导入工具说明
- 组件及对应导入文件的说明请参考表 组件导入文件说明,详细命令参数请参考表 导入工具参数说明。
- 工具支持的操作如表 操作说明。
- 默认情况下,导入成功后,工具会自动删除KubeConfig授权文件,用户可通过-n参数停用自动删除功能。如果不自动删除,用户应妥善保管相关配置文件,如果决定不再使用相关文件,请立即删除,防止意外泄露。
- 导入的文件会被重新加密并存入“/etc/mindx-dl”目录中,具体参考表 集群调度组件证书配置文件表。
- 如果从3.0.RC3及以后版本降级到3.0.RC3之前的旧版本,需在手动删除“/etc/mindx-dl/”目录下的文件后,重新使用旧版cert-importer工具导入。
- 导入工具加密需要系统有足够的熵池(random pool)。如果熵池不够,程序可能阻塞,可以安装haveged组件来进行补熵。
- 类似CentOS操作系统执行yum install haveged -y命令进行安装。
- 类似Ubuntu操作系统执行apt install haveged -y命令进行安装。
导入KubeConfig文件
- 生成KubeConfig配置文件,从MindXDL-deploy仓库上拉取“createKubeConfig.sh”文件到K8s管理节点,执行以下命令生成各组件的KubeConfig文件。
bash createKubeConfig.sh https://<masterIP>:6443
如执行上述命令出错,可执行如下命令之后重试。
unset LD_LIBRARY_PATH
- 将K8s管理节点“/etc/kubernetes/mindxdl”目录下各组件的Kubeconfig配置文件放置到组件的安装节点任意目录下(如“/etc/kubernetes/mindxdl”)。
- 进入各节点组件安装包解压路径,将lib文件夹设置到当前窗口的环境变量LD_LIBRARY_PATH中,不需要持久化或继承给其他用户(证书导入工具需要配置自带的加密组件相关的so包路径)。
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:`pwd`/lib/
- 在各节点导入各组件的KubeConfig配置文件参考命令如下,详细命令参数请参考表5。
表3 各组件导入KubeConfig文件命令 组件
导入KubeConfig文件命令
NodeD
./cert-importer -kubeConfig=/etc/kubernetes/mindxdl/noded-cfg.conf -cpt=nd
Resilience-Controller
./cert-importer -kubeConfig=/etc/kubernetes/mindxdl/resilience-controller-cfg.conf -cpt=rc
组件 |
证书等配置文件路径 |
目录及其文件属主 |
配置文件说明 |
---|---|---|---|
集群调度组件证书相关根目录 |
/etc/mindx-dl/ |
hwMindX:hwMindX |
kmc_primary_store/master.ks:自动生成的主材料,请勿删除。 .config/backup.ks:自动生成的备份材料,请勿删除。 |
NodeD |
/etc/mindx-dl/noded/ |
.config/config6:导入的加密K8s KubeConfig文件,连接K8s使用。 .config6:导入的加密K8s KubeConfig文件备份。 |
|
Resilience-Controller |
/etc/mindx-dl/resilience-controller/ |
参数 |
类型 |
默认值 |
说明 |
---|---|---|---|
-kubeConfig |
string |
无 |
待导入的KubeConfig文件的路径。 |
-cpt |
string |
ne |
导入证书的组件名称:
|
-encryptAlgorithm |
int |
9 |
私钥口令加密算法:
|
-version |
bool |
false |
打印程序版本号。 |
-n |
bool |
false |
默认导入成功后会删除kubeconfig文件,设为true可停用自动删除功能。 |
-logFile |
string |
/var/log/mindx-dl/cert-importer/cert-importer.log |
工具运行日志路径。 |
-updateMk |
bool |
false |
如果为true,立即更新KMC加密组件的主秘钥。 |
-updateRk |
bool |
false |
如果为true,立即更新KMC加密组件的根秘钥。 |
-h |
无 |
不涉及 |
显示帮助信息。 |