coreDNS一直处于创建中解决

https://blog.csdn.net/gsying1474/article/details/53256599


执行:

[root@lab1 coredns]# kubectl delete -f coredns.yaml



现象:

[root@lab2 k8s]# kubectl get pods -n kube-system
NAME                       READY     STATUS              RESTARTS   AGE
coredns-6c65fc5cbb-7xvzs   0/1       ContainerCreating   0          2m
coredns-6c65fc5cbb-kh4zg   0/1       ContainerCreating   0          2m



原因:

修改node名称后的遗留症状




查看pod日志,最后部分

[root@lab2 k8s]# kubectl describe po coredns-6c65fc5cbb-7xvzs -n kube-system

"cni0" already has an IP address different from 10.244.5.1/24



解决:

所有节点执行如下:

rm -rf /var/lib/cni/flannel/* && rm -rf /var/lib/cni/networks/cbr0/* && ip link delete cni0
rm -rf /var/lib/cni/networks/cni0/*

 

转载于:https://www.cnblogs.com/effortsing/p/10014611.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CoreDNS 是一个 DNS 服务器, 它支持自定义插件来扩展其功能. 为了设置内网域名解析, 需要在 CoreDNS 使用 "forward" 插件. 这个插件允许将请求转发到另一个 DNS 服务器进行解析. 在 Corefile 添加如下配置: . { forward . 192.168.0.1 } 其, . 代表所有请求, 192.168.0.1 是内网 DNS 服务器的 IP 地址. 在重启 CoreDNS 之后,它将对所有请求转发到内网 DNS 服务器进行解析. 如果还有其他需要解析的域名,可以在配置添加 example.com { forward . 192.168.0.1 } 这样就可以解析 example.com 域名了. ### 回答2: 使用 CoreDNS 设置内网域名解析很简单。首先,要确保已经安装并启动了 CoreDNS 服务器。接下来,按照以下步骤进行配置: 1. 打开 CoreDNS 的配置文件(一般是 `Corefile`),可以使用任何文本编辑器进行编辑。 2. 在文件找到或创建一个 `.:53` 块,表示监听所有网络接口的 DNS 请求。通常,这个块已经预先存在。 3. 在 `.:53` 块,添加一个 `file` 插件配置块,用于指定解析的内网域名和对应的 IP 地址。例如: ``` .:53 { file { fallthrough database.db } } ``` 这里的 `database.db` 是一个存储了内网域名和对应 IP 地址的数据库文件。你需要在此文件添加你想要解析的域名和 IP 地址记录。格式如下: ``` example.com. { A 192.168.1.100 CNAME server1.example.com. } ``` 这里的 `example.com` 是你要解析的域名,`A` 和 `CNAME` 是记录类型,`192.168.1.100` 是对应的 IP 地址。 4. 保存并关闭文件。 5. 重新加载或重启 CoreDNS 服务,使配置生效。 配置完成后,你就可以使用 CoreDNS 解析内网域名了。只需将你的计算机或设备的 DNS 服务器设置为 CoreDNS 服务器的 IP 地址,然后进行域名解析即可。 ### 回答3: CoreDNS 是一个灵活的、可扩展的开源 DNS 服务器,可以用于解析域名。要在 CoreDNS 设置内网域名解析,可以按照以下步骤进行配置: 1. 编辑 CoreDNS 的配置文件。可以使用文本编辑器打开 CoreDNS 的配置文件(通常为 Corefile),文件位于 /etc/coredns 或 /etc/coredns/Corefile。 2. 在配置文件添加一个 zone 条目来定义内网域名解析的区域。例如,如果你的内网域名为 example.local,可以添加以下内容:example.local { }。 3. 在区域定义内网域名的解析规则。可以使用 `forward` 指令将请求转发到其他 DNS 服务器进行解析。例如:example.local { forward . 192.168.1.1 },其 192.168.1.1 是你内网DNS 服务器的 IP 地址。 4. 保存配置文件并重新启动 CoreDNS 服务。你可以使用 systemctl 命令重启服务,例如:systemctl restart coredns。 配置完毕后,CoreDNS 将会通过监听的端口接收来自其他设备的 DNS 请求,并根据配置文件的规则进行域名解析。在内网,设备的 DNS 设置应该指向 CoreDNS 服务器的 IP 地址。当设备发送域名请求时,CoreDNS 会根据配置文件的规则进行解析,并返回相应的 IP 地址给设备,从而实现内网域名解析。 通过以上的配置,CoreDNS 可以满足内网环境下的域名解析需求,为内网设备提供方便的域名访问能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值