问题标签 [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.
load-balancing - kubernetes 集群内服务通信
我有一个复合服务 Sc,它消耗 2 个原子服务 Sa 和 Sb,其中所有三个服务都在 Kubernetes 集群中运行。什么是更好的模式
1) 将 Sa,Sb 创建为无头服务,并让 Sc 通过外部负载均衡器(如 NGINX+)与它们集成(使用 DNS 解析器来维护更新的后端 pod)
2)用clusterIP创建Sa,Sb,让Sc通过集群DNS(skyDNS插件)访问/解析它们。这将在内部利用基于 IP 表的负载平衡到 pod。
注意:我的 k8s 集群在自定义解决方案(本地虚拟机)上运行我们有许多复合服务,它们消耗 1 到多个原子服务(如上面的示例)。
编辑:在少数情况下,我还需要向外部网络公开服务,例如 Sb 需要从 Sc 和外部访问。在这种情况下,将 Sb 创建为无头服务会更有意义,否则 DNS 解析器将始终仅返回 clusterIP 地址,并且所有外部请求也将被路由到 clusterIP 地址。我的挑战是两种情况(内部与内部)相互冲突
示例:nginx-service(具有 clusterIP)和 nginx-headless-service(无头)
docker - Kube-DNS 不起作用
我通过 docker - multinode 设置 k8s
DNS 正常启动
当我启动留言簿时,我注意到 dns 日志
但是 dns 查找不起作用
留言板信息报告
留言簿环境页面
我也尝试在 dns pod 中解决
为什么 kube-dns 不起作用?
kubernetes - 如何使用不是特定于 Kubernetes API 的主机的 IP 地址来设置 Kubernetes DNS?
我很难弄清楚如何获得 Kubernetes DNS(skydns,现在称为 kube-dns),以便 kube-dns 容器/pod 知道如何使用无论如何都可以工作的 IP 地址或主机连接到 API 服务器如果一个主节点出现故障,并且另一个 API 服务器在具有不同 IP 地址的主机上启动?
我曾尝试使用实际的 Kubernetes 服务,但它在端口 443 上运行,并且 kube-dns(以及以前的 kube2sky)无法连接到它。
除了拥有删除和重新创建 kube-dns pod 的机制之外,还有更直接的方法吗?
kubernetes - kube-dns 和 weave-net 没有启动
我按照http://kubernetes.io/docs/getting-started-guides/kubeadm/上的说明在 Raspberry Pi 3 上的 Ubuntu 16 上部署 Kubernetes 1.4 。主人启动,仆从加入没问题,但是当我添加编织时,kubedns 不会启动。这是豆荚:
事件日志不显示任何内容。获取 kube-dns 的日志也没有得到任何东西。
我可以做些什么来调试?
dns - 在不写 RC 的情况下设置 SKYDNS_NAMESERVERS
我想kube-dns
在kube-system
命名空间中添加额外的名称服务器(此处提供的解决方案:https ://stackoverflow.com/a/34085756/2461761 ),但是以自动方式执行此操作。
所以我知道我可以通过https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns创建自己的 dns 插件并在系统的命名空间中启动它,但是,我试图提供一个简单的脚本让开发人员使用内置的 DNS 解析来启动他们自己的集群,并且不希望他们关心系统命名空间。
有没有办法修改/设置SKYDNS_NAMESERVERS
环境变量而不必复制复制控制器?
或者甚至通过命令设置它并重新启动kube-dns
部署的 pod?
先感谢您。
vagrant - 如何使用 kubeadm 和 Weave 让 kube-dns 在 Vagrant 集群中工作
我使用 Vagrant 部署了一些 VM 来测试 kubernetes:
master:4 个 CPU,4GB RAM
node-1:4 个 CPU,8GB RAM
基本映像:Centos/7。
网络:桥接。
主机操作系统:Centos 7.2
按照kubeadm 入门指南使用 kubeadm 部署 kubernetes 。将节点添加到集群并安装 Weave Net 后,很遗憾,我无法启动并运行 kube-dns,因为它处于 ContainerCreating 状态:
我认为这个问题在某种程度上与位于节点 1 上的 CrashloopBackoff 状态的 weave-net pod 有关:
列出在 node-1 上运行的容器给出
第一个容器的日志显示一些连接错误:
我缺乏 Kubernetes 和容器网络方面的经验来进一步解决这些问题,因此非常感谢一些提示。观察:所有 pod/nodes 都将其 IP 报告为 10.0.2.15,这是本地 Vagrant NAT 地址,而不是 VM 的实际 IP 地址。
docker - kubernetes安装和kube-dns:打开/run/flannel/subnet.env:没有那个文件或目录
概述
kubeadm init和网络设置后kube-dns无法启动 (SetupNetworkError) :
Kubernetes 版本
环境
适用于 Mac 的 VMWare Fusion
操作系统
内核(例如 uname -a)
问题是什么
我期望发生的事情
kube-dns 运行
如何重现它
amazon-web-services - 为 Kubernetes 本地 DNS 创建特定的 A 记录条目
我有一个在 AWS 中运行的 Kubernetes v1.4 集群,具有自动缩放节点。我还有一个 Mongo Replica Set 集群,其中包含仅 SSL 连接(FQDN 公用名)和公共 DNS 条目:
- node1.mongo.example.com -> 1.1.1.1
- node2.mongo.example.com -> 1.1.1.2
- node3.mongo.example.com -> 1.1.1.3
Kubernetes 节点是允许访问 mongo 集群的安全组的一部分,但只能通过它们的私有 IP。
当查询公共 FQDN 时,有没有办法在 Kubernetes DNS 中使用私有 IP 创建 A 记录?
我尝试的第一件事是在启动时更新 /etc/hosts 的脚本和 ConfigMap 组合(参考。它是向 kube-dns 添加任意记录的一种方法吗?),但这是有问题的,因为其他 Kubernetes 服务也可能更新主机在不同的时间归档。
我还尝试了 Services & Enpoints 配置:
但这失败了,因为服务名称不能是 FQDN ...
kubernetes - kube-dns pod 和 service 仍然运行了一段时间然后突然死掉了
我尝试基于 ansible repo 设置一个 kubernetes dns 插件: https ://github.com/kubernetes/contrib/tree/master/ansible/roles/kubernetes-addons
运行 playbook 后,我既找不到 dns pod 也找不到服务。!!在做了一些讲座之后,(https://github.com/kubernetes/contrib/issues/886#issuecomment-216741889)看来我需要手动运行 rc.yml 和 svc.yml 。这就是我所做的。
不幸的是,dns pod 和服务仍然运行了一段时间,然后突然终止。
我试图在 pod 关闭之前检查一些日志:
etcd 日志
天空DNS日志
健康日志
kube2sky 日志
做错了什么??
kubernetes - kube-apiserver 是启动集群插件还是 kubelet?
我有一个 5 节点 kubernetes 集群,其中 3 个 HA 主机运行良好。不幸的是,据我所知,DNS 不工作或不作为服务存在。
api-server、controller-manager 和 scheduler 都在 pod 中运行,并且使用 quay 上的 hyperkube 1.4.6 映像正常工作。我在 /etc/kubernetes/addons 中的https://coreos.com/kubernetes/docs/latest/deploy-addons.html之后为 dns 服务创建了清单,但它们似乎没有效果。在这一点上,我的印象是 DNS 是内置在 kubernetes 中的,但我很难弄清楚它内置在什么组件中或如何启动它。
是否apiserver
读取/etc/kubernetes/addons
或 的内容kubelet
?我想知道是否需要/etc/kubernetes/addonss
在apiserver pod
.