日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

安裝ingress-nginx遇到的一些坑實戰記錄_云其它

作者:令溶炎 ? 更新時間: 2022-11-05 編程語言

環境:

Linux:CentOS Linux release 7.9.2009 (Core)

Kubernetes:v1.23.5

Dokcer:20.10.14

一、安裝ingress-nginx

wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.1/deploy/static/provider/cloud/deploy.yaml

二、修改deploy.yaml文件

1、注釋掉external Traffic Policy:Local

2、因默認鏡像源國內無法訪問 ,修改為dockerhub上的鏡像源

修改controller/deploy的image:

image: bitnami/nginx-ingress-controller:1.1.2

?修改ingress.nginx-admission-create的image:

image: liangjw/kube-webhook-certgen:v1.1.1

?修改ingress-nginx-admission-patch的image:

image: liangjw/kube-webhook-certgen:v1.1.1

三、部署ingress-nginx

# kubectl apply -f deploy.yaml
查看pods部署狀態
# kubectl get pods -n ingress-nginx -w
NAME                                        READY   STATUS      RESTARTS   AGE
ingress-nginx-admission-create-2mp7n        0/1     Completed   0          3s
ingress-nginx-admission-patch-xrdf5         0/1     Completed   0          3s
ingress-nginx-controller-859fb9b444-zq4n6   0/1     Running     0          3s
ingress-nginx-controller-859fb9b444-zq4n6   1/1     Running     0          20s

部署過程中可能遇到的報錯如下

1、ingress-nginx-admission-create和ingress-nginx-admission-patch部署失敗,報錯如下

# kubectl logs -n ingress-nginx ingress-nginx-admission-create-bj4d4
W0418 01:48:48.738693       1 client_config.go:615] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
{"err":"Get \"https://10.20.0.1:443/api/v1/namespaces/ingress-nginx/secrets/ingress-nginx-admission\": dial tcp 10.20.0.1:443: i/o timeout","level":"fatal","msg":"error getting secret","source":"k8s/k8s.go:232","time":"2022-04-18T01:49:18Z"}

解決方法:

在deploy.yaml中Ingress-nginx-admission-create和Ingress-nginx-admission-patch的Job資源下的spec.template.spec中添加如下hostNetwork: true,重新部署

?2、ingress-nginx-controller報錯如下:

# kubectl describe pod -n ingress-nginx ingress-nginx-controller-55bc668cd8-fbrjn
  Warning  FailedMount  8m51s (x3 over 8m53s)   kubelet            MountVolume.SetUp failed for volume "webhook-cert" : secret "ingress-nginx-admission" not found
  Normal   Pulled       8m11s (x4 over 8m45s)   kubelet            Container image "registry.aliyuncs.com/google_containers/nginx-ingress-controller:v1.1.2@sha256:dcbc1b017e63a50ef369c4827d2d92334dce13ca0966712de45a8661ba97bc32" already present on machine
 
# kubectl logs -f ingress-nginx-controller-55bc668cd8-fbrjn -n ingress-nginx
standard_init_linux.go:228: exec user process caused: exec format error

?報錯原因:鏡像版本和環境版本不匹配,使用的阿里云的鏡像,但是架構不一樣,更換鏡像為上面第二步中的鏡像

3、更換鏡像之后再次部署時,ingress-nginx-controller報錯如下

# kubectl logs -f -n ingress-nginx ingress-nginx-controller-6b
W0418 07:38:49.717651       1 client_config.go:615] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
I0418 07:38:49.717901       1 main.go:223] "Creating API client" host="https://10.20.0.1:443"

這次的報錯同ingress-nginx-admission-create報錯,在ingress-nginx-controller的Deployment中spec.template.spec中添加如下hostNetwork: true

修改完成后,重新部署即可?

總結

原文鏈接:https://blog.csdn.net/weixin_38797137/article/details/124251698

相關推薦

欄目分類
最近更新