安装部署
硬件要求
最小化配置
角色 | CPU核数 | 内存 | 系统盘 | 数量 |
---|---|---|---|---|
部署机 | 4 | 8G | 100G | 1 |
Master | 4 | 8G | 100G | 1 |
Worker | 4 | 8G | 100G | 3 |
推荐配置
角色 | CPU核数 | 内存 | 系统盘 | 数量 |
---|---|---|---|---|
部署机 | 8 | 16G | 100G SSD | 1 |
Master | 8 | 16G | 100G SSD | 3 |
Worker | 8 | 16G | 系统盘: 100G 数据盘: 300G(/var/lib/docker) | >3 |
软件要求
kubeoperator 部署机
需求项 | 具体要求 | 参考(以CentOS7.6为例) |
---|---|---|
操作系统 | 支持 Docker 的 Linux OS | cat /etc/redhat-release |
CPU 架构 | 支持 x86_64 和 aarch64 | uname -m |
kernel 版本 | >=Linux 3.10.0-957.el7.x86_64 | uname -sr |
swap | 关闭 | swapoff -a sed -i ‘/ swap / s/^(.*)$/#\1/g’ /etc/fstab |
防火墙 | 关闭 | systemctl stop firewalld && systemctl disable firewalld |
端口 | 所有节点防火墙必须放通 SSH(默认22)、80、8081-8083端口 | firewall-cmd —zone=public —add-port=80/tcp —permanent |
SELinux | 关闭 | setenforce 0 sed -i “s/SELINUX=enforcing/SELINUX=disabled/g” /etc/selinux/config |
kubernetes 集群节点
需求项 | 具体要求 | 参考(以CentOS7.6为例) |
---|---|---|
操作系统 | CentOS/RHEL 7.4 - 7.9 Minimal EulerOS 2.5(x86_64) EulerOS 2.8(arm64) | cat /etc/redhat-release |
CPU 架构 | 支持 x86_64 和 aarch64 | uname -m |
kernel 版本 | >=Linux 3.10.0-957.el7.x86_64 | uname -sr |
swap | 关闭。如果不满足,系统会有一定几率出现 io 飙升,造成 docker 卡死。kubelet 会启动失败(可以设置 kubelet 启动参数 —fail-swap-on 为 false 关闭 swap 检查) | swapoff -a sed -i ‘/ swap / s/^(.*)$/#\1/g’ /etc/fstab |
防火墙 | 关闭。Kubernetes 官方要求 | systemctl stop firewalld && systemctl disable firewalld |
SELinux | 关闭 | setenforce 0 sed -i “s/SELINUX=enforcing/SELINUX=disabled/g” /etc/selinux/config |
时区 | 所有服务器时区必须统一,建议设置为 Asia/Shanghai | timedatectl set-timezone Asia/Shanghai |
安装说明
离线安装
请自行下载 KubeOperator 最新版本的离线安装包
# 解压安装包
tar zxvf KubeOperator-release-v3.10.1-amd64.tar.gz
# arm64 的包名是 KubeOperator-release-v3.10.1-arm64.tar.gz
cd KubeOperator-release-v3.10.1
# 运行安装脚本
/bin/bash install.sh
# 等待安装脚本执行完成后,查看 KubeOperator 状态
koctl status
在线安装
默认使用 /opt/kubeoperator 目录作为安装目录,配置文件、数据及日志等均存放在该安装目录安装完成后,安装过程中产生的离线文件可删除,目录名: kubeoperator-release-v3.10.1
# 以 root 用户 ssh 登录目标服务器, 执行如下命令
curl -sSL https://github.com/KubeOperator/KubeOperator/releases/latest/download/quick_start.sh -o quick_start.sh
bash quick_start.sh
安装完成后,检查服务状态。若有有异常,可以使用 koctl restart 命令进行重新启动
[root@kubeoperator ~]# koctl status
Name Command State Ports
------------------------------------------------------------------------------------------------------------------------------------------------
kubeoperator_kobe sh /root/entrypoint.sh Up (healthy) 8080/tcp
kubeoperator_kotf kotf-server Up (healthy) 8080/tcp
kubeoperator_mysql /entrypoint.sh mysqld Up (healthy) 3306/tcp, 33060/tcp
kubeoperator_nexus sh -c ${SONATYPE_DIR}/star ... Up (healthy) 0.0.0.0:8081->8081/tcp, 0.0.0.0:8082->8082/tcp, 0.0.0.0:8083->8083/tcp
kubeoperator_nginx /docker-entrypoint.sh ngin ... Up (healthy) 0.0.0.0:80->80/tcp
kubeoperator_server ko-server Up (healthy) 8080/tcp
kubeoperator_ui /docker-entrypoint.sh ngin ... Up (healthy) 80/tcp
kubeoperator_webkubectl sh /opt/webkubectl/start-w ... Up (healthy)
登录
地址: http://<ko服务器_ip>:80
用户名: admin
密码: kubeoperator@admin123
帮助
koctl --help
升级说明
离线升级
# 离线升级需要提前下载离线安装包,并解压到 KubeOperator 部署机
# 进入升级包目录
cd KubeOperator-release-v3.10.1
# 运行安装脚本
./koctl upgrade
# 查看 KubeOperator 状态
koctl status
在线升级
# 升级到指定版本
koctl upgrade v3.10.1
# 升级到最新版本
koctl upgrade
# 查看 KubeOperator 状态
koctl status
混合架构说明
定义:混合架构是指使用 KubeOperator 部署同时包含 x86_64 和 arm64 架构节点的 Kubernetes 集群
如下图所示,混合部署需要提供 x86_64 和 arm64 架构的 nexus 仓库,以便于集群部署时可以下载到对应架构的资源,之后在 KubeOperator 系统设置添加不同架构的仓库信息即可。
例如:
1.可以分别部署两台不同架构的 KubeOperator(一台 arm64,一台 x86_64)
2.使用 x86_64 架构的主机作为日常操作的主机
3.将 arm64 的主机作为 arm 仓库使用并添加到 x86_64 的 KubeOperator 系统设置中
当前内容版权归 KubeOperator 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 KubeOperator .