(可选)导入证书和KubeConfig
使用前必读
- 使用之前请先查看导入工具说明,根据实际情况选择对应的导入步骤。
 - 导入KubeConfig文件参见导入KubeConfig文件。
 
导入工具说明
- 导入文件的说明请参考表1,详细命令参数请参考表4。
 - 工具支持的操作如表2。
 - 默认情况下,导入成功后,工具会自动删除KubeConfig授权文件,用户可通过-n参数停用自动删除功能。如果不自动删除,用户应妥善保管相关配置文件,如果决定不再使用相关文件,请立即删除,防止意外泄露。
 - 导入的文件会被重新加密并存入“/etc/mindx-dl”目录中,具体参考表3。
 - 如果从3.0.RC3及以后版本降级到3.0.RC3之前的旧版本,需在手动删除“/etc/mindx-dl/”目录下的文件后,重新使用旧版cert-importer工具导入。
 - 导入工具加密需要系统有足够的熵池(random pool)。如果熵池不够,程序可能阻塞,可以安装haveged组件来进行补熵。
- 类似CentOS操作系统执行yum install haveged -y命令进行安装,并执行systemctl start haveged命令启动haveged组件。
 - 类似Ubuntu操作系统执行apt install haveged -y命令进行安装,并执行systemctl start haveged命令启动haveged组件。
 
 
导入KubeConfig文件
- 生成KubeConfig配置文件,从MindXDL-deploy仓库下载createKubeConfig.sh文件并上传到K8s管理节点,在createKubeConfig.sh文件所在路径,执行以下命令生成KubeConfig文件。
bash createKubeConfig.sh https://<masterIP>:6443
若执行上述命令出错,可执行如下命令之后重试。
unset LD_LIBRARY_PATH
 - 将K8s管理节点“/etc/kubernetes/mindxdl”目录下,Resilience Controller组件的KubeConfig配置文件放置到组件的安装节点任意目录下(如“/etc/kubernetes/mindxdl”)。
 - 进入Resilience Controller安装包解压路径,将lib文件夹设置到当前窗口的环境变量LD_LIBRARY_PATH中,不需要持久化或继承给其他用户(证书导入工具需要配置自带的加密组件相关的so包路径)。
- 执行以下命令,将环境变量进行备份。
export LD_LIBRARY_PATH_BAK=${LD_LIBRARY_PATH} - 执行以下命令,将lib文件夹设置到当前环境变量LD_LIBRARY_PATH中。
export LD_LIBRARY_PATH=`pwd`/lib/:${LD_LIBRARY_PATH} 
 - 执行以下命令,将环境变量进行备份。
 - 执行以下命令,为Resilience Controller组件导入KubeConfig文件。
./cert-importer -kubeConfig=/etc/kubernetes/mindxdl/resilience-controller-cfg.conf -cpt=rc
回显示例如下,请以实际回显为准,出现以下字段表示导入成功。1 2 3 4
encrypt kubeConfig successfully start to write data to disk [OP]import kubeConfig successfully change owner and set file mode successfully
 - 已经导入了KubeConfig配置文件,但是组件还是出现连接K8s异常的场景,可以参见集群调度组件连接K8s异常章节进行处理。
 - 导入证书时,导入工具cert-importer会自动创建/var/log/mindx-dl/cert-importer目录,目录权限750,属主为root:root。
 
 - 执行以下命令,将备份的环境变量还原。
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH_BAK} 
组件  | 
证书等配置文件路径  | 
目录及其文件属主  | 
配置文件说明  | 
|---|---|---|---|
集群调度组件证书相关根目录  | 
/etc/mindx-dl/  | 
hwMindX:hwMindX  | 
kmc_primary_store/master.ks:自动生成的密钥,请勿删除。 .config/backup.ks:自动生成的备份密钥,请勿删除。  | 
Resilience Controller  | 
/etc/mindx-dl/resilience-controller/  | 
.config/config6:导入的加密K8s KubeConfig文件,连接K8s使用。 .config6:导入的加密K8s KubeConfig文件备份。  | 
参数  | 
类型  | 
默认值  | 
说明  | 
|---|---|---|---|
-kubeConfig  | 
string  | 
无  | 
待导入的KubeConfig文件的路径。  | 
-cpt  | 
string  | 
rc  | 
导入证书的组件名称为rc,表示Resilience Controller。  | 
-encryptAlgorithm  | 
int  | 
9  | 
私钥口令加密算法: 
  说明:  
无效参数值会被重置为默认值。  | 
-version  | 
bool  | 
false  | 
查询Resilience Controller版本号。  | 
-n  | 
bool  | 
false  | 
导入成功后是否删除KubeConfig文件。 
  | 
-logFile  | 
string  | 
/var/log/mindx-dl/cert-importer/cert-importer.log  | 
工具运行日志文件。  说明:  
转储后文件的命名格式为:cert-importer-触发转储的时间.log,如:cert-importer-2023-10-07T03-38-24.402.log。  | 
-updateMk  | 
bool  | 
false  | 
是否更新KMC加密组件的主密钥。 
  | 
-updateRk  | 
bool  | 
false  | 
是否更新KMC加密组件的根密钥。 
  | 
-h或者-help  | 
无  | 
无  | 
显示帮助信息。  |