需要使用下面的代码中指定的Ingress 主机名/子域从外部访问应用程序。 例如。test-app.dev-cluster-poc.company.domain。
cat app-ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
namespace: ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
name: app-ingress
spec:
rules:
- host: test-app.dev-cluster-poc.company.domain
http:
paths:
- backend:
serviceName: appsvc1
servicePort: 80
path: /app1
- backend:
serviceName: appsvc2
servicePort: 80
path: /app2
在使用url中的步骤进行故障排除时,我发现“ kubectl get ingress”输出中没有地址。期望如下所示的IP地址。
从外部访问应用程序(例如注册主机名(test-app.dev-cluster-poc.company.domain)或添加A记录或在kubernetes集群中运行任何dns服务)需要进行哪些必要的配置。
是什么导致“ kubectl get ingress”命令中的ADDRESS列为空。
[编辑]
apiVersion: v1
kind: Service
metadata:
name: appsvc1
namespace: ingress
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
app: app1
如下所示的Nginx控制器服务。
cat nginx-ingress-controller-service.yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-ingress
namespace: ingress
spec:
type: NodePort
ports:
- port: 80
nodePort: 30000
name: http
- port: 18080
nodePort: 32000
name: http-mgmt
selector:
app: nginx-ingress-lb