app1我用和部署了一个入口app2。
example.com/app1 ---> app1
example.com/app2 ---> app2
Run Code Online (Sandbox Code Playgroud)
并在所有机器上定义/etc/hosts。
192.168.1.10 example.com
Run Code Online (Sandbox Code Playgroud)
但我想知道在操作中如何使用DNS和 ingress。
我应该怎么办?Ingress给我带来了什么?我对入口感到困惑。在实际环境中应该如何使用?
对于 DNS,您不能只使用example.com(由IANAexample.com所有)。您必须拥有在入口上配置的 DNS。例如:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: simple-fanout-example
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- host: mydomain.com
http:
paths:
- path: /foo
backend:
serviceName: service1
servicePort: 4200
Run Code Online (Sandbox Code Playgroud)
在上述情况下,您必须拥有mydomain.com. 您可以在任何主要域名注册商(例如GoDaddy)处购买域名。
然后,您必须根据LoadBalancer Kubernetes 服务的设置(AWS、裸机等)向外部公开您的 Ingress ,并在您的域名注册管理器上有一个A 或 CNAME条目,指向该外部端点(对于mydomain.com)。例如,在 AWS 上,该条目将是一个 CNAME,如下所示:xxxxx-xxxxxxxxxxxx.us-west-2.elb.amazonaws.com
注意:您可以完全忽略主机,但入口将仅使用最少的入口资源为此处所述的默认后端提供服务。至于使用您自己的 DNS 服务器,您也可以,只要您的 DNS 服务器正确地将 mydomain.com 解析为您的入口控制器所面对的外部 IP。
希望能帮助到你!
| 归档时间: |
|
| 查看次数: |
8117 次 |
| 最近记录: |