Skip to content

Definicja Ingress Controllera

Definicja Nginx Ingress Controllera

Warning

Do poprawnego działania Ingress Controllera konieczne jest dodanie zmiennych POD_NAME oraz POD_NAMESPACE.

apiVersion: apps/v1
kind: Deployment
metadata:
    name: nginx-ingress-controller
spec:
    replicas: 1
    selector:
        matchLabels:
            name: nginx-ingress
    template:
        metadata:
            labels:
                name: nginx-ingress
        spec:
            containers:
                - name: nginx-ingress-controller
                  image: quay.io/kubernetes-ingress-controller/nginx-ingress-controller:<wersja>
                  args:
                      - /nginx-ingress-controller
                  env:
                      - name: POD_NAME
                        valueFrom:
                            fieldRef:
                                fieldPath: metadata.name
                      - name: POD_NAMESPACE
                        valueFrom:
                            fieldRef:
                                fieldPath: metadata.namespace
                 ports:
                     - name: http
                       containerPort: 80
                     - name: https
                       containerPort: 443

Definicja Config Mapy dla Ingress Controllera

kind: ConfigMap
apiVersion: v1
metadata:
    name: nginx-ingress-configmap
    ...

Definicja Service dla Ingress Controllera

apiVersion: v1
kind: Service
metadata:
    name: nginx-ingress-svc
spec:
    type: NodePort
    ports:
        - port: 80
          targetPort: 80
          protocol: TCP
          name: http
        - port: 443
          targetPort: 443
          protocol: TCP
          name: https
    selector:
        name: nginx-ingress

Definicja ServiceAccount

apiVersion: v1
kind: ServiceAccount
metadata:
    name: nginx-ingress-serviceaccount
...

Ingress Resource

W ostatnim kroku następuje definicja Ingress Resource, jest ona umieszczona w sekcji o takiej samej nazwie.