官方必读!脚本附赠技术教程系列:麒麟天御安全域管平台V4

注:所有部署步骤都在master1节点上执行。

2.1.展开应用镜像

在部署节点(选用master1节点)执行镜像展开操作。

# 将ISO镜像拷贝到部署节点,挂载至一个空目录,如 /mnt/solution, 以镜像名称 container-solution–amd64-231012-163246.iso为例: $ mkdir -p /mnt/solution $ mount container-solution–amd64-231012-163246.iso /mnt/solution # 进入挂载目录 $ cd /mnt/solution # 执行脚本 expand-mirror 展开镜像 $ bash expand-mirror
​​​​​​​2.2.挂载hostpath
# 在master1上执行以下命令。标红的ip地址换成实际的nfs地址,如果未配置master1-node3的host,则把master1-node3换成对应的ip地址。默认挂载路径为/opt/glusterfs,如果需要挂载到其它路径可自行替换。 $ for host in master1 master2 master3 node1 node2 node3; do ssh root@$host “mkdir -p /opt/glusterfs && echo ‘10.41.116.236:/opt/nfs /opt/glusterfs nfs defaults 0 0’ >> /etc/fstab && mount -a”;done 注:这个步骤只做一次,如果nfs地址变化需要重新执行,需先删除各节点/etc/fstab文件里的旧配置。

3.部署kcall容器

# 执行以下命令部署kcall容器(如果是arm64架构把amd64改成arm64) $ nerdctl run -d --restart always --name kcall --network host -v /root/.ssh:/root/.ssh -v /root/.kube:/root/.kube registry.kylincloud.org:4001/solution/kcall/amd64:v4.0 bash

4.修改应用配置

4.1.进入kcall容器

nerdctl exec -it kcall bash

​​​​​​​4.2.修改conf/charts.yaml配置

vim conf/charts.yaml

​​​​​​​4.2.1.配置共享存储
# 检查chats.yaml里的共享存储配置,挂载类型为hostpath不用改,挂载路径根据实际情况修改。 globals:    volumeType: “hostpath”    glusterPath: /opt/glusterfs
​​​​​​​4.2.2配置虚IP地址
# 修改为实际的vip地址。 globals:    …    ingressVip: “172.20.42.63”
​​​​​​​4.2.3.配置统一域名
# apisix.baseUri改为申请到的根域名;kcm.uri改为域控系统使用的完整域名。例如根域名为"kylincloud.org",则域控系统的完整域名为kcm.kylincloud.org。 globals:    …    apisix.baseUri: “kylincloud.org”    kcm.uri: “kcm.kylincloud.org”
​​​​​​​4.2.4.配置MySQL数据库
# 如果使用的是集群自建数据库无需修改,如果使用客户提供的数据库,则根据实际情况修改以下内容。 globals:    …    mysql.uri: “maxscale.module”    mysql.port: 3306    mysql.username: “dbinit”    mysql.password: “Kylin.2023!”
​​​​​​​4.2.5.配置Redis数据库
# 根据实际情况修改六个Redis节点的地址,如果是三节点、双节点集群,也要填六个,多出来的填重复的即可。例如三节点环境0-2和3-5填一样的,双节点环境0-1,2-3,4-5填一样的。 globals:    …    redis.nodes0: 172.20.43.171    redis.nodes1: 172.20.43.172    redis.nodes2: 172.20.43.173    redis.nodes3: 172.20.43.174    redis.nodes4: 172.20.43.175    redis.nodes5: 172.20.43.176
4.2.6.​​​​​​​保存退出

输入:wq保存退出

​​​​​​​4.3.修改kerberos表名
#执行以下命令。注意把命令里标红的kcm_kylincloud_org修改为实际域名,点替换为下划线。例如实际域名是kcm.sdc.icbc,就把krb5_princ_kcm_kylincloud_org修改为krb5_princ_kcm_sdc_icbc,前面的krb5_princ_kylincloud_org不要改。 $ sed -i “s?krb5_princ_kylincloud_org?krb5_princ_kcm_kylincloud_org?g” /opt/deploy/pre-install/dbinit/script/32_kim_create_tables.sql
​​​​​​​4.4.拷贝静态文件目录
# exit退出kcall容器回到master1节点,执行以下步骤。(如果nfs挂载路径不是/opt/glusterfs,下面命令里对应修改) # 1、拷贝静态文件 $ rm -rf /opt/glusterfs/data/ $ nerdctl cp kcall:/opt/kcall/data /opt/glusterfs/ $ chmod 755 -R /opt/glusterfs/data/ # 2、修改kcm.yaml和远程连接配置。把标红的kcm.kylincloud.org修改为实际域名,前面那个没标红的不要改 $ sed -i “s?kcm.kylinserver.com?kcm.kylincloud.org?g” /opt/glusterfs/data/apt-data/kcm.yaml $ sed -i “s?kcm.kylinserver.com?kcm.kylincloud.org?g” /opt/glusterfs/data/apt-data/vncPkg/kylin-os-manager-plugin.ini # 3、修改dhcp服务配置文件,分别替换为实际的master1、master2节点IP(可选配置,仅部署了dhcp功能时需要做) $ sed -i “s?10.41.116.233?master1IP?g” /opt/glusterfs/data/apt-data/toolsConfig/kdhcp/dhcp_primary.conf $ sed -i “s?10.41.116.233?master1IP?g” /opt/glusterfs/data/apt-data/toolsConfig/kdhcp/dhcp_secondary.conf $ sed -i “s?10.41.116.234?master2IP?g” /opt/glusterfs/data/apt-data/toolsConfig/kdhcp/dhcp_primary.conf $ sed -i “s?10.41.116.234?master2IP?g” /opt/glusterfs/data/apt-data/toolsConfig/kdhcp/dhcp_secondary.conf $ chmod -R 777 /opt/glusterfs/data/apt-data/toolsConfig/kdns

5.初始化MySQL数据库

使用用户提供的数据库时,需要拿到数据库地址以及具备创建数据库、创建用户权限的初始账号用于建库建表。或者由用户创建dbinit数据库,密码为Kylin.2023!。

​​​​​​​5.1.生成MySQL控制台登录命令变量
# 使用用户提供的MySQL数据库时,执行以下命令,替换数据库地址、账号密码 $ mysql_cmd=“mysql -h数据库地址 -udbinit -pKylin.2023!” # 使用集群自带MySQL数据库时,执行以下命令 $ mysql_cmd="mysql -udbinit -pKylin.2023! --host=$(kubectl get svc -n module
​​​​​​​5.2.初始化数据库
# 在master1节点上执行以下命令。 注意, m y s q l _ c m d 是变量,前面的 {mysql\_cmd}是变量,前面的 mysql_cmd是变量,前面的不能忽略。 nerdctl cp kcall:/opt/deploy/pre-install/dbinit/script/ /root/ cd /root/script ${mysql_cmd} -f < 01_kcm_init_database.sql ${mysql_cmd} -f < 02_kcm_create_tables.sql ${mysql_cmd} -f < 03_kcm_insert_datas.sql ${mysql_cmd} -f < 04_kcm_insert_strategy.sql ${mysql_cmd} -f < 11_kuf_init_database.sql ${mysql_cmd} -f < 12_kuf_create_tables.sql ${mysql_cmd} -f < 13_kuf_insert_datas.sql ${mysql_cmd} -f < 21_kuas_init_database.sql ${mysql_cmd} -f < 22_kuas_create_tables.sql ${mysql_cmd} -f < 23_kuas_insert_datas.sql ${mysql_cmd} -f < 31_kim_init_database.sql ${mysql_cmd} -f < 32_kim_create_tables.sql ${mysql_cmd} -f < 33_kim_insert_datas.sql ${mysql_cmd} -f < 41_koms_init_database.sql KaTeX parse error: Expected 'EOF', got '#' at position 49: …e\_tables.sql #̲ 生成机器码 machine\…(echo -n “$(kylin_gen_register)”

6.安装应用组件

# 进入kcall容器 $ nerdctl exec -it kcall bash # 依次启动tianyu和tianyuan(必须先启动tianyu再启动tianyuan) $ python3 kcall.py solution deploy install tianyu $ python3 kcall.py solution deploy install tianyuan # 执行以下命令可查看应用组件是否全部启动成功。状态为Running代表启动成功 $ kubectl -n kcm get pod $ kubectl -n kuas get pod # 附:卸载应用组件命令 $ python3 kcall.py solution deploy uninstall tianyu $ python3 kcall.py solution deploy uninstall tianyuan

7.配置单点登录和域管理员

写在最后

在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。

需要完整版PDF学习资源私我

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以点击这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值