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了。
其实我想,肯定是有恢复初始化状态的方法的,但是我暂时没找到,所以只能手动。
而且在操作时,如果一时误操作,千万别再次胡乱改动,说不定上一份文件可以恢复,但上上上份文件就不能恢复了。
-----------------------------------------------------------------
能力不高,水平有限,如有不妥还请指出,谢谢!
本文来自博客园,作者:Laijx,转载请注明原文链接:https://www.cnblogs.com/laijx/p/13650150.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下