k8s容器內coreDNS替換問題


 1、環境前提

集群版本:kuberteles 1.8

運行時組件:docker

節點服務器系統:centos7

1.1、需求

用騰訊雲的容器服務搭建了一個集群,是參照原有集群的,相當於原樣克隆一個。本想問問騰訊那邊有沒有類似克隆的方案。但被告知沒有。只好手動創建了。

在初期配置階段,負載一直異常,不斷重啟。查看日志發現有url鏈接超時。反應多來可能需要參照原集群配置coreDNs文件。這個是負責容器域名解析的。

 

 

 2、操作過程

我的思路是把原集群的coreDNS文件解析部分復制過來就行。

於是到集群執行命令 kubectl edit cm -n kube-system coredns

 

 

可是當我把我需要的解析復制進去的時候,提示 格式異常,是縮進問題。因為我改的時候用的是tab和空格,誰知道縮進這么嚴格。

好吧,我把tab全部用空格替換。

再次保存。

再次報錯。

我用原集群的格式試試。

復制,替換,保存。

成功。

然后直接退出了編輯模式。

該死的習慣性 :wq

我應該就w的。。。

 

而且不僅是保存退出的問題,而是當我再次進去想要編輯的時候,提示已經被更改過了,需要 用另外的命令:

 

 

但是然並r,說要最新的版本再try 一 try:

 

 

而且文件格式也不是之前整整齊齊的格式了,而是變成:

 

 原來host這塊兒是這樣的:

 

 

難道保存退出后集群就執行了什么操作了?  不知道,而且這個信息太過難找,就沒去深究。

這咋辦。

這時我注意到,雖然編輯命令沒有指定文件,但其實文件路徑在:

 

 

 

 

 我直接替換文件可以吧。

於是順藤摸瓜,找到目錄,不看不知道。所有的更改版本都整整齊齊碼着呢。可把我高興壞了

 

 

根據時間,我找到上一個版本的文件,執行替換:

 

 

哎呀呀,不錯嘛k8s,都學會版本控制了。

於是我興高采烈用原始的版本,去替換最新的版本:

發現也報錯。無法恢復到初始文件。(圖忘記留了)

你都做了版本控制了又何必控制我恢復初始文件呢。搞不懂。

 

最后的最后,還是進文件里,雖然格式不對,但是我一條一條對着改總沒問題了吧。

是的。

勤能補拙!

把ip 域名 手動修改為自己需要的內容。最后ok了。

 

其實我想,肯定是有恢復初始化狀態的方法的,但是我暫時沒找到,所以只能手動。

而且在操作時,如果一時誤操作,千萬別再次胡亂改動,說不定上一份文件可以恢復,但上上上份文件就不能恢復了。

 


免責聲明!

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



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