kubernetes-1.35.3的Ingress-nginx-1.5.1安装

 

 

案例:基于 YAML 部署 ingress-nginx

范例: 基于 kubectl apply 部署

#指定版本下载

VERSION=1.15.1

wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v${VERSION}/deploy/static/provider/cloud/deploy.yaml

 

#修改三处image 地址指向国内镜像地址

[root@master1 ~]#vim deploy.yaml
        #image: registry.k8s.io/ingress-nginx/controller:v11.14.3@sha256:ac444cd9515af325ba577b596fe4f27a34be1aa330538e8b317ad9d6c8fb94ee
        image: registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:v1.15.1
        #image: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.6.7@sha256:7a38cf0f8480775baaee71ab519c7465fd1dfeac66c421f28f087786e631456e
        image: registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen:v1.6.9
        #image: registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.6.7@sha256:7a38cf0f8480775baaee71ab519c7465fd1dfeac66c421f28f087786e631456e
        image: registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen:v1.6.9

 

 

#应用资源配置文件

kubectl apply -f deploy.yaml

 kubectl get ns

 

[root@master1 ingress-nginx]#  kubectl get ns
NAME              STATUS   AGE
default           Active   15d
ingress-nginx     Active   17s
kube-flannel      Active   15d
kube-node-lease   Active   15d
kube-public       Active   15d
kube-system       Active   15d
metallb-system    Active   3d9h
sc-nfs            Active   33h

 

 

[root@master1 ingress-nginx]# kubectl get all -n ingress-nginx 
NAME                                            READY   STATUS    RESTARTS   AGE
pod/ingress-nginx-controller-65c7957ccd-27xqp   1/1     Running   0          4m12s
pod/ingress-nginx-controller-65c7957ccd-wnnnq   1/1     Running   0          4m12s

NAME                                         TYPE           CLUSTER-IP      EXTERNAL-IP    PORT(S)                      AGE
service/ingress-nginx-controller             LoadBalancer   10.97.174.247   192.168.3.10   80:32708/TCP,443:30309/TCP   4m12s
service/ingress-nginx-controller-admission   ClusterIP      10.111.133.50   <none>         443/TCP                      4m12s

NAME                                       READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/ingress-nginx-controller   2/2     2            2           4m12s

NAME                                                  DESIRED   CURRENT   READY   AGE
replicaset.apps/ingress-nginx-controller-65c7957ccd   2         2         2       4m12s

 

 

#生成IngressClass

root@master1 ingress-nginx]# kubectl get ingressclass
NAME    CONTROLLER             PARAMETERS   AGE
nginx   k8s.io/ingress-nginx   <none>       4m35s

#查看基于LoadBalancer的service

[root@master1 ingress-nginx]# kubectl get svc -n ingress-nginx
NAME                                 TYPE           CLUSTER-IP      EXTERNAL-IP    PORT(S)                      AGE
ingress-nginx-controller             LoadBalancer   10.97.174.247   192.168.3.10   80:32708/TCP,443:30309/TCP   4m46s
ingress-nginx-controller-admission   ClusterIP      10.111.133.50   <none>         443/TCP                      4m46s
[root@master1 ingress-nginx]# 

 

 

[root@master1 ingress-nginx]# kubectl get pod -n ingress-nginx
NAME                                        READY   STATUS    RESTARTS   AGE
ingress-nginx-controller-65c7957ccd-75n8f   1/1     Running   0          8m56s
ingress-nginx-controller-65c7957ccd-fp95z   0/1     Running   0          24s

 

[root@master1 ingress-nginx]# kubectl get pod -n ingress-nginx -o wide
NAME                                        READY   STATUS    RESTARTS   AGE     IP             NODE        NOMINATED NODE   READINESS GATES
ingress-nginx-controller-65c7957ccd-75n8f   1/1     Running   0          9m37s   10.244.2.207   node2.org   <none>           <none>
ingress-nginx-controller-65c7957ccd-fp95z   1/1     Running   0          65s     10.244.1.213   node1.org   <none>           <none>

 

 

默认ingress-nginx-controller只有一个Pod副本的,可选
#方法1: 指定2个副本实现高可用(此步可选)

spec:
 replicas: 2

 

 

ingress-nginx 底层基于nginx

[root@master1 ingress-nginx]# kubectl exec -it ingress-nginx-controller-65c7957ccd-75n8f -n ingress-nginx -- bash
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$ 
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$ ls
fastcgi.conf            koi-utf                 mime.types.default      nginx.conf.default      scgi_params.default     win-utf
fastcgi.conf.default    koi-win                 modsecurity             opentracing.json        template
fastcgi_params          lua                     modules                 owasp-modsecurity-crs   uwsgi_params
fastcgi_params.default  mime.types              nginx.conf              scgi_params             uwsgi_params.default
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$ 
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$ nginx -v
nginx version: nginx/1.27.1
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$ pwd
/etc/nginx
ingress-nginx-controller-65c7957ccd-75n8f:/etc/nginx$

 

client --> ingress controller  svc 192.168.3.11  --> ingress 规则 --> svc --> pod

 

 

 
posted @ 2026-05-26 01:49  minger_lcm  阅读(35)  评论(0)    收藏  举报