K3S-安装
离线部署是rancher开源的一个Kubernetes发行版,从名字上就可以看出k3s相对k8s做了很多裁剪和优化,二进制程序不足50MB,占用资源更少,只需要512MB内存即可运行。
k3s是rancher开源的一个Kubernetes发行版,从名字上就可以看出k3s相对k8s做了很多裁剪和优化,二进制程序不足50MB,占用资源更少,只需要512MB内存即可运行
部署架构图
高可用最小模式的部署方式
192.168.0.1、192.168.0.2、192.168.0.3 搭建K3S精简集群,部署应用集群。
运维人员可以通过192.168.0.1管理维护K3S集群。
192.168.111.1、192.168.111.2 搭建数据库高可用、redis缓存高可用、对象存储等中间件服务。
TODO 明确相关服务器硬件配置
安装k3s
#下载离线安装包 wget https://rancher-mirror.rancher.cn/k3s/k3s-install.sh wget https://rancher-mirror.rancher.cn/k3s/v1.30.2-k3s2/k3s-images.txt wget https://rancher-mirror.rancher.cn/k3s/v1.30.2-k3s2/k3s wget https://rancher-mirror.rancher.cn/k3s/v1.30.2-k3s2/k3s-airgap-images-amd64.tar.gz #权限设置 sudo chmod a+x ./k3s ./k3s-install.sh sudo cp ./k3s /usr/local/bin/ #设置环境变量: export INSTALL_K3S_EXEC="--docker --disable=traefik --kube-apiserver-arg service-node-port-range=0-65535 --write-kubeconfig ~/.kube/config --write-kubeconfig-mode 666" #执行安装server命令: INSTALL_K3S_SKIP_DOWNLOAD=true ./k3s-install.sh
将安装其他实用程序,包括kubectl
、crictl
、ctr
、k3s-killall.sh
和 k3s-uninstall.sh
。
将kubeconfig文件写入到/etc/rancher/k3s/k3s.yaml
,由 K3s 安装的 kubectl 将自动使用该文件
在其他节点安装K3s的woker node,并加入到集群中
设置K3S_URL
参数会使 K3s 以 worker 模式运行。K3s agent 将在所提供的 URL 上向监听的 K3s 服务器注册。K3S_TOKEN
使用的值存储在你的服务器节点上的/var/lib/rancher/k3s/server/node-token
路径下。
注意:每台计算机必须具有唯一的主机名。如果您的计算机没有唯一的主机名,请传递K3S_NODE_NAME
环境变量,并为每个节点提供一个有效且唯一的主机名。
#执行安装agent命令: INSTALL_K3S_SKIP_DOWNLOAD=true K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken ./k3s-install.sh
查看状态
systemctl status k3s
卸载k3s
cd /usr/local/bin k3s-killall.sh k3s-uninstall.sh
修改k3s相关配置 #vi /etc/systemd/system/k3s.service vi /etc/systemd/system/multi-user.target.wants/k3s.service #重新加载配置文件 systemctl daemon-reload #重启k3s服务 systemctl restart k3s.service #查看server/master节点token值 cat /var/lib/rancher/k3s/server/node-token #在master节点查看node节点是否加入成功 kubectl get node -o wide #master节点更改node节点身份为worker kubectl label node k3s-node1 node-role.kubernetes.io/worker=worker
安装kuboard
docker run 的方式运行 Kuboard,参考:
安装 Kuboard v3 - 内建用户库 | Kuboard
docker run -d \ --restart=unless-stopped \ --name=kuboard \ -p 8081:80/tcp \ -p 10081:10081/tcp \ -e KUBOARD_ENDPOINT="http://192.168.152.35:80" \ -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \ -v /root/kuboard-data:/data \ swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v3
默认账号:admin
默认密码:Kuboard123
登录成功后,修改默认登录密码。
通过 .kubeconfig方式导入k3s集群。
内容通过如下方式获取:找到master节点下的k3s配置,(路径 /etc/rancher/k3s/k3s.yaml ) 修改内部的server ip为master节点的ip。
apiVersion: v1 clusters: - cluster: certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdGMyVnkKZG1WeUxXTmhRREUyTmpReU1ESTBNRGd3SGhjTk1qSXdPVEkyTVRReU5qUTRXaGNOTXpJd09USXpNVFF5TmpRNApXakFqTVNFd0h3WURWUVFEREJock0zTXRjMlZ5ZG1WeUxXTmhRREUyTmpReU1ESTBNRGd3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFRdmJOZEdiNDAvWmR4L2JiRjgzZXZObGFsUFVXTm5KMmp6UFZoT0k4VXAKR1QyeXQ1b0FCTEs2a0diWnVEbkowTE9GYnBudXZFMUkyRFl0d2RxMmh3YnFvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVXA1YU5GZlU5U0R3dFVoQlZJVTNUCkc4UTgwa293Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUloQUlxcVhMNFBVa0xsdld3T3hmZ3M2NFNhSHBobFgvaW8KVFJJME9MdnR5VmRXQWlBcFhrcndLRmZBYmFmSDNkZnNjY0dIbGYvdVpMbTJaNG1WeURRZmE4dUtPUT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K server: https://192.168.1.11:6443 name: default contexts: - context: cluster: default user: default name: default current-context: default kind: Config preferences: {} users: - name: default user: client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJrVENDQVRlZ0F3SUJBZ0lJQ0NjT1VkbCtEZzR3Q2dZSUtvWkl6ajBFQXdJd0l6RWhNQjhHQTFVRUF3d1kKYXpOekxXTnNhV1Z1ZEMxallVQXhOalkwTWpBeU5EQTRNQjRYRFRJeU1Ea3lOakUwTWpZME9Gb1hEVEl6TURreQpOakUwTWpZME9Gb3dNREVYTUJVR0ExVUVDaE1PYzNsemRHVnRPbTFoYzNSbGNuTXhGVEFUQmdOVkJBTVRESE41CmMzUmxiVHBoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJJQWZuSncrVVVOaUdsN3QKWGhMUFZDTUpyWHIraFUvWVU4SVNoRVNtQktucng0eWZ4NUQ3TnpTdkR5YUdldjk3SVJDUGlKUktvaENFMGlnMwp1Z3I5b1RlalNEQkdNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBakFmCkJnTlZIU01FR0RBV2dCU1lxTHlEK2tzMjhidVBSMUx2RTZDN1hGV2U5REFLQmdncWhrak9QUVFEQWdOSUFEQkYKQWlBTW5HekViQUx2K2dUZUxFc1M5T1dyOWNrRXhDMUVHT2FBSDBpemdCb2R4UUloQU1xSDFZeUU5N0ZFeXh0Kwp5aHlMaWYxb3A3alcrcHFIakRNT1VTQzg0SGtsCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0KLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkakNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdFkyeHAKWlc1MExXTmhRREUyTmpReU1ESTBNRGd3SGhjTk1qSXdPVEkyTVRReU5qUTRXaGNOTXpJd09USXpNVFF5TmpRNApXakFqTVNFd0h3WURWUVFEREJock0zTXRZMnhwWlc1MExXTmhRREUyTmpReU1ESTBNRGd3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFSQzlKYUppZUVlSHZBVUU5NzA5d3lRUjBQbTgrWlZteis0enpNS1ZZTGYKVDl6and2NUJUUGJoazlFNXh3c3I0Zkg2Zkw5RnI0QWtsZW1HSEhicWJIQ1VvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVW1LaThnL3BMTnZHN2owZFM3eE9nCnUxeFZudlF3Q2dZSUtvWkl6ajBFQXdJRFJ3QXdSQUlnZHFhbVpNMUttUzlnT1E2d0k4SWh3UDAvY05XV1ZQeEsKNUF4eU03elRiTElDSUdBOUZWa0hPTDAyN05WaFd4MngydnNtdkNOLzZoa2RGVnhJOFMwM05IUkoKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo= client-key-data: LS0tLS1CRUdJTiBFQyBQUklWQVRFIEtFWS0tLS0tCk1IY0NBUUVFSUd6VldKY1JpUkljLzFWTnc0UGRKckZFbEk2cisyUkdWWDJMQ0tsZldibnRvQW9HQ0NxR1NNNDkKQXdFSG9VUURRZ0FFZ0IrY25ENVJRMklhWHUxZUVzOVVJd210ZXY2RlQ5aFR3aEtFUktZRXFldkhqSi9Ia1BzMwpOSzhQSm9aNi8zc2hFSStJbEVxaUVJVFNLRGU2Q3YyaE53PT0KLS0tLS1FTkQgRUMgUFJJVkFURSBLRVktLS0tLQo=
安装metrics-server 监控计算资源。
安装存储
方案一: k3s 内置local storage provider,不适合高可用场景
方案二:使用外部存储 CIFS
K9s(可选)
快捷管理kubenetes集群的运维软件,k3s同理
下载对应版本的系统即可,以windows平台为例,下载下来,解压,把k9s.exe 加入系统环境变量即可。
- 登录服务器,下载k8s集群的yaml配置文件
# k3s /etc/rancher/k3s/k3s.yaml # k8s ./kube/config # 将文件下载到本地路径,创建环境变量配置 %KUBECTL_HOME% k3s.yaml配置文件路径
下载kubectl指令文件
# 查看 kubectl.exe 最新版本 https://storage.googleapis.com/kubernetes-release/release/stable.txt # 下载最新版本 https://storage.googleapis.com/kubernetes-release/release/v1.22.2/bin/windows/amd64/kubecti.exe # 配置kubectl.exe 指定文件路径 %KUBECTL_HOME% kubectl.exe 文件路径 # curl 工具下载 可选 https://curl.se/windows/
验证
数据k9s即可进入k9s管理界面,根据快捷键,快速查看资源信息
参考文档
更多推荐
所有评论(0)