我是 Kubernetes 中的 Ingress 新手。我在我的 AKS 集群中安裝了 Ingress NGINX 控制器。我的應用程式在 testns(命名空間)中的一個 pod(埠 80)中運行。我在同一個命名空間中為它創建了一個服務。現在我想從外部訪問我的應用程式。所以我為它創建了一個 Ingress yaml。
服務.yaml
kubectl get svc -A | grep my-svc
testns my-svc ClusterIP 10.0.116.192 <none> 80/TCP 93m
入口
Name: example-ingress
Namespace: testns
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
Rules:
Host Path Backends
---- ---- --------
*
/apple my-svc:80 (10.244.1.33:80)
Annotations: ingress.kubernetes.io/rewrite-target: /
Events: <none>
入口.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example-ingress
annotations:
ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /apple
backend:
serviceName: my-svc
servicePort: 80
當我使用<IP_ADDRESS_OF_THE_INGRESS>/apple 訪問時,它給出了 404 錯誤。我想知道為什么無法訪問該應用程式。
uj5u.com熱心網友回復:
嘗試將入口類添加到 YAML 配置中 kubernetes.io/ingress.class: "nginx"
作為注釋
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
例子
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example-ingress
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
rules:
- http:
paths:
- path: /apple
backend:
serviceName: my-svc
servicePort: 80
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/363514.html
標籤:nginx Kubernetes Kubernetes 入口 阿克斯
