kubernetes系列(一)——— Kuboard-Spray 图形化工具安装kubernetes集群
完整安装k8s集群过程。
整体过程:
- 准备好服务器
- 安装Kuboard-Spray(用来离线安装k8s集群-方便)
- Kuboard-Spray 加载离线资源包(k8s资源包)
- 通过Kuboard-Spray规划并安装集群
- 安装Kuboard V3.5集群管理器
- 导入集群
一、准备工作
我准备了三台虚拟机,用来搭建一个master 两个 node集群,另外一台服务器单独安图形管理界面Kuboard-Spray和Kuboard V3.5。
192.168.2.101 k8s01 master,etcd,worker
192.168.2.102 k8s02 worker
192.168.2.103 k8s03 worker
192.168.2.104 Kuboard 服务器
三台虚拟机配置要求:cpu 两核以上,内存至少2GB(后面发现master安装完成之后占用率%90左右,主节点给大点最好),三台机器网络要能互通,禁用虚拟机交换分区。虚拟机网络采用桥接自动模式就能实现网络互通。创建一个虚拟机之后,直接点击右键-管理-克隆-选择完整克隆就可以快速创建三台独立虚拟机。学习的时候可直接关闭防火墙,免得后面去单独处理端口。
--关闭防火墙步骤
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld
其他注意事项:
确保每个节点上 MAC 地址和 product_uuid 的唯一性
- 你可以使用命令
ip link
或ifconfig -a
来获取网络接口的 MAC 地址 - 可以使用
sudo cat /sys/class/dmi/id/product_uuid
命令对 product_uuid 校验
一般来讲,硬件设备会拥有唯一的地址,但是有些虚拟机的地址可能会重复。 Kubernetes 使用这些值来唯一确定集群中的节点。 如果这些值在每个节点上不一,可能会导致安装失败
官网参考教程:https://kubernetes.io/zh/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
二、开始安装Kuboard-Spray
先安装Kuboard【k8s图形化界面管理】,为什么要安装Kuboard,通过Kuboard图形化界面直接创建k8s集群。更加方便,不需要去服务器上操作。毕竟我现在不需要升入研究,先把环境搭出来才是第一目标。
###安装 Kuboard-Spray
官网参考教程:https://www.kuboard.cn/install/install-k8s.html
服务器要求:
- 1核2G
- 不少于 10G 磁盘空余空间
- 已经安装好 docker
安装命令
docker run -d \
--privileged \
--restart=unless-stopped \
--name=kuboard-spray \
-p 80:80/tcp \
-v /var/run/docker.sock:/var/run/docker.sock \
-v ~/kuboard-spray-data:/data \
eipwork/kuboard-spray:latest-amd64
# 如果抓不到这个镜像,可以尝试一下这个备用地址(把最后一行替换掉):
# swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard-spray:latest-amd64
如果第一次安装失败,请清除docker容器之后再次切换备用地址进行安装。
相关命令:
docker ps -a
#查看所有docker容器
docker stop kuboard-spray容器
#停止运行kuboard-spray容器
docker rm kuboard-spray
#删除kuboard-spray容器
依次执行之后,重新执行安装命令。下图所示为安装成功。
安装完成之后:在浏览器打开地址 http://这台机器的IP
,输入用户名 admin
,默认密码 Kuboard123
,即可登录 Kuboard-Spray 界面。
三、加载离线资源包
在 Kuboard-Spray 界面中,导航到 系统设置
--> 资源包管理
界面,可以看到很对 Kuboard-Spray 离线资源包
,这个地方我发现了有很多版本。选择一个和虚拟机系统匹配的版本就行了。如下图所示:
查看linux内核版本:
[root@localhost /]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
加载资源包会等一会。一个多G的资源包。
四、规划并安装集群
在 Kuboard-Spray 界面中,导航到 集群管理
界面,点击界面中的 添加集群安装计划
按钮,填写表单如下:
-
集群名称: 自定义名称,本文中填写为 kuboard123,此名称不可以修改;
-
资源包:选择前面步骤中导入的离线资源包。
之后就开始添加集群节点(如果节点添加的时候提示ssh无法连接,请检查填入的参数,主机ip/密码必填。如果还是不行。重启试试,最好把虚拟机也重启,我第一天所有虚拟机都连不上,第二天重新添加全部都成功了):
注意事项:
注意事项
最少的节点数量是 1 个;
ETCD 节点、控制节点的总数量必须为奇数;
在
全局设置
标签页,可以设置节点的通用连接参数,例如所有的节点都使用相同的 ssh 端口、用户名、密码,则共同的参数只在此处设置即可;在节点标签页,如果该节点的角色包含
etcd
则必须填写ETCD 成员名称
这个字段;如果您 KuboardSpray 所在节点不能直接访问到 Kubernetes 集群的节点,您可以设置跳板机参数,使 KuboardSpray 可以通过 ssh 访问集群节点。
集群安装过程中,除了已经导入的资源包以外,还需要使用 yum 或 apt 指令安装一些系统软件,例如 curl, rsync, ipvadm, ipset, ethtool 等,此时要用到操作系统的 apt 软件源或者 yum 软件源。全局设置标签页中,可以引导您完成 apt / yum 软件源的设置,您可以:
- 使用节点操作系统已经事先配置的 apt / yum 源,或者
- 在安装过程中自动配置节点的操作系统使用指定的软件源
如果您使用 docker 作为集群的容器引擎,还需要在全局设置标签页指定安装 docker 用的 apt / yum 源。阿斯顿撒打点阿萨德哀悼阿萨德阿萨德阿萨德
如果您使用 containerd 作为容器引擎,则无需配置 docker 的 apt / yum 源,containerd 的安装包已经包含在 KuboardSpray 离线资源包中。
保存之后直接点击安装部署。选择日志级别,我选的是最高的。安装成功界面如下,安装的时候等着就行了,速度看你的网速,大概十多分钟。
安装完成之后,如果是本地虚拟机环境。需要经常重启,最好能固定IP地址。 不然会导致 worker 节点不能启动。
五、接下来安装集群管理器Kuboard v3.5
如果和之前安装Kuboard -Spray 的服务器是同一台,注意端口。不要冲突,不然会安装失败。而且后面还会用上Kuboard -Spray。
Kuboard v3.5是集群管理界面。Kuboard -Spray是集群离线安装工具。
sudo docker run -d \
--restart=unless-stopped \
--name=kuboard \
-p 8080:80/tcp \
-p 10081:10081/udp \
-p 10081:10081/tcp \
-e KUBOARD_ENDPOINT="http://192.168.0.103:8080" \
-e KUBOARD_AGENT_SERVER_UDP_PORT="10081" \
-e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \
-v /opt/kuboard-data:/data \
eipwork/kuboard:v3.5.0.3
注意切换自己的ip地址和端口号。如果出现找不到image镜像,把最后一行换成swr.cn-east-myhuaweicloud.com/kuboard/kuboard:v3
参数解释
- 建议将此命令保存为一个 shell 脚本,例如
start-kuboard.sh
,后续升级 Kuboard 或恢复 Kuboard 时,需要通过此命令了解到最初安装 Kuboard 时所使用的参数;- 第 4 行,将 Kuboard Web 端口 80 映射到宿主机的
80
端口(您可以根据自己的情况选择宿主机的其他端口);- 第 5 行,将 Kuboard Agent Server 的端口
10081/tcp
映射到宿主机的10081
端口(您可以根据自己的情况选择宿主机的其他端口);- 第 6 行,指定 KUBOARD_ENDPOINT 为
http://内网IP
,如果后续修改此参数,需要将已导入的 Kubernetes 集群从 Kuboard 中删除,再重新导入;- 第 7 行,指定 KUBOARD_AGENT_SERVER 的端口为
10081
,此参数与第 5 行中的宿主机端口应保持一致,修改此参数不会改变容器内监听的端口10081
,例如,如果第 5 行为-p 30081:10081/tcp
则第 7 行应该修改为-e KUBOARD_AGENT_SERVER_TCP_PORT="30081"
;- 第 8 行,将持久化数据
/data
目录映射到宿主机的/root/kuboard-data
路径,请根据您自己的情况调整宿主机路径;其他参数
- 在启动命令行中增加环境变量
KUBOARD_ADMIN_DERAULT_PASSWORD
,可以设置admin
用户的初始默认密码。
访问 Kuboard v3.5
在浏览器输入 http://192.168.0.103:80
即可访问 Kuboard v3.5 的界面,登录方式:
- 用户名:
admin
- 密 码:
Kuboard123
六、导入集群
-
第一步:进入Kuboard-Spray界面。打开集群访问,点击获取kubeconfig文件,复制下来。
-
第二部:进入Kuboard V3.5界面,打开集群控制面板,点击集群添加按钮,选择第一种kubeconfig方式。写好名称和描述,把刚刚复制的kubeconfig粘贴进来,会自动生成Context和APIServer 地址地址。
-
如果选择其他方式导出的话,比较麻烦。可以选择Agent 镜像,去k8s集群节点执行提示命令就可以。
curl -k 'http://192.168.0.103:8080/kuboard-api/cluster/sss/kind/KubernetesCluster/sss/resource/installAgentToKubernetes?token=83Uo9VvE2B9NyYcmhQ53DycfWmoeazC0' > kuboard-agent.yaml kubectl apply -f ./kuboard-agent.yaml
文章来源:https://www.toymoban.com/news/detail-594823.html
导入完成后,可进入集群概要进行其他操作。权限控制,部署服务等等。文章来源地址https://www.toymoban.com/news/detail-594823.html
到了这里,关于Kuboard-Spray 图形化工具安装kubernetes集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!