(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Kubernetes】ingress作成時にignoring add for ingress .. annotation .. with valueとして失敗する事象

スポンサーリンク

事象

Ingressを作成するもIngressコントローラーにて以下のログが出力され

ignoring add for ingress test-ingress based on annotation kubernetes.io/ingress.class with value

IngressにIPが割り振られない。

status:
    loadBalancer: {}
環境情報
  • nginx-ingress-controller(ingress-community:0.35)

原因/解決策

Ingressコントローラのingress-classがIngress側で指定されていない。

同値を以下のようannotationsに記載すれば

metadata:
  annotations:
     kubernetes.io/ingress.class: XX

Ingressは正しく作成される。

Event(v1.ObjectReference{Kind:"Ingress", Namespace:"xx", Name:"xx", UID:"..}): type: 'Normal' reason: 'CREATE' Ingress ..

以下、補足です。

補足

正しくIngressとIngressControllerが機能していれば以下のようにIPが割り振りされますが

$ kubectl describe ingress test-ingress -n test
...
Name:             test-ingress
Namespace:        test
Address:          X.X.X.X
...

機能していない場合はIngressは生成されるもののIP欄が空欄になります。

Address:

Ingressコントローラー側のログに表題のメッセージが出現している場合はannotationが原因なので、以下でingressclassの名前を取得した上で

# kubectl get ingressclass
NAME    CONTROLLER             PARAMETERS   AGE
nginx   k8s.io/ingress-nginx   <none>       ...

解決策のようにIngressのYAMLにて記載すればエラーは解消します。

以上、ご参考になれば幸いです。