Комментарии 3
Качественная статья, спасибо, никак руки не доходят нормально на это посмотреть.
Правильно я понимаю что фактически это надстройки над VETH?
Можно ли использовать CNI без внешнего контроллера (но скажем так что бы он работал например на уровне macvlan)? т.е. без calico, flannel, etc
Я предполагаю что дальше там кругом openvswitch (т.е. в него вставляется второй конец VETH)?
Правильно я понимаю что фактически это надстройки над VETH?
Можно ли использовать CNI без внешнего контроллера (но скажем так что бы он работал например на уровне macvlan)? т.е. без calico, flannel, etc
Я предполагаю что дальше там кругом openvswitch (т.е. в него вставляется второй конец VETH)?
Надстройки над veth — да. Для контейнера создаётся network namespace, интерфейсы которого управляются с помощью плагинов CNI. Вот из спецификации:
Calico, Flannel и т.п. — это просто дополнительные плагины, которых может и не быть. Вот есть просто «обычный» (встроенный в CNI плагин) macvlan.
Во второй конец veth могут вставляться разные решения, что как раз и реализуется плагинами.
A CNI plugin is responsible for inserting a network interface into the container network namespace (e.g. one end of a veth pair) and making any necessary changes on the host (e.g. attaching other end of veth into a bridge).
Calico, Flannel и т.п. — это просто дополнительные плагины, которых может и не быть. Вот есть просто «обычный» (встроенный в CNI плагин) macvlan.
Во второй конец veth могут вставляться разные решения, что как раз и реализуется плагинами.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Container Networking Interface (CNI) — сетевой интерфейс и стандарт для Linux-контейнеров