【发布时间】:2020-10-14 23:05:41
【问题描述】:
我已经在我的虚拟机上创建了一个 Kubernetes 集群,并且我一直在尝试使用我自己的域(例如,www.mydomain.xyz)将其公开到 Internet。我已经创建了一个入口资源,如下所示,我还修改了 kubelet 配置以拥有我的域名。我所有的 Pod 和服务都是在这个域名下创建的(例如 default.svc.mydomain.xyz)
root@master-1:~# kubectl get ingress
NAME CLASS HOSTS ADDRESS PORTS AGE
test-ingress <none> www.mydomain.xyz 192.168.5.11 80 5d20h
root@master-1:~# kubectl get svc -n ingress-nginx
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ingress-nginx-controller LoadBalancer 10.103.59.116 192.168.5.11 443:30740/TCP,80:31894/TCP 6d21h
我尝试在我的域 DNS 页面中添加 A 记录,如下所示,但无法添加。
这是我被卡住并且无法继续前进的地方。我是否需要更改集群中的任何内容以在“域 DNS 配置”(Hostinger)中添加此命名空间或在主节点中添加任何内容。
我拥有的域如何将所有流量重定向到我的 kubernetes 集群?
任何帮助将不胜感激。
【问题讨论】:
-
您想暴露 Kubernetes API Server 或运行在 Kubernetes 集群中的 pod?
-
我的集群中有几个应用程序,并创建了一个入口,其中映射到这些应用程序的不同路径。我正在尝试公开这个入口 IP,我们可以使用它访问我的所有应用程序。我可能是错的。
-
将 DNS 配置添加为 A 记录后,我可以通过在我的主机中访问我的域 (mydomain.xyz) 来获得预期的输出。如果我尝试来自其他/不同网络的相同 URL,则没有得到响应。准确地说,无法到达获取页面。
-
您是否确保 DNS 解析在另一网络端正常进行?
-
请告诉您安装了 Kubernetes 的虚拟机在哪里。它是 Hostinger 基础架构中的虚拟机还是本地创建的?其次,如果您想将
A记录指向您的集群的 public IP,如果您想将其公开到 Internet。
标签: nginx kubernetes dns