您好,登錄后才能下訂單哦!
測試發現k3s使用一年后出現https tls hand error的問題,重新生成證書也不行,只能通過源碼編譯修重新安裝k3s
環境: ubuntu 16.04
docker 18.06.3
一、安裝git(默認應該已經安裝如果沒有請執行下面的命令)
sudo apt install -y git
二、clone源碼,并切換分支(我這里用的是v1.0.1的版本)
git clone https://github.com/rancher/k3s.git
cd k3s
git checkout -b v1.0.1
三、修改源碼中證書的部分
主要是3個文件,修改如圖
1.第一個文件
vendor/github.com/rancher/dynamiclistener/cert/cert.go
官方下面雖然修正了100年但是好像沒說效果
2.第二個文件 vendor/github.com/rancher/dynamiclistener/factory/cert_utils.go
3.第3個文件 scripts/version.sh ,因為會校驗文件sha值,注釋4-7行
四、編譯(確保可以聯網,因為是用docker編譯的)
1.安裝make
apt install -y make
2.直接執行make命令,編譯時間比較長請耐心等待
3.完成都的文件在dist/artifacts
五、驗證
重新安裝k3s(安裝部分請參考k3s安裝),如果用的官方的離線包這里有個小bug 需要tag一下image
docker tag k8s.gcr.io/pause:3.1 rancher/pause:3.1
驗證的結果
至此可以安心用100年了,不用每年都去升級,當然建議和官方一樣每年升級一次,畢竟漏洞比較多
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。