apiVersion: apps/v1 kind: Deployment metadata: name: ingress-nginx-demo-1 namespace: default spec: selector: matchLabels: app.kubernetes.io/name: ingress-nginx-demo-1 strategy: type: Recreate template: metadata: labels: app.kubernetes.io/name: ingress-nginx-demo-1 spec: containers: - name: httpd image: httpd ports: - containerPort: 80 name: http resources: requests: memory: "100Mi" cpu: "1m" limits: memory: "256Mi" cpu: "1" --- apiVersion: v1 kind: Service metadata: name: ingress-nginx-demo-1 namespace: default annotations: metallb.universe.tf/allow-shared-ip: "production" metallb.universe.tf/address-pool: production spec: type: LoadBalancer ports: - name: http protocol: TCP port: 8001 targetPort: 80 selector: app.kubernetes.io/name: ingress-nginx-demo-1 --- apiVersion: apps/v1 kind: Deployment metadata: name: ingress-nginx-demo-2 namespace: default spec: selector: matchLabels: app.kubernetes.io/name: ingress-nginx-demo-2 strategy: type: Recreate template: metadata: labels: app.kubernetes.io/name: ingress-nginx-demo-2 spec: containers: - name: httpd image: httpd ports: - containerPort: 80 name: http resources: requests: memory: "100Mi" cpu: "1m" limits: memory: "256Mi" cpu: "1" --- apiVersion: v1 kind: Service metadata: name: ingress-nginx-demo-2 namespace: default annotations: metallb.universe.tf/allow-shared-ip: "production" metallb.universe.tf/address-pool: production spec: type: LoadBalancer ports: - name: http protocol: TCP port: 8002 targetPort: 80 selector: app.kubernetes.io/name: ingress-nginx-demo-2