Cilium 1.4, сетевая система на основе BPF для контейнеров Linux

Ресничка Linux

 

Представлен запуск проекта Cilium 1.4, в котором при участии Google, Facebook, Netflix и Red Hat, это развивается система, гарантирующая сетевое взаимодействие и применение политик безопасности для изолированных контейнеров и процессов.

Чтобы различать доступ к сети в Cilium, eBPF используется (Пакетный фильтр Беркли) и XDP (Путь к данным eXpress). Код для компонентов пользовательского уровня написан на Go и распространяется под лицензией Apache 2.0.

Сценарии BPF, загруженные в ядро ​​Linux, доступны по лицензии GPLv2.

О ресничке

В основе Cilium лежит фоновый процесс, который работает в пользовательском пространстве и выполняет работу по генерации и компиляции программ BPF., а также взаимодействие со средой выполнения, предоставляемой контейнерами.

В виде программ GMP, внедрены системы, обеспечивающие связь контейнеров, интеграция с сетевой подсистемой (физические и виртуальные сети, VXLAN, Geneve) и балансировка нагрузки.

Фоновый процесс дополнен интерфейсом администрирования, хранилищем правил доступа, система мониторинга и модули интеграции с поддержкой Kubernetes, Mesos, Istio и Docker.

По производительности решение на основе Cilium с большим количеством сервисов и подключений вдвое превосходит решения на основе iptables из-за высоких накладных расходов на поиск правил.

Основные нововведения

ресница у вас есть возможность маршрутизировать и пересылать служебный трафик между несколькими кластерами Kubernetes.

Также предлагается концепция глобальных сервисов (вариант полнофункциональных сервисов Kubernetes с мультикластерными бэкэндами).

также имеет инструменты для установки правил обработки DNS-запросов и ответов вместе с группами контейнеров (pods), что позволяет увеличить контроль над использованием внешних ресурсов контейнеров.

Кроме того, есть поддержка регистрации всех DNS-запросов и ответов вместе с подами. Помимо правил доступа на уровне IP-адресов, теперь вы можете определить, какие DNS-запросы и DNS-ответы действительны, а какие следует заблокировать.

Например, вы можете заблокировать доступ к определенным доменам или разрешить запросы только для локального домена, без необходимости отслеживать изменения в привязке доменов к IP.

ресница

Это включает в себя возможность использовать возвращенный IP-адрес в процессе DNS-запроса для ограничения последующих сетевых операций (например, вы можете разрешить доступ только к IP-адресам, которые были возвращены во время разрешения DNS.

Основные новые возможности Cilium версии 1.4

В новой версии Добавлена ​​экспериментальная поддержка прозрачного шифрования всего трафика между сервисами. Шифрование может использоваться для трафика между разными кластерами, а также внутри одного кластера.

Также было добавлено возможность аутентификации узлов, позволяющая разместить кластер в ненадежной сети.

Новый функционал позволяет в случае сбоев бэкэнда, обеспечивающего работу сервиса в кластере, автоматически перенаправлять трафик на процессоры этого сервиса в другом кластере.

Добавлено экспериментальная поддержка сетевых интерфейсов IPVLAN, что обеспечивает более высокую производительность и меньшие задержки при взаимодействии между двумя локальными контейнерами;

Добавлен модуль для интеграции Flannel, система для автоматизации настройки сетевого взаимодействия между узлами в кластере Kubernetes, позволяющая работать параллельно или запускать Cilium поверх Flannel (сетевое взаимодействие Flannel, балансировка Cilium и политики доступа).

Была предоставлена ​​экспериментальная помощь по определению правил доступа на основе метаданных AWS. (Amazon Web Services), например теги EC2, группы безопасности и имена VPC.

Также была предложена возможность запуска Cilium на GKE (Google Kubernetes Engine в Google Cloud) с использованием COS (Container Optimized Operating System);

Это дает возможность тестирования использовать Sockmap BPF для ускорения связи между локальными процессами (например, полезно для ускорения взаимодействия между дополнительным прокси-сервером и локальными процессами).


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: AB Internet Networks 2008 SL
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.