Как сделать так, чтобы проверка готовности kubernetes работала с правилами входного белого списка ALB? - PullRequest
0 голосов
/ 12 февраля 2020

У меня есть 3 кластера kubernetes (dev, stage, prod), на которых запущено множество приложений для front / backend Все кластеры были созданы с использованием EKS на Amazon. Для обслуживания traffi c для этих приложений у нас есть ALB, также настроенный кластером kubernetes, который обслуживает traffi c на основе некоторых простых правил маршрутизации.

Проблема, которую я пытаюсь решить, заключается в том, что я хочу разрешить доступ к нашим средам разработки / рабочей области только с указанных c IP-адресов, просто чтобы заблокировать доступ к ним внешних пользователей

Я решил сделать это, установив белый список ip в контроллере alb https://github.com/kubernetes-sigs/aws-alb-ingress-controller/blob/master/docs/guide/ingress/annotation.md

    alb.ingress.kubernetes.io/healthcheck-path: "/"
    alb.ingress.kubernetes.io/success-codes: "200,404"
    alb.ingress.kubernetes.io/security-group-inbound-cidrs: "xx.xxx.xxx.xxx/32, xx.x.x.x/16"
  labels:
    app: development-alb

Моя проблема в том, что я также использую проверки готовности в все наши приложения, так что k8s не обслуживает трафик c для модулей, которые не готовы. Одно из наших приложений, интерфейс angular, не пройдет проверку готовности, когда действуют правила белого списка. Это эффективно перезапускает l oop и не будет обслуживать трафик c. Все остальные приложения / модули работают нормально и присоединяются к балансировщику нагрузки, как я и ожидал. При наличии белого списка, но без проверки готовности, приложение работает как положено. Я хотел бы сохранить проверки готовности на месте, чтобы обеспечить 0 периодов простоя при развертывании и более точное создание зеркал.

Как сохранить проверки готовности на месте, одновременно предотвращая попадание внешних кластеров c в кластер?

        readinessProbe:
          httpGet:
            path: /
            port: 4000
          initialDelaySeconds: 90
          periodSeconds: 5
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...