這篇文章給大家分享的是離線部署k3s的詳細教程,相信大部分人都還不知道怎么安裝部署,為了讓大家學會,給大家總結了以下內容,話不多說,一起往下看吧。
目前創(chuàng)新互聯建站已為上1000家的企業(yè)提供了網站建設、域名、雅安服務器托管、網站托管、服務器托管、企業(yè)網站設計、唐山網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
部署環(huán)境:
系統(tǒng): ubuntu 16.04
組件: docker-ce18.06 (請?zhí)崆鞍惭b,如果不是docker的,k3s會提供containerd的方式,只是操作沒docker方便,這里以docker為示例)
一、下載離線包(放在同一目錄)
1.所有的container images
https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s-airgap-images-amd64.tar
2.主要的二進制文件k3s
https://github.com/rancher/k3s/releases/download/v1.17.0%2Bk3s.1/k3s
3.下載官方提供的install.sh
https://github.com/rancher/k3s/blob/master/install.sh
二、部署
1.部署master
主要添加跳過鏡像下載的參數:
export INSTALL_K3S_SKIP_DOWNLOAD=true
服務端腳本:
#/bin/bash
set -e
sudo cp k3s /usr/local/bin/
#use docker
sudo docker load < k3s-airgap-images-amd64.tar.gz
if [ $(cat install.sh|grep "export INSTALL_K3S_SKIP_DOWNLOAD=true"|wc -l) -eq 0 ];then
sudo sed -i 3i"export INSTALL_K3S_SKIP_DOWNLOAD=true" install.sh
fi
sudo bash install.sh
#use docker
if [ $(cat /etc/systemd/system/k3s.service|grep server|grep docker|wc -l) -eq 0 ];then
sudo sed -i 's?server?server --docker?g' /etc/systemd/system/k3s.service
fi
sudo systemctl daemon-reload
sudo systemctl restart k3s
bash create-client.sh docker
2.生成agent腳本,添加token到服務的文件中
模板腳本client-tmp-docker.sh:
#!/bin/bash
set -e
cp -f k3s /usr/local/bin/
K3S_TOKEN="TOKENK3S-SERVER"
cat >k3s-agent.service<
生成client.sh的腳本create-client.sh
#!/bin/bash
set -e
K3S_TOKEN=$(sudo cat /var/lib/rancher/k3s/server/node-token)
if [ "$1" != "docker" ];then
cat client-tmp-containerd > client-k3s.sh
sed -i "s?TOKENK3S-SERVER?$K3S_TOKEN?g" client-k3s.sh
sed -i "s?SEVERKESIP?$(hostname -i)?g" client-k3s.sh
else
cat client-tmp-docker > client-k3s.sh
sed -i "s?TOKENK3S-SERVER?$K3S_TOKEN?g" client-k3s.sh
sed -i "s?SEVERKESIP?$(hostname -i)?g" client-k3s.sh
fi
3.部署agent
復制client.sh、k3s、k3s-airgap-images-amd64.tar、install.sh到需要部署agent的主機上,一定要放在同一目錄下
執(zhí)行cd /path && bash client.sh
完成后驗證:
看完這篇文章,你們學會離線部署k3s的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注創(chuàng)新互聯行業(yè)資訊頻道,感謝各位的閱讀。