k8s imanager从1013版本升级到1020版本
文章目录先搭建1013版本环境使用离线安装包安装k8s和nfs安装子节点创建云套件发布实例服务1013升级到1020超图k8s imanager至今稳定版本已发布到1020了,而很多实际项目上使用的还是1012、1013。同以往的惯例一样,k8s imanager新出了一个版本后,后面都会伴随着推出一个升级包,用于将低版本的k8s imanager产品升级到最新的版本,1020版也不例外。这里笔者
超图k8s imanager至今稳定版本已发布到1020了,而很多实际项目上使用的还是1012、1013。同以往的惯例一样,k8s imanager新出了一个版本后,后面都会伴随着推出一个升级包,用于将低版本的k8s imanager产品升级到最新的版本,1020版也不例外。这里笔者使用阿里云环境,先搭建了一套1013版的k8s imanager环境,创建了云套件站点并发布了几个服务实例后,使用升级包进行升级,完成后测试已发布的服务状态验证其影响,以下内容为具体步骤(已有1013环境的用户可略过前面1013版的环境搭建过程)。
搭建1013版本环境
使用离线安装包安装k8s和nfs
-
创建阿里云ECS实例master,笔者这里选用的配置是16核cpu, 32G内存, 200G 硬盘,centos 7.5系统。
-
从超图提供的网盘中下载centos7.5的离线k8s和nfs安装包,并上传到刚才创建的实例master中。
-
安装解压工具
yum install -y unzip -
解压k8s离线安装包
unzip kubernetes-1.15.1-centos-7.5-deploy-20211122.zip
cd kubernetes-1.15.1-centos-7.5-deploy/supermap-kubernetes-centos/
tar xvf offline-kubernetes-1.15-centos.tar.gz -
由于阿里云centos7.5系统环境还缺少一个k8s安装所需的依赖libaio, 如果直接执行install.sh的话会报出如下错误,
所以这里要先提前安装它,yum install libaio-devel.x86_64 -y
-
修改install.sh脚本以适配阿里云环境
cd offline-kubernetes-1.15-centos
cp install.sh install.sh.bak //修改前备份原文件
vim install.sh
注释掉setenforce 0
这一行,阿里云服务实例默认已禁用selinux.
修改kubeadm init xxx
这一行,因为该脚本默认是离线环境使用,所以在阿里云环境中我们需要指定k8s拉取镜像地址,在最后追加指定即可, 即修改为kubeadm init $@ --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=NumCPU --kubernetes-version=v1.15.0 --image-repository registry.aliyuncs.com/google_containers
。 -
执行安装脚本,注意新的安装脚本已将
hostnamectl set-hostname master
这一行注释掉,不会再修改主机名了,从而避免了一些潜在的问题出现。从后面安装子节点的截图中可以看到笔者的主节点名为aliyun,没有被改变。
./install.sh m -
解压nfs离线安装包并安装
chmod +x *.sh
./install.sh -
检查nfs服务状态
systemctl status nfs -
访问masterIP:31234 dashboard页面检查k8s安装的情况,没有问题后进行下一步操作。
-
上传1013版k8s imanager linux x64 包到服务器中
-
解压imanager包
tar xvf supermap-imanager-for-kubernetes-10.1.3-210610-17-linux-x64.tar.gz -
修改values.yaml配置文件
cd supermap-imanager-for-kubernetes
cp values.yaml values.yaml.bak //修改前备份
vim values.yaml
deploy_registry: registry.cn-beijing.aliyuncs.com // 因为是阿里云环境,使用在线镜像
deploy_kubernetes_public_ip: aliyun public ip //使用ecs的弹性公网ip
deploy_nfs_server: same with aliyun public ip // 因为我们nfs是安装在同一台服务器上,ip相同
deploy_nfs_path: /opt/nfs_data // 使用nfs离线安装脚本就是这个路径
修改完成后如下图 -
启动imanager
./startup.sh
-
访问masterIP:31234 dashboard页面选择命名空间supermap查看imanager安装进程,当概览菜单页面全变为绿色后,访问masterIP:31100页面访问imanager, 默认用户名密码都是admin, 可以在上面的values.yaml文件中进行配置。
-
登录成功后,在许可中心页面导入许可。访问许可页面查看状态
安装子节点
这里笔者使用的同样是阿里云ecs环境,8 核 CPU, 8G 内存, 100G硬盘,centos 7.5系统。
-
修改子节点主机名,也可以在创建的时候就指定好
hostnamectl set-hostname node1 -
上传k8s离线安装包并解压,同样需要先安装unzip工具类
yum install unzip -y -
切换到主节点ssh远程连接环境,获取子节点加入集群所需的token
kubeadm token list
第一列的TOKEN值即为所需值 -
切换回子节点node1环境,这里首先同主节点一样,需要先安装libaio依赖,
yum install libaio-devel.x86_64 -y
,
进入到k8s安装目录下,执行install脚本将子节点加入集群,
./install.sh join $masterIP:6443 --token $TOKEN -
访问$masterIP:31234页面点击节点菜单查看节点状态,也可以通过命令行执行
kubectl get node
查看,以下为子节点加入成功截图另外可以从命令行查看kube-system, supermap命名空间的容器组因子节点的加入而发生的调度情况。
创建云套件
-
在$masterIP:31100 imanager页面上点击创建云套件
-
访问$masterIP:31234页面,选择以icloud-native开头的命名空间的概览页面, 等待饼图全变绿,全绿即代表创建完成,这里根据机器配置不同,等待时间长短不一,笔者的环境配置大概十几分钟,以下为创建完成的截图
-
创建完成后,点击imanager页面上的给出的云套件访问地址,登录的账号信息在服务后面有给出,现在默认是user_admin/iserver
-
登录成功后点击许可信息菜单检查云套件的许可状态
发布实例服务
-
访问$masterIP:31234页面,搜索gisapplication-data的pvc路径, 找到对应的nfs路径,上传工作空间文件到该目录下。以下三张图片展示了寻找过程
上传完成后,可以到云套件页面中点击文件管理菜单检查上传情况
-
上传成功后即可创建服务节点并发布相应的服务实例了,以下为发布后的截图
1013升级到1020
以下具体升级过程来自1020升级包的README.pdf文档,经实际操作整理而成。
-
首先需要从网盘里下载k8s imanager 1020版的正式部署包,修改其中的values.yaml文件,改动项同上面主节点的修改过程,其中deploy_*_tag字段应为1020包原有的10.2.0-amd64不变(同样修改前最好先备份,方便以后还原),笔者本地修改后如下图
-
上传1020 imanager升级包并解压
tar xvf supermap-imanager-upgrade-10.2.0-linux-x64.tar.gz
-
进入升级包内,创建yamls目录并将刚才修改的1020正式包内的values.yaml文件拷贝到yamls目录下
cd supermap-imanager-upgrade-10.2.0-linux-x64
mkdir yamls
cp …/supermap-imanager-for-kubernetes-10.2.0-linux-x64/values.yaml yamls/ -
设置必须的环境变量,执行升级脚本,升级imanager
export PRODUCT=imanager
export KUBERNETES_MASTER_URL=$masterUrl // 通过kubectl cluster-info获取
// 如export KUBERNETES_MASTER_URL=https://192.168.0.19:6443执行升级脚本
./upgrade.sh
确认无报错信息
按照README.pdf文档说的检查imanager页面的存储管理菜单,检查有无新增并且无挂载的服务,若有的话可进行绑定操作。
-
设置必须的环境变量,执行升级脚本,升级云套件
export PRODUCT=giscloudsuite
export NAMESPACE=icloud-native-2 // 根据自己的云套件命名空间填写执行升级脚本
./upgrade.sh
确认无报错信息(图中为警告信息,可忽略)
-
访问$masterIP:31234页面云套件命名空间等待升级过程执行完毕,概览页面全部变绿为正常
-
检查之前发布的服务实例是否能够正常访问,确认无问题后升级完成。
更多推荐
所有评论(0)