1

我在谷歌云上使用 k8s 引擎。我想在主节点上运行 kube-proxy,以便通过主节点的 NodePort 类型的服务访问我的 pod。如何在主节点上运行 kube-proxy?

我使用 1.8.10-gke.0 k8s 版本。

4

2 回答 2

1

此外,考虑到 GKE 中的主节点托管在项目外部的托管基础​​架构中,您无法控制它。

例如,您无法决定在 master 上运行 pod,也无法访问或修改那里运行的内容。


为了直接到达主人,你可以运行:

$ kubectl proxy -8080 

然后你直接在 localhost 上找到主人。

例如,您可以尝试从您的 Google Shell 运行它,并通过浏览器的预览访问 Kubernetes 仪表板:

https://8080-dot-[numeber-of-cloud-shell]-dot-devshell.appspot.com/ui

或从外壳本身运行:

wget localhost:8080
于 2018-05-01T13:19:31.323 回答
0

我找到了一种解决方案,但它仍然对我不起作用。可能有人可以做到这一点。

你可以在 k8s 中像 DaemonSet 一样运行 kube-proxy。 链接到 yaml 示例

然后你必须向这个 yaml 添加容忍度,以便 DaemonSet 中的 Pod 可以在主节点上运行。

 "tolerations": [
          {
            "key": "node-role.kubernetes.io/master",
            "value": "true",
            "effect": "NoSchedule"
          }

我希望它对某人有所帮助。如果您通过此示例设法在 master 上运行 kube-proxy,请回答。

于 2018-05-22T08:37:04.857 回答