K3s 是一個完全兼容的 Kubernetes 發行版,簡單來說,K3s就是一個輕量版的k8s.
節點配置節點ipCIRD配置信息
需要保證兩個節點能夠內網互通,由于兩個節點處于不同vpc,故已使用對等連接讓兩個服務器內網互通
部署K3S集群環境准備1. 配置host(重啓生效)
2. 關閉selinux
3. 安裝工具
yum -y install curl
部署k3s-main執腳本curl -sfL https://get.k3s.io | sh -國內用戶使用以下命令加速訪問curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -
注:K3s 服務將被配置爲在節點重啓後或進程崩潰或被殺死時自動重啓。
將安裝其他實用程序,包括 kubectl、crictl、ctr、k3s-killall.sh 和 k3s-uninstall.sh。
kubeconfig 文件將寫入到 /etc/rancher/k3s/k3s.yaml,由 K3s 安裝的 kubectl 將自動使用該文件。
部署k3s-node執行腳本curl -sfL https://get.k3s.io | K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken sh -國內用戶使用以下命令加速訪問curl -sfL https://rancher-mirror.rancher.cn/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn K3S_URL=https://myserver:6443 K3S_TOKEN=mynodetoken sh -
注:K3S_URL 參數會導致安裝程序將 K3s 配置爲 Agent 而不是 Server。K3s Agent 將注冊到在 URL 上監聽的 K3s Server。
K3S_TOKEN 使用的值存儲在 Server 節點上的 /var/lib/rancher/k3s/server/node-token 中。
出現該頁面表示node節點已接入main
相關配置1. 設置開機自啓
# 主(從)節點設置開機自啓systemctl enable k3s(k3s-agent)# 查看k3s狀態systemctl status k3s(k3s-agent)
出現該頁面表示服務已配置開機重啓(enabled)
配置kubectl配置文件
# 創建.kube文件夾,並將/etc/rancher/k3s/k3s.yaml複制到~/.kube/config# main節點mkdir ~/.kubecp /etc/rancher/k3s/k3s.yaml ~/.kube/config# node節點mkdir ~/.kubescp root@192.168.0.200:/etc/rancher/k3s/k3s.yaml ~/.kube/configsed -i s'/127.0.0.1/192.168.0.200/' ~/.kube/config
執行kubectl get node 出現如下結果表示k3s集群已搭建成功
Dashboard 部署已經部署好了k3s集群,已經可以進行應用的交付,但是直接在集群內不是很方便而且監控也不是很方便,可以使用dashboard對集群進行監控和管理。
安裝dashboardwget https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml
kubectl apply -f recommended.yaml
配置外網訪問執行命令 kubectl -n kubernetes-dashboard edit service kubernetes-dashboard 修改配置文件,將service類型改成nodeport
執行 kubectl get service -n kubernetes-dashboard 查看端口號
准備 dashboard.admin-user.yml 和 dashboard.admin-user-role.yml
執行kubectl create -f dashboard.admin-user.yml -f dashboard.admin-user-role.yml
執行 kubectl -n kubernetes-dashboard create token admin-user獲取臨時訪問令牌
若要獲得永久token可以參考這個:dashboard/docs/user/access-control/creating-sample-user.md at master · kubernetes/dashboard · GitHub
在浏覽器進行訪問,訪問形式https://main_ip:nodeport
谷歌浏覽器會出現這個頁面時,鼠標點擊空白地方,直接盲打 thisunsafe
火狐出現的頁面,直接繼續訪問
之後就出現登錄頁面
輸入剛剛獲取的token即可進入管理頁面,對集群進行管理
Kuboard 部署個人感覺dashboard不是很好用,故使用kuboard進行集群的訪問及監控
安裝kuboardsudo docker run -d \ --restart=unless-stopped \ --name=kuboard \ -p 8088:80/tcp \ -p 10081:10081/tcp \ -e KUBOARD_ENDPOINT="http://內網IP:80" \ -e KUBOARD_AGENT_SERVER_TCP_PORT="10081" \ -v /root/kuboard-data:/data \ eipwork/kuboard:v3
# 也可以使用鏡像 swr.cn-east-2.myhuaweicloud.com/kuboard/kuboard:v3 ,可以更快地完成鏡像下載。 # 請不要使用 127.0.0.1 或者 localhost 作爲內網 IP \ # Kuboard 不需要和 K8S 在同一個網段,Kuboard Agent 甚至可以通過代理訪問 Kuboard Server \
訪問kuboard在浏覽器訪問:http://node_ip:port ,默認用戶名和密碼如下
用戶名: admin
密 碼: Kuboard123
參考文檔:
快速入門指南 | K3s
Kuboard_Kubernetes教程K8S安裝管理界面
部署和訪問 Kubernetes 儀表板(Dashboard) | Kubernetes
dashboard/docs/user/access-control/creating-sample-user.md at master · kubernetes/dashboard · GitHub
歡迎各位夥伴在評論、留言指出不足之處。
聯系方式:mr_xuansu@163.com
更多內容請關注微信公衆號:萱蘇的運維日常