我的 kubernetes 集群中有 2 個命名空間,一個first-nginx稱為second-nginx. 我現在用的圖表入口,nginx的..不是的穩定/ nginx的,入口的,現在已經過時了。
我正在嘗試安裝多個 nginx 控制器,因為我需要通過 GKE 中已經創建的靜態 ip 公開它們。我已經像這樣在 first-nginx 命名空間中成功安裝了我的第一個圖表
helm install nginx-ingress ingress-nginx/ingress-nginx --namespace first-nginx --set ingress-hljs-string">--set controller.service.loadBalancerIP={first-IP-address}"
我現在試圖在第二個命名空間中做同樣的事情
helm install nginx-ingress-2 ingress-nginx/ingress-nginx --namespace second-nginx --set ingress-hljs-string">--set controller.service.loadBalancerIP={second-IP-address}"
但是我收到如下所示的錯誤。
錯誤:呈現的清單包含已存在的資源。無法繼續安裝:名稱空間“”中的 IngressClass“nginx”存在且無法匯入當前版本:所有權元資料無效;注釋驗證錯誤:鍵“meta.helm.sh/release-name”必須等于“nginx-ingress-2”:當前值為“nginx-ingress”;注釋驗證錯誤:鍵“meta.helm.sh/release-namespace”必須等于“second-nginx”:當前值為“first-nginx”
我該如何解決這個問題?當我使用穩定/nginx-ingress 圖表時,這似乎有效,我可以在其中執行類似操作helm install nginx-ingress-devices stable/nginx-ingress --namespace second-nginx --set controller.ingressClass="nginx-devices"
我如何使用ingress-nginx 實作同樣的目標
uj5u.com熱心網友回復:
您需要controller.ingressClassResource.controllerValue為第二個 ingress-nginx定義額外的,以便當一個入口資源參考這個類時,它知道要使用哪個控制器。
helm install nginx-ingress-devices ingress-nginx/ingress-nginx \
--namespace second-nginx \
--set controller.ingressClassResource.name=second-nginx \
--set controller.ingressClassResource.controllerValue="k8s.io/second-nginx" \
--set controller.ingressClassResource.enabled=true \
--set controller.ingressClassByName=true
uj5u.com熱心網友回復:
您應該使用controller.ingressClassResource.name為它們設定不同的入口類名稱
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/357694.html
標籤:nginx Kubernetes google-kubernetes-engine kubernetes-helm nginx-ingress
