Kubernetes: открытие сервиса внутри VPN

Я создал кластер kubernetes с помощью kops

kops create cluster \
    --dns-zone=vpc.abc.in \
    --master-zones=ap-southeast-1a,ap-southeast-1b,ap-southeast-1c \
    --zones=ap-southeast-1a,ap-southeast-1b,ap-southeast-1c \
    --node-count 3 \
    --topology private \
    --networking flannel-vxlan \
    --node-size=t2.medium \
    --master-size=t2.micro \
    ${NAME}

Я использую частную топологию и внутренний балансировщик нагрузки.

Всякий раз, когда я создаю сервис типа = LoadBalancer, он создает общедоступный ELB, и URL-адрес доступен публично.

Я хочу развернуть эластичный поиск и кибану и сделать его доступным только внутри VPN. У нас уже есть настройка VPN.

Как сделать сервис доступным в VPN?


person prranay    schedule 27.07.2018    source источник


Ответы (1)


Добавьте следующую аннотацию к определению вашего сервиса:

service.beta.kubernetes.io/aws-load-balancer-internal: '"true"'

Полный пример:

kind: Service
apiVersion: v1
metadata:
  name: my-service
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-internal: '"true"'
spec:
  selector:
    app: MyApp
  ports:
  - protocol: TCP
    port: 80
    targetPort: 9376
  type: LoadBalancer

Это обеспечит внутренний ELB, а не внешний.

person jaxxstorm    schedule 27.07.2018
comment
Я пробовал это, и это сработало ... Это создает внутренний балансировщик нагрузки для обслуживания ... Спасибо - person prranay; 27.07.2018