问题标签 [skydns]
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.
docker - 如何同时运行 2 个 SkyDns/Skydock 环境?
参考:https ://github.com/crosbymichael/skydock https://github.com/crosbymichael/skydns
首先,我启动了这两个实例。
此设置按预期工作。
现在我想生成另一个生产环境。这一次我只用 env 制作了另一个 skydock 容器,如下所示。
查询 api 不显示生产 skydoc。
现在我想知道如何设置skydock的生产版本。
我必须在单独的 docker-host 中运行吗?如果我在同一个 docker 主机中启动,新容器将在哪个 DNS url 条目中可用?当我启动新容器以在生产环境中可用时,我是否必须传递一些标志/变量?
go - Golang 无法更改导入模块的名称
我正试图让SkyDNSv1起死回生,并从我的 fork 构建它(这里是Dockerfile)。SkyDNS 是一个非常好的和简单的快速服务发现工具,但它很长时间没有更新。
构建过程中存在错误,它是由第三方库引起的。我无法弄清楚为什么会这样:
但是如果你查看导致这个错误的文件,你会注意到 Golang 对influxdb/client
. 我认为编译器不会像应该那样client
替换导入的名称:influxClient
可能我只是错过了一个明显的错误。任何帮助将不胜感激。
docker - 如何从另一个容器通过 172.17.42.1:53:53/udp (docker0) 的暴露端口访问容器 (SkyDns)?Docker 1.7.1、Centos 7
我正在尝试在一个 docker 主机中为多个容器设置 SkyDNS/SkyDock。所以每个容器都应该使用 172.17.42.1 (/etc/resolv.conf) 的 dns。
我遵循了README.md 中的设置部分:
和测试通过
它不工作。我可以从“redis-cli”容器主机 172.17.42.1 ping,但无法访问 172.17.42.1:53/udp。
有什么建议么?
kubernetes - 名称或服务未知 [tcp://redis-slave:6379]
使用 Kube-Sky 插件运行 Guestbook Kubernetes 应用程序。在留言簿应用程序页面上,我在 JavaScript 控制台中收到此错误:
以下是我可以在我的设置中找到的与 DNS 相关的所有更改(与提供的模板相比):
dns - Kubernetes 多集群服务发现
涉及 如何从同一项目中的另一个 Kubernetes 集群调用 Kubernetes 集群公开的服务。
自从 Kubernetes 自 7 月以来发生了很大变化,再次询问。
语境:
我正在开发具有多个服务于不同目的的集群的基础架构,例如:
- 集群 A 运行服务/应用程序,为消费创建数据
- 集群 B 运行服务/应用程序,使用集群 A 中的应用程序创建的数据
- Cluster C 运行 Redis、Memcache 等数据服务。
所有集群都在default
命名空间中。
问题:
在 Kubernetes 中,每个集群都有自己的 kubernetes(在default
命名空间中)和 kube-dns(在kube-system
命名空间中)具有不同 IP 的服务。
这种设置发生的情况是,上面集群 A 和 B 中的服务无法发现(在服务发现术语中),比如说集群 C 中的 Redis。所以nslookup redis.default.svc.cluster.local
集群 A/B 中的一个服务中的 a 会返回** server can't find redis.default.svc.cluster.local: NXDOMAIN
. 注意:这适用于集群 C。
我已经阅读了尽可能多的关于 kube-dns 的文档,并且几乎都假设一个集群设置。
集群信息:
以下是/etc/resolv.conf
两个不同的集群,它们显示了没有共同 kube-dns 祖先的 DNS 名称服务器:
集群 A:
集群 C:
两个集群都在kube-system
命名空间中使用它们各自的 IP 运行这些服务:
这个设置的理想修复/更新是什么,可以在 GCE 环境中的所有 Kubernetes 集群中发现共享服务?
docker - SkyDNS 不适用于 Kubernetes 1.1.2
我在 CoreOS alpha (877.1.0) 上成功安装了 Kubernetes 1.1.2 将服务文件作为链接https://gist.github.com/thanhson1085/5a005e92245cb2288dee
之后,我想为我的 Kubernetes 即服务发现运行 SkyDNS AddOn。我遵循了这个指南:https ://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns
但它不起作用:
如果我查找全局域,它会起作用:
日志:
kube2sky 日志:
以下是我的安装信息:
查看 Kubelet 服务状态:
请帮我修复它。在这种情况下,我可以使用 Consul 来放置 SkyDNS 吗?
docker - Kubernetes:spec.clusterIP:无效值?
是否提示,什么在kubernetes中链接了这条消息:
那时DNS_SERVICE_IP = 10.3.0.10
,和SERVICE_IP_RANGE = 10.3.0.0/16
我的IP地址:
docker - Kubernetes 子域上的访问服务
我有以下设置:
- 私有 OpenStack 云- o̲n̲l̲y̲ Web UI (Horizon) 可访问
(API 受到限制,但也许我可以访问) - 我使用CoreOS设置了一个主节点和三个节点
- 资源是标准化的(作为 OpenStack 的默认设置)
- 我遵循了GitHub 上的 CoreOS 入门指南(即我使用默认的 YAML 来提供云配置)
当我阅读诸如 Web UI (kube-ui) 之类的扩展时,可以将其添加为附加组件 - 我已添加(仅 kube-ui)。
现在,如果我运行诸如 simple-nginx 之类的测试,我会得到以下输出:
创建豆荚:
创建服务:
获取服务信息:
我可以从节点的每个(!)外部 IP 访问我的服务。
我现在的问题如下:
如何使用子域访问任何已启动的服务以太网,因此如何设置此配置(例如,我有 domain.com 作为示例)或者它是否可以打印在我必须访问我的服务的节点 IP 上(尽管我有只有两个副本(?!))?
为了更容易理解地描述我的想法,我的意思是:
- 给定域:domain.com(指向主控)
- 启动服务simple-nginx
- 可以使用simple-nginx.domain.com访问服务
docker - 守护程序集中的 SkyDNS 和本地 DNS 解析
我们正在考虑在每个带有守护程序集或静态 pod(通过 Kubernetes 清单)的 Kubernetes 主机上运行 SkyDNS。我们想让每个容器都使用本地 SkyDNS,故意绕过 Kubernetes 集群 IP / kube-proxy 路由。实现此目的的一种方法是将 DNS 端口 53 从 SkyDNS pod 映射到每个主机,并强制每个容器在主机上解析。可能是通过在 systemd 单元中使用 --cluster-dns 以某种方式将 docker 网桥 IP 传递给 kubelet。
是否有更好的选择来实现相同的目标?
谢谢,安德烈
kubernetes - 无法从 pod 内部 ping ClusterIP,并且 DNS 不适用于 google.com 等外部域
我已经在 Bare-metal/Ubuntu 上安装了 Kubernetes。我6b649d7f9f2b09ca8b0dd8c0d3e14dcb255432d1
在 git 中提交。我用cd kubernetes/cluster; KUBERNETES_PROVIDER=ubuntu ./kube-up.sh
后面跟着cd kubernetes/cluster/ubuntu; ./deployAddons.sh
来启动集群。一切都很顺利,集群起来了。
我/ubuntu/config-default.sh
的如下:
然后,我使用以下 yml 文件创建了一个 pod:
以及使用以下 yml 的服务:
然后,我使用docker exec -it [CONTAINER_ID] bash
. 主要有两个问题:
- 我无法 ping google.com 之类的外部域,但我可以 ping 8.8.8.8 之类的外部 IP。所以容器可以访问互联网。
- 内部服务解析为更正内部 ClusterIP,但我无法从容器内部 ping 该 IP。
主机/etc/resolve.conf
文件如下:
容器的/etc/resolve.conf
文件如下:
关于第一个问题,我认为它可能与 SkyDNS 名称服务器配置错误或我必须做但我不知道的自定义配置有关。
但是,我不知道为什么容器无法 ping ClusterIP。
任何解决方法?