Сетевая политика Calico в Kubernetes на основе доменного имени и подстановочного знака

У меня есть приложение, работающее с kubernetes orchestrator. Я хочу реализовать сетевую политику calico на основе имени домена или подстановочных знаков, чтобы доменные имена ( FQDN / DNS ) могли использоваться для разрешения доступа из модуля или набора модулей (через селектор меток).

Я наткнулся на calico doc , в котором говорится то же самое, но я не уверен, платный или бесплатный? Может кто-нибудь это подтвердить? также где я могу получить пример этого?

0
задан 28 June 2021 в 14:01
1 ответ

Политика DNS является платной функцией, так как она является частью Calico Enterprise и Calico Cloud. Вы можете проверить это здесь .

Полное сравнение функций Calico с открытым исходным кодом, облака и предприятия

Что касается примеров, часто очень сложно найти рабочие примеры для платных продуктов, однако мне удалось найти простой пример того, как это будет выглядеть:

apiVersion: projectcalico.org/v3
kind: GlobalNetworkPolicy
metadata:
  name: security.allow-external-dns-egress
spec:
  tier: security
  selector: 'projectcalico.org/namespace == "dev" && app == "centos"'
  order: 90
  types:
    - Egress
  egress:
  - action: Allow
    protocol: UDP
    source: {}
    destination:
      ports:
      - '53'
      # openshift dns port
      - '5353'
  - action: Allow
    source:
      selector: app == 'centos'
    destination:
      domains:
      - '*.google.com'
      - 'google.com'
  # this rule only necessary if there is no policy that would pass all unmatched traffic to the following tier
  # - action: Pass
  #   source: {}
  #   destination: {}

Ссылка на этот пример выше в Calico github

Идея состоит в том, чтобы не разрешить любой исходящий трафик на любые домены, кроме google.com

На примере показано, как это должно работать.

1
ответ дан 28 July 2021 в 14:06

Теги

Похожие вопросы