0%

安装并设置 ingress-nginx

Ingress是个什么东西?

其实就是一个虚拟主机转发器,以前Apache常干的东西,现在它在干,而且它干得不错,把Domain + Path映射到具体的Kubernetes的Service,这一点相当棒。

一、安装

  1. 下载ingress-nginx的安装配置文件,先访问github地址:https://github.com/kubernetes/ingress-nginx

  2. 进到deploy目录,选择nginx-0.20.0tag下载mandatory.yaml文件

  3. 修改mandatory.yaml文件,找到名叫default-http-backendDeployment,修改containerdefault-http-backend的配置,将image设为mirrorgooglecontainers/defaultbackend-amd64:1.5,这样做仅只是为了绕开

  4. 执行命令

    1
    kubectl apply -f mandatory.yaml
  5. 这样就安装好了。

  6. 验证:

    1
    2
    kubectl get pods -n ingress-nginx
    kubectl get svc -n ingress-nginx
  7. 创建Service 将ingress-nginx的Pod映射成Service以提供集群外访问:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    apiVersion: v1
    kind: Service
    metadata:
    name: ingress-nginx
    namespace: ingress-nginx
    spec:
    type: NodePort
    ports:
    - name: http
    port: 80
    nodePort: 30080
    targetPort: 80
    protocol: TCP
    - name: https
    port: 443
    nodePort: 30443
    targetPort: 443
    protocol: TCP
    selector:
    app.kubernetes.io/name: ingress-nginx
  8. 验证:

    1
    curl http://localhost:30080

二、配置

从上面的操作来看,简直是脱裤子放屁,硬生生在Service前面加一个东西,貌似没什么用。

其实……,先写到这儿,我要回家了。有空续写。