k3s集群+rancher部署實踐


k3s容器化的使用到目前為止或多或少還是發現不少問題,不過相對於相對較小的項目或者個人使用來說,應該還是很不錯的選擇,可以滿足絕大多數的場景應用;而且總結對比了官方文檔后,搭建初始化的步驟也越發簡單明了。

實列:

master1-192.168.17.85(MySQL5.7版本以上,默認賬號密碼都是root)
master2-192.168.17.86(rancher-stable版本)
master3-192.168.17.87
nginx轉發-192.168.17.88

由於測試設備的不足,部分資源都是重復使用,按理來說應該最好能獨立負責相應的業務。
三台master主機負責k3s的集群搭建,nginx負責代理三台的api地址,也就是默認的6443的端口業務鏈接,保證以后有新的work節點加入,有一個唯一的地址值。

首先
做好准備工作:1.搭建MySQL5.7以上版本,保存三台master地址信息2.安裝nginx3.安裝rancher單節點服務
注意點
1.nginx新增nginx.conf中的配置

stream {
    upstream k3s {
        server 192.168.17.87:6443;
        server 192.168.17.86:6443;
       server 192.168.17.85:6443;
    }

    server {
       listen 6443;
       proxy_pass k3s;
    }
}

2.安裝rancher單節點命令

docker run -d --restart=unless-stopped --name rancher-server -v /data/rancher/:/var/lib/rancher/ -p 8088:80 -p 8443:443 --privileged rancher/rancher:stable

最新版本新增了--privileged參數,需要注意!

 

其次
在任意一台master中執行官方文檔提供的命令,指定server角色

curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn sh -s - server   --datastore-endpoint='mysql://root:root@tcp(192.168.17.85:3306)/k3s'

等待幾分種后,第一台master就安裝完畢,這時需要獲取server的tocken值

cat  /var/lib/rancher/k3s/server/node-token

保證server服務的唯一性
其他另外兩台master就可以執行最新的命令

curl -sfL http://rancher-mirror.cnrancher.com/k3s/k3s-install.sh |K3S_TOKEN=token值  INSTALL_K3S_MIRROR=cn sh -s - server  --datastore-endpoint='mysql://root:root@tcp(192.168.17.85:3306)/k3s'

完成以上步驟后,驗證集群是否創建成功

 

最后
進入安裝好的rancher界面,導入已創建好的k3s集群

 

 

 

需要注意點
最后一步導入過程需要執行命令,在其中任何一台master上就可以執行,但第二條和第三條命令由於本機curl不支持https的鏈接,所以可以手動下載yaml文件后,再使用使用kubectl命令執行yaml文件。

 總結
k3s現在的集群搭建已經比剛開始的官方給出的文檔要好很多了,也是比較推薦k3s+MySQL+rancher的組合。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM