ingress-nginx控制器安装(ingress ImagePullBackOff )

支持的版本(查看自己的kubernetes版本替换安装过程中的版本选择合适的版本安装)

安装过程:

这里不采用helm的方式,而是采用YAML manifest的方式来安装。

下载ingress-nginx的https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.8.1/deploy/static/provider/cloud/deploy.yaml 重命名为 ingress-nginx-deploy.ymal

复制代码
wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.9.4/deploy/static/provider/cloud/deploy.yaml -O ingress_v1.9.4.yaml

出现如下异常:

复制代码
--2023-07-06 09:05:24--  https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.9.4/deploy/static/provider/cloud/deploy.yaml

Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 0.0.0.0, ::

Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|0.0.0.0|:443... failed: Connection refused.

Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|::|:443... failed: Connection refused.

可以通过科学上网来解决。

解决下载yaml文件的问题后,可以开始安装了。

复制代码
kubectl apply -f   ingress_v1.9.4.yaml

安装日志如下:

查看进度:

复制代码
kubectl get pod -A -owide

下图可以发现已经下载失败了

查看pod有啥错误发生:

复制代码
kubectl describe pod ingress-nginx-admission-create-nktxk

会发现ingress-nginx- XX的POD处于ImagePullBackOff、ContainerCreating状态。

又回到老问题了,registry.k8s.io 镜像仓库由于墙的问题访问不了。

国内知名的k8s镜像有如下几个:

registry.lank8s.cn

registry.cn-hangzhou.aliyuncs.com/google_containers

gcr.azk8s.cn(2020年开始已经只限于Azure中国的IP使用了)

阿里云的镜像没有命令空间,有时候要变化路径,另外是定期同步的,所以有的时候要改名或者缺失。

比如安装ingress-nginx的时候,涉及2个镜像,需要如下方式来替换:

|--------------------------------------------------------------|-------------------------------------------------------------------------------------|
| registry.k8s.io镜像地址 | 阿里云镜像地址 |
| registry.k8s.io/ingress-nginx/kube-webhook-certgen:v20230407 | registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen:v20230407 |
| registry.k8s.io/ingress-nginx/controller:v1.9.4 | registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:v1.9.4 |

lank8s的镜像是实时的,并且保持原样的命名空间,只需要更换前缀即可,很好用,这是一个个人支持的镜像,大家有余力可以多赞助一下。

比如安装ingress-nginx的时候,涉及2个镜像,需要如下方式来替换:

|--------------------------------------------------------------|-----------------------------------------------------------------|
| registry.k8s.io镜像地址 | lank8s镜像地址 |
| registry.k8s.io/ingress-nginx/kube-webhook-certgen:v20230407 | registry.lank8s.cn/ingress-nginx/kube-webhook-certgen:v20230407 |
| registry.k8s.io/ingress-nginx/controller:v1.9.4 | registry.lank8s.cn/ingress-nginx/controller:v1.9.4 |

将ingress-nginx-deploy.yaml文件中的镜像地址registry.k8s.io替换为 registry.lank8s.cn后再安装即可。

复制代码
kubectl apply -f ingress_v1.9.4.yaml

由于 registry.lank8s.cn只保证可靠性,不保证下载速度,所以可能需要等几分钟才能下载完镜像,所以也要等几分钟来查看ingress-nginx的controller状态。

至此ingress-nginx-controller创建成功,可以开始创建ingress规则开始

附:v1.9.4ingess分享地址链接:百度网盘 请输入提取码

提取码:eb2x

相关推荐
艾伦_耶格宇21 小时前
【DOCKER容器实战】-5 Docker容器镜像的构建
运维·docker·容器
分布式存储与RustFS1 天前
RustFS 该跟 stable 还是 nightly?两条版本线的分工、风险与回退,一张表说清
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
ggaofeng1 天前
k8s中的dns
云原生·容器·kubernetes
我不会起名字3221 天前
K8s Ingress 返回 502 但后端日志正常:4 类上游断连与排查链
kubernetes·k8s·ingress·502·keepalive
姜鱼问生2 天前
每次开机手动检查 6 样东西?我写了个 2 秒自检脚本
运维·网络·nginx·docker·容器
wangqiaowq2 天前
PostgresSQL server Docker 安装部署
运维·docker·容器
程序员阿明2 天前
docker搭建视频流服务go2rtc,webRTC
docker·容器·webrtc
JavaPub-rodert2 天前
Docker 容器为什么 stop 半天停不下来?讲透 PID 1、SIGTERM、SIGKILL、僵尸进程与 tini
运维·docker·容器
我不会起名字3222 天前
Pod 一直 Pending:调度器 5 类失败原因与 kubectl describe 的正确读法
云原生·kubernetes·调度·排查
我不会起名字3222 天前
K8s 服务 DNS 解析偶发 5 秒超时:conntrack 与 ndots 的 3 个坑
kubernetes·k8s·dns·conntrack·coredns