Чтобы создать облако с помощью Kubernetes, виртуализация является необходимой из-за недостаточной изоляции, обеспечиваемой контейнерами. KubeVirt - это популярная технология виртуализации для Kubernetes, позволяющая запускать традиционные виртуальные машины с помощью API Kubernetes. Виртуальные машины играют ключевую роль в изоляции multi-tenancy в облачных средах.
KubeVirt использует Container Storage Interface (CSI) для хранения, который может работать как с файловыми системами, так и с блочными устройствами. Блочные устройства более эффективны для виртуальных машин и позволяют проводить живую миграцию. Внешние или внутренние решения для хранения могут быть использованы, при этом LINSTOR является готовым к использованию опцией, обеспечивающей оптимальную производительность и использование ресурсов.
Сетевое взаимодействие в Kubernetes является сложным и состоит из четырех уровней, включая сеть узла, сеть подов (плагин CNI), сеть сервисов и внешний балансировщик нагрузки. Kube-OVN - это плагин CNI, который предлагает полное сетевое решение для виртуальных машин в Kubernetes, поддерживая функции, такие как настройка ресурсов для управления IP- и MAC-адресами, живую миграцию и создание виртуального частного облака (VPC).
Cilium, основанный на технологии eBPF, предлагает расширенные сетевые возможности, включая функциональность сети сервисов и усиленную безопасность. Интеграция Cilium и Kube-OVN обеспечивает единое решение для беспрепятственного многоуровневого сетевого взаимодействия и расширенных сетевых политик. Внешний балансировщик нагрузки необходим для доступа к сервисам извне кластера.
Понимание этих технологий виртуализации и сетевого взаимодействия позволяет эффективно запускать виртуальные машины в Kubernetes и создавать облачную инфраструктуру, отвечающую вашим требованиям к изоляции, производительности и масштабируемости.
kubernetes.io
DIY: Create Your Own Cloud with Kubernetes (Part 2)
Create attached notes ...
