问题标签 [kubernetes-service]

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.

0 投票
2 回答
2035 浏览

kubernetes - Kubernetes ExternalName 服务添加标头

TLDR:我正在使用 AKS 运行 Kubernetes 集群。我创建了一个外部名称服务来代理外部地址。我想在请求中添加一个“主机”标头。我该怎么做呢?

对于更多上下文,我有一个入口控制器来处理所有传入流量。我想将该流量的子集(基于路由)路由到外部 Azure 函数。我已经使用我的 Azure 函数的主机名设置了一个 ExternalName 服务,并将流量路由到它。但是,由于 Microsoft 处理路由到其函数的方式,标头中需要具有正确 FQDN 的“主机”值。

我不想让发送原始请求的人将此包含在标头中,因此当流量被代理到 Azure 函数时,我想代表他们添加它。

这是我的服务文件:

以及相关的入口规则代码:

0 投票
0 回答
1082 浏览

amazon-web-services - 如何使用现有的 AWS 内部负载均衡器来公开多个 Kubernetes 服务

我正在使用 AWS 中使用 KOPS 部署的 Kubernetes。为了暴露一些服务,我有几个 AWS 内部负载均衡器用于 TCP 端口,如 22、389。这些 TCP 端口不能在 Nginx 等入口控制器中使用。因此,为了为每个部署公开这些 TCP 端口,我使用的是 AWS LB。AWS 对每个区域的负载均衡器数量有限制。

我正在寻找一种将一个 aws 内部负载均衡器用于多个服务的解决方案。例如:一个 AWS LB 可用于端口 22、80、389,并使用 POD 内部端口将流量发送到内部 Kubernetes POD。使用此解决方案,我可以最大限度地减少 AWS LB 的数量并公开指向单个 LB 的多个服务。任何意见表示赞赏。

谢谢萨斯

0 投票
1 回答
536 浏览

kubernetes - Kubernetes 1.13,CoreDNS - 集群 curl 服务?

默认情况下,在 Kubernetes 1.13 中安装了 CoreDNS。您能告诉我如何通过服务名称在集群中进行卷曲吗?

所以我得到了正确的答案。

所以没有。

谢谢。

0 投票
0 回答
75 浏览

docker - 无法使用服务 IP 访问 kafka

要使用 Zookeeper 部署 Kafka,我们使用以下 yaml 代码。Kafka 运行成功,我们可以通过 pod IP 在 Kafka 主题上写入和读取数据,但我们无法通过服务 IP 写入 Kafka 主题。

请说明为什么与端口 9092 上的 Kafka 相关的服务不起作用。

谢谢

0 投票
3 回答
6412 浏览

spring-boot - Kubernetes 服务连接被拒绝

我想用 Kubernetes 创建一个示例应用程序,但是如果我尝试连接到 Kubernetes 中的响应式服务,我会被拒绝连接。

例如,如果我从另一个 pod 连接到http://random-generator-svc:5050/,我会收到一个错误,提示连接被拒绝。

这是为随机生成器创建服务和部署的 yaml 文件:

这是指定“调用者”应用程序的服务和部署的 yaml 文件:

我将类型更改NodePort为尝试是否也存在此错误,但我能够从集群外部访问服务。我的 Kubernetes DNS 解析器可能有问题吗?

非常感谢您的帮助。

0 投票
0 回答
68 浏览

docker - 无法通过 nodeport 访问 Kubernetes 服务

我们已经在 Baremetal 上使用 Kubespray 建立了 Kubernetes 集群版本 1.13。目前有3个master和3个worker。我们已经部署了一些具有 3 个副本的服务。我们使用 NodePort 来公开服务。现在的问题是,某些服务并非在所有使用 NodePorts 的 master 上都可用,它们仅在某些 master 上可用。我的理解是,如果我们使用 NodePort 公开服务,那么它应该可以通过所有 master 和 worker 使用。

0 投票
1 回答
374 浏览

portforwarding - minikube service --url 当服务暴露多个端口时

我的my-app服务公开了多个端口:

执行时minikube service my-app -n default --url,我得到了 minikube 转发的每个端口,但是如果不查询它们,我不知道哪个是哪个。有没有一种简单的方法来打印映射或自己设置端口转发?

0 投票
2 回答
2928 浏览

kubernetes - 无法访问 kubernetes 上的暴露端口

我已经构建了一个自定义 tcserver 映像,公开端口 80 8080 和 8443。基本上你有一个 apache 并且在配置中你有一个代理传递将它转发到 tcserver tomcat。

之后,我创建了一个 kubernetes yaml 来构建仅公开端口 80 的 pod。

以及随之而来的服务。

但问题是我无法访问它。
如果我登录到 pod ( kubectl exec -it tcserver -- /bin/bash),我可以执行 acurl -k -v http://localhost并且它会回复。

我相信我在服务上做错了什么,但我不知道是什么。
任何帮助将不胜感激。

SVC 更改
按照 sfgroups 的建议,我将 svc 添加targetPort: 80到了 svc 中,但仍然无法正常工作。

当我尝试卷曲 IP 时,我得到一个没有路由到主机

这是来自 svc 的描述:

0 投票
2 回答
47 浏览

kubernetes - 如何从同一集群上的另一个节点访问 kubernetes 节点上的服务?

我的服务说明:

我可以使用单独的 ip 单独访问 pod:

还有使用 IP 的服务(这需要通过 url 从另一个节点配置):

我想要的是使用 url 中的服务名称访问服务 (app-checklot) - 这样我就不需要总是更新 url。这可能吗?如果是这样,怎么做?

0 投票
1 回答
812 浏览

service - Kubernetes 服务无法在 IPv4 上访问

我们目前有以下 Kubernetes 设置(v1.13.1,使用 设置kubeadm),它们之间设置了连接:

  • 主节点(裸机)
  • 5 个工作节点(裸机)
  • 2 个工作节点(云)
  • 中间没有代理来访问集群,目前我们正在通过以下方式访问服务hostname:NodePort

NodePort我们在通过2 个云工作节点访问服务时遇到问题。发生的事情是该服务可以通过 IPv6 访问,但不能通过 IPv4:

  • IPv6: telnet localhost6 30005 Trying ::1... 已连接到 localhost6。转义字符是 '^]'。
  • IPv4: telnet localhost4 30005 正在尝试 127.0.0.1...

问题是两者都在裸机节点上工作。如果我使用netstat -napl | grep 30005,我可以看到kube-proxy正在侦听此端口 ( tcp6)。我认为这意味着它不听tcp,但显然情况并非如此(我在裸机工作节点上有相同的图片):

我还读到服务正在使用 IPv6,但基于裸机工作节点,似乎在那里使用 IPv4 也不应该有问题。

知道什么会导致该问题以及如何解决吗?

谢谢你和最好的问候, Bostjan