微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何访问远程机器上的 Kubernetes 仪表板

如何解决我如何访问远程机器上的 Kubernetes 仪表板

我是 kubernetes 的新手,我正在尝试在远程服务器上设置 clsuter。 为此,我使用了 microk8s 和来自 hetzner-cloud (https://www.hetzner.com/de/cloud) 的服务器。

我用ssh进入服务器并按照linux(https://microk8s.io/)的microk8s安装说明进行操作。这一切似乎都运行良好。我现在的问题是我还没有找到访问 kubernetes-dashboard 的方法

我已经尝试过使用 NodePort 和 microk8s kubectl proxy --disable-filter = true解决方法,但它不起作用,出于安全原因不推荐使用。使用禁用过滤方法,可以访问登录页面,但没有响应。

我还尝试使用 ssh 隧道和本教程从外部访问 dashbourd:How can I remotely access kubernetes dashboard with token

隧道似乎工作正常,但我仍然无法访问端口。

现在我有两个主要问题:

1:如果 kubernetes 不希望您从外部访问仪表板,您通常如何使用 kubernetes。因为您通常不在客厅以外的租用服务器上运行您的服务吗?我根本不明白有什么意义?

2:我如何访问仪表盘?

如果有人可以帮助我,我会很高兴。一个月以来,我已经在为这个问题苦苦挣扎。 :)

最好的问候, 妈妈

解决方法

为了使用 HTTP 从外部访问 K8s 服务,您应该配置和使用入口控制器。

在入口运行后,您将能够指定“路径”或路由以及指向您的服务的端口和名称。

完成此操作后,您应该可以访问仪表板

示例配置 (reference)

---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: dashboard-google
  namespace: kube-system
  annotations:
    nginx.ingress.kubernetes.io/secure-backends: "true"
    nginx.ingress.kubernetes.io/ssl-passthrough: "true"
spec:
  tls:
    - hosts:
      - kube.mydomain.com
      secretName: tls-secret
  rules:
    - host: kube.mydomain.com
      http:
        paths:
        - path: /
          backend:
            serviceName: kubernetes-dashboard
            servicePort: 443

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。