[解決済み] Nginx Ingress: サービス "ingress-nginx-controller-admission" が見つかりません。
質問
1年ほど前に顧客向けにkubernetesクラスタを作成し、ステージングとプロダクションの2つの環境をネームスペースで分けて構築しました。現在、アプリケーションの次のバージョンを開発中で、この開発作業のための環境が必要なので、独自のネームスペースにベータ環境を作成しました。
MetalLBとnginx-ingressを搭載したベアメタルkubernetesクラスタです。nginx ingressコントローラはhelmでインストールし、ingressは以下のマニフェストで作成しています(名前空間はデプロイメントパイプラインで強制されるので、マニフェストでは見えません)。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: api-ingress
annotations:
#ingress.kubernetes.io/ssl-redirect: "true"
#kubernetes.io/tls-acme: "true"
#certmanager.k8s.io/issuer: "letsencrypt-staging"
#certmanager.k8s.io/acme-challenge-type: http01
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/configuration-snippet: |
more_set_headers "X-Robots-Tag: noindex, nofollow";
nginx.ingress.kubernetes.io/enable-cors: "true"
nginx.ingress.kubernetes.io/cors-allow-methods: "GET, OPTIONS"
nginx.ingress.kubernetes.io/cors-allow-origin: "*"
nginx.ingress.kubernetes.io/cors-allow-credentials: "true"
spec:
tls:
- hosts:
- ${API_DOMAIN}
secretName: api-cert
rules:
- host: ${API_DOMAIN}
http:
paths:
- backend:
serviceName: api
servicePort: 80
マニフェストを適用すると、kubernetes は次のようなエラーで応答します。
サーバーからのエラー (InternalError): "STDIN" を作成する際にエラーが発生しました。内部エラーが発生しました: ウェブフック "validate.nginx.ingress.kubernetes.io" の呼び出しに失敗しました。投稿 https://ingress-nginx-controller-admission.ingress-nginx.svc:443/extensions/v1beta1/ingresses?timeout=30s : サービス "ingress-nginx-controller-admission" が見つかりませんでした。
ingressマニフェストのapiVersionを更新しようとしたところ
networking.k8s.io/v1beta1
(これは新しいnginx-ingressコントローラがhelm経由でインストールされるapiVersionです) しかし、同じエラーが発生します。
私の最初の疑念は、たとえingressコントローラが名前空間によって分けられていたとしても、現在のインストールと1年前のインストールとの間のnginx-ingressの変更に関連しているということです。しかし
ingress-nginx-controller-admission
を、どの名前空間でも使用することができるため、どのように進めばよいのか分からない。
解決方法は?
私は同じ問題に直面し、別の方法で解決策を見つけました。 SOスレッド .
以前、マニフェストを使ってnginx-ingressをインストールしたことがあります。それが作成した名前空間を削除したら
ドキュメントにあるようにclusterroleとclusterrolebindingは
を削除することはできません。
ValidatingWebhookConfiguration
は、マニフェストにインストールされますが、デフォルトで helm を使用する場合はインストールされません。として
アルギア
は、helmのパラメータを使用して有効にすることができます。
を削除したら
ValidatingWebhookConfiguration
helmのインストールは完璧に行われました。
kubectl delete -A ValidatingWebhookConfiguration ingress-nginx-admission
関連
-
[解決済み] KubernetesのジョブにおけるbackoffLimitの理解
-
kubenetes: ポッドにバインドされていないPersistentVolumeClaimsがあります。
-
[解決済み] kubeadm init は kubelet が実行中または健全でないことを表示します。
-
[解決済み] Helmを以前のリリースにロールバックする
-
[解決済み] Kubectl アップデート configMap
-
[解決済み] kubernetesのPodが "CrashLoopBackOff "でクラッシュし続けるのですが、ログが見つかりません。
-
[解決済み] kubernetesのpodでbusyboxにcurlをインストールすることは可能ですか?
-
[解決済み】すべてのkubernetesネームスペースのすべてのPodを削除するコマンド
-
[解決済み】KubernetesのPodを削除すると再作成される。
-
[解決済み] Kubernetesでconfigmapが更新されたらPodを再起動する?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Kubernetes: kubectl run: コマンドが見つかりません。
-
[解決済み] Kubernetesです。kubectl configからクラスタとコンテキストを削除するにはどうすればいいですか?
-
[解決済み] KubernetesのジョブにおけるbackoffLimitの理解
-
[解決済み] Nginx Ingress: サービス "ingress-nginx-controller-admission" が見つかりません。
-
Kubernetesジョブコントローラーのソースコード解析
-
[解決済み] PodがTerminatingステータスで立ち往生している
-
[解決済み] Kubectl アップデート configMap
-
[解決済み】"ImagePullBackOff "をデバッグするにはどうしたらいいですか?
-
[解決済み】すべてのkubernetesネームスペースのすべてのPodを削除するコマンド
-
[解決済み】gcloudとminikubeの間でkubectlのクラスタを切り替える方法