问题标签 [kube-dns]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - kube-dns 手动安装 - 未找到请求的资源
我正在尝试按照Kubernetes The Hard Way for AWSkube-dns
手动安装插件。
kube-dns
从这个 yaml创建服务时出现错误:
执行:
kubectl create -f services/kubedns.yaml
Error from server (NotFound): the server could not find the requested resource
知道 kubectl 找不到的缺失资源是什么吗?
更新:详细输出--v=8
kubernetes - Kube-dns always in pending state
I have deployed kubernetes on a virt-manager vm following this link
https://kubernetes.io/docs/setup/independent/install-kubeadm/
When i join my another vm to the cluster i find that the kube-dns is in pending state.
Can anyone just help me how to deconstruct this and find the actual issue??
Any help would be off great use
Thanks in advance.
kubernetes - 如何配置 kubernetes 从托管在同一集群/内部的注册表中提取容器映像
我正在尝试让我的 kubernetes 集群从在其内部运行的容器注册表服务中提取。我有 kube dns 设置,我有一个注册表部署和服务正在运行。我可以通过节点上的主机命令解析服务内部名称。我已经--dns
使用 kube dns 服务的地址向 docker daemon 添加了标志。我也让 kubelet 运行,并将--cluster-dns
标志设置为相同的地址。然而,当我尝试使用这个注册表创建一个 pod 时,不知何故这就是我得到的。
Failed to pull image "kube-registry.kube-system.svc.cluster.local/myuser/myimage": rpc error: code = Unknown desc = Error response from daemon: Get https://kube-registry.kube-system.svc.cluster.local/v1/_ping: dial tcp: lookup kube-registry.kube-system.svc.cluster.local: no such host
不知何故,即使将 kube dns 地址明确提供给 dockerd 和 kubelet,由于名称解析,从注册表服务中提取图像也会失败。我错过了什么?
nginx - 从 Pod 到服务的 Weavenet 网络连接(使用 kubeadm 的 Kubernetes 1.9)
我有一个本地的 Kubernetes 3 节点集群,安装了 weave-Net 作为 Overlay-Network-Plugin。我的目标是尝试 kubernetes 的网络策略,并将此过程的日志消息导出到 elk-stack。
不幸的是,我无法继续,因为我无法解决我的 kube-dns 问题。名称解析似乎有效,但从 pod 到服务的网络连接存在问题。
这里有一些关于我的设置的事实(有关版本/一般配置详细信息,请参见下文):
- 我登录到一个 pod“
busybox
” - 我有一个名为“
nginx
”的服务,它与一个已启动并正在运行的 nginx-pod 连接 - 从busybox,我不能ping dns:
25 packets transmitted, 0 packets received, 100% packet loss
如果我尝试“
/li>nslookup nginx
”,我会得到:我还更改了手动更改busybox-Pod上的配置文件,以在没有FQDN的情况下进行名称解析:
这对我来说似乎不是一个好的解决方法,但至少它正在工作,并且 nslookup 为我提供了 nginx-Service 的正确 IP:
/li>现在,回到我的网络问题: pod 上似乎没有正确的网络接口可以建立与服务的连接:
/li>
busybox-pod 有这个 IP:172.17.0.2
而 DNS 在以 10 开头的子网中。 dns: 的 IP 10.96.0.10
。
- Weavenet 有时会在一个工作节点上崩溃,但在一般情况下,它显示为“正在运行”,我认为这不是原因。
--> 谁能看到我网络中的底层配置错误?我很高兴得到提示!:)
一般信息:
Kubernetes/kubectl: v1.9.2
我使用 kubeadm 安装。
unname -a:Linux controller 4.4.0-87-generic #110-Ubuntu SMP Tue Jul 18 12:55:35 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
码头工人版本:
织网:2.2.0
kubernetes - kube-dns 无法列出 *v1.Endpoints getsockopt:连接被拒绝
我有一个使用 flannel(不确定是否相关,可能是)作为 CNI 提供程序的 kubernetes 集群(v1.10)。尝试应用 kube-dns 但它会重复显示 podCrashLoopBackOff
的日志kubedns
:
我的kube-dns
清单中没有任何内容涉及端口443
并且kube-apiserver
配置为6443
. 它试图与被拒绝的事物建立联系是什么?
我也不知道它是否与具有 ip 的 kube-dns pod 有任何关系10.88.0.3
:
再次,这是从哪里来的?这不是我配置的东西,它不在我的服务网络或 pod 网络 CIDR 范围内:
我完全糊涂了,如果对发生的事情有任何解释,我将不胜感激。
kube_dns_version:1.14.10 flannel_version:v0.10.0
kubernetes - kube-dns getsockopt 没有路由到主机
我正在努力了解如何在 kubernetes 1.10 上使用 flannel 正确配置 kube-dns,并将 containerd 作为 CRI。
kube-dns 无法运行,出现以下错误:
确实没有到 10.96.0.1 端点的路由:
什么负责配置集群服务地址范围和关联路由?是容器运行时、覆盖网络(在本例中为 flannel)还是其他什么?应该在哪里配置?
配置主机和我的 pod 网络之间的10-containerd-net.conflist
网桥。服务网络也可以在这里配置吗?
编辑:
从 2016 年开始就遇到了这个问题:
截至几周前(我忘记了发布,但它是 1.2.x,其中 x != 0)(#24429)我们修复了路由,以便到达以服务 IP 为目标的节点的任何流量都将被处理为如果它来到一个节点端口。这意味着您应该能够将您的服务集群 IP 范围的静态路由设置为一个或多个节点,并且这些节点将充当桥接器。这与大多数人使用法兰绒搭接覆盖层的技巧相同。
它不完美,但它有效。如果您想要最佳行为(即不丢失客户端 IP),将来需要更精确地使用路由,否则我们将看到更多的非 kube-proxy 服务实现。
这仍然相关吗?我需要为服务 CIDR 设置静态路由吗?还是问题实际上与kube-proxy
法兰绒或容器有关?
我的法兰绒配置:
和 kube-proxy:
编辑:
看了kube-proxy调试步骤,好像kube-proxy
联系不上master。我怀疑这是问题的很大一部分。我在 HAProxy 负载均衡器后面有 3 个控制器/主节点,它绑定到192.168.160.1:6443
并转发循环到10.240.0.1[1|2|3]:6443
. 这可以在上面的输出/配置中看到。
在kube-proxy.service
,我已经指定--master=192.168.160.1:6443
。为什么尝试连接到端口 443?我可以改变这个 - 似乎没有端口标志吗?出于某种原因,它是否需要使用端口 443?
dns - 服务名称在主节点而不是其他节点上解析
按照DNS 故障排除说明,服务名称在主节点的 pod 上解析,但不在从节点的 pod 上。我在带有法兰绒的 VirtualBox CentOS VM 上设置了 2 节点 kubeadm 集群。
来自大师:
从奴隶:
@PJMeisch在评论中提到了这个问题,但没有解决方案,因为它不是实际问题。
每个节点(VM)上的 /etc/resolv.conf 仅将我的主机 IP 作为名称服务器。这是错的吗?
法兰绒是这个设置的坏选择吗?
docker - KubeDNS 错误,服务器行为异常
我在尝试执行到容器中时遇到问题:
或者从容器中获取日志:
我的想法已经不多了......我主要遵循 kubernetes-the-hard-way,但已将它安装在 DigitalOcean 上并Flannel
用于 pod 网络(我也在使用digitalocean-cloud-manager
它似乎运行良好)。
此外,它似乎kube-proxy
有效,日志中的一切看起来都不错,并且iptable
配置看起来不错(对我/菜鸟来说)
网络:
- 10.244.0.0/16 法兰绒/Pod 网络
- 10.32.0.0/24 kube-proxy( ? ) / 服务集群
- kube3 206.xx211 / 10.133.55.62
- kube1 206.xx80 / 10.133.52.77
- kube2 206.xx213 / 10.133.55.73
- 工人1 167.xx148 / 10.133.56.88
- worker3 206.xx121 / 10.133.55.220
- 工人2 206.xx113 / 10.133.56.89
所以,我的日志:
kube-dns:
Kube 代理:
iptables -L -t nat
库贝莱
配置:
工人:
库贝莱特:
系统服务:
kubelet-config.yaml:
kube-代理:
系统服务:
ExecStart=/usr/local/bin/kube-proxy \ --config=/var/lib/kube-proxy/kube-proxy-config.yaml -v 4
kube-proxy-config.yaml:
库贝配置:
控制器:
kube-apiserver:
kube-控制器-管理器
法兰绒配置/日志:
https://pastebin.com/hah0uSFX (因为帖子太长了!)
编辑:
route
:
ip route get 10.32.0.1
:10.32.0.1 via 206.189.96.1 dev eth0 src 206.189.96.121 uid 0
重新启动会启动所有工作人员和 pod,包括 kube-dns,因此它们不再崩溃,但是在尝试执行 exec 或运行时,我仍然遇到一些问题:
kubernetes - Kubernetes DNS 不解析外部地址
我的 kubernetes 集群和 DNS 有一些问题。
我们最近更新到 RHEL 7.5,其中一台机器是 Master。一旦它重新上线,大多数事情都会正常工作,但我只是注意到来自集群的外部连接无法解析。内部沟通效果很好。
这是busybox nslookup的结果:
kubedns 状态
所有的豆荚都说它们已经启动了
来自 kubedns pod 的最新日志
我假设这与重新启动有关。
Kubernetes:版本 1.10.3
DNS:kube-dns
网络:织网
主机操作系统:RHEL 7.5
任何帮助都会很棒。
谢谢
kubernetes - 使用 kops 安装时,kube-dns pods 不运行
我已经使用 kops 设置了一个独立的 k8s 集群,所以我希望所有 pod 也只在 1 个 master 上运行。集群启动良好,但 kube-dns 和 kube-autoscaler pod 没有运行,处于挂起状态。这是节点描述
但是/var/log/kube-scheduler.log
是:
我可以使用命令手动修复它,
kubectl taint nodes --all node-role.kubernetes.io/master-
但我希望在创建集群时启用它kops create cluster
谢谢