Введение

Контейнерная сеть — это комплексное сетевое решение, разработанное для облачно-нативных приложений, обеспечивающее беспрепятственную восточно-западную коммуникацию внутри кластеров и эффективное управление северо-южным трафиком через внешние сети, при этом предоставляя необходимые сетевые функции. Она состоит из следующих основных компонентов:

  • Container Network Interfaces (CNI) для управления восточно-западным трафиком внутри кластера.
  • Ingress Gateway Controller ALB для управления HTTPS входящим трафиком.
  • MetalLB для обработки сервисов типа LoadBalancer.
  • Кроме того, обеспечивает надежные функции сетевой безопасности и шифрования для гарантии защищенной коммуникации.

Содержание

Преимущества

Контейнерная сеть предлагает следующие ключевые преимущества:

  • Гибкое управление сетью

    Поддерживая несколько CNI, контейнерная сеть поддерживает режимы overlay, underlay и маршрутизации, обеспечивая гибкость для адаптации к разнообразным сетевым средам. Также она предлагает тонкое распределение IP-адресов и надежное управление исходящим трафиком. Будучи командой-основателем Kube-OVN, мы обладаем обширным практическим опытом в создании и поддержке сетей большого масштаба, обеспечивая надежное и производительное соединение.

  • Изоляция, мультиарендность и гибкость API для Ingress Gateway

    С помощью оператора ALB можно создавать и управлять несколькими экземплярами ALB в одном кластере. Каждый арендатор может иметь выделенную группу экземпляров ALB в качестве ingress gateway, обеспечивая эффективную изоляцию и управление ресурсами. Кроме того, пользователи могут гибко выбирать между Ingress и Gateway API в зависимости от своих предпочтений и операционных требований, обеспечивая беспрепятственное управление трафиком и повышенную гибкость. Будучи командой-основателем ALB, мы гарантируем надежное и масштабируемое решение.

  • Комплексная сетевая безопасность

    Контейнерная сеть предоставляет многоуровневую систему безопасности для защиты на всех уровнях. На уровне CNI поддерживаются различные модели политик безопасности, включая NetworkPolicy и AdminNetworkPolicy, для реализации тонкого контроля доступа к сети. Для безопасной передачи данных сеть включает надежное шифрование трафика. На уровне Ingress Gateway предоставляются продвинутые механизмы безопасности, такие как TLS termination и поддержка ModSecurity, обеспечивая всестороннюю защиту внешних приложений. Благодаря встроенному применению сетевых политик, шифрованию и мониторингу трафика обеспечивается защита от несанкционированного доступа и соблюдение стандартов безопасности.

Сценарии применения

Контейнерная сеть особенно подходит для следующих сценариев:

  • Управление восточно-западным трафиком

    Использование CNI для эффективной коммуникации между pod внутри кластера с поддержкой как overlay, так и underlay сетевых режимов для удовлетворения различных требований развертывания.

  • Контроль северо-южного трафика

    Использование ALB в качестве Ingress Gateway Controller для управления внешним HTTPS трафиком с гибким выбором API и возможностями мультиарендной изоляции для разных команд.

  • Экспонирование сервисов Load Balancer

    Применение MetalLB для обеспечения высокой доступности сервисов типа LoadBalancer, позволяя надежный внешний доступ к сервисам кластера через виртуальные IP-адреса.

  • Сетевая безопасность и шифрование

    Реализация комплексной безопасности с помощью NetworkPolicy, AdminNetworkPolicy и шифрования трафика для обеспечения защищенной коммуникации по всей сетевой инфраструктуре.

Ограничения использования

Несмотря на широкие функциональные возможности, следует учитывать следующие ограничения:

  • Требование к underlay сети

    Некоторые возможности underlay сети, такие как Kube-OVN Underlay Subnet, Egress IP и MetalLB, требуют поддержки базовой L2 сети. Эти функции не могут использоваться в публичных облачных провайдерах и некоторых виртуализированных средах, таких как AWS и GCP.

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