Моя проблема:
Когда я бегу
kubectl -n test scale --replicas=5 -f web-api-deployment.yaml
- Он масштабирует развертывание, по одному POD на узел, даже если узлы имеют достаточную емкость, почему он не масштабирует более одного POD на узел
- В настоящее время только один POD на узел получает доступ к порту 443, что если бы я хотел запустить три модуля nginx на одном узле, на которых все размещалось одно и то же веб-приложение на 443, и хотел, чтобы балансировщик нагрузки балансировал нагрузку между 3 PODS на одном и том же узел?
Кубернетский кластер:
3 мастера
5 рабочих узлов
AWS:
Упругий распределитель нагрузки направляет порт 443 к каждому рабочему узлу Kubernetes
РАЗВЕРТЫВАНИЕ ПОД: 1021 *
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
namespace: test
name: WEB-API
spec:
replicas: 1
template:
metadata:
labels:
app: WEB-API
spec:
containers:
- name: WEB-API
image: WEB-API:latest
env:
- name: NGINX_WORKER_PROCESSES
value: "1"
- name: KEEPALIVETIMEOUT
value: "0"
- name: NGINX_WORKER_CONNECTIONS
value: "2048"
resources:
requests:
cpu: 500m
memory: 500Mi
ports:
- containerPort: 443
volumeMounts:
- name: config-volume
mountPath: /opt/config/
- name: aws-volume
mountPath: /root/.aws
apiVersion: v1
kind: Service
metadata:
namespace: prd
name: WEB-API
annotations:
external-dns.alpha.kubernetes.io/hostname: someaddress
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
service.beta.kubernetes.io/aws-load-balancer-ssl-cert: arn:aws:acm:us-east-1:xxxxxxxxxxxxxxxx:certificate/xxxxxxxxxxxxxxxxxxxxxxx
service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
labels:
app: WEB-API
spec:
externalTrafficPolicy: Cluster
ports:
- name: https
port: 443
targetPort: 80
protocol: TCP
selector:
app: WEB-API
sessionAffinity: None
type: LoadBalancer