С помощью данного плагина при использовании Docker на платформе QingCloud можно создавать независимую сетевую карту для каждого контейнера, что позволяет Docker напрямую взаимодействовать с SDN-сетью QingCloud без необходимости использования портовых пробросов. Пользователи могут назначать каждому контейнеру отдельный EIP или добавлять контейнеры в балансировщик нагрузки. Если пользователь установил соединение через VPN с QingCloud, он может обращаться к сервисам внутри контейнеров через веб-браузер.
Пользователи могут использовать панель управления QingCloud для настройки политик безопасности для каждого контейнера по мере необходимости.
Нетворк-плагин был разработан и поддерживается командой Xiyun cSphere. Приветствуем ваши отзывы и предложения по улучшению.
Поскольку плагин IPAM требует указания vxnet через параметр --ipam-opt
, а этот параметр доступен начиная с версии Docker 1.10, то использование этого плагина невозможно в версиях ниже 1.10.# Установка и использование
Войдите в консоль управления QingCloud и создайте VPC-сеть, затем создайте два частных сети (обозначьте их как mgmt и user соответственно) и добавьте их в VPC-сеть.
Создайте виртуальную машину на основе образа CentOS 7 x64, выбрав для неё сеть mgmt.
Подключитесь к созданной виртуальной машине и выполните команду yum remove -y NetworkManager
для удаления NetworkManager, чтобы избежать проблем с маршрутизацией при подключении нескольких сетевых адаптеров.
Настройте основной сетевой адаптер машины, записав следующий текст в файл /etc/sysconfig/network-scripts/ifcfg-эф-си-эф-эт-хи-зеро
: ```bash
TYPE=Ethernet
DEVICE=eth0
NAME=eth0
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=dhcp
Выполните команду curl https://get.docker.com | bash
для установки Docker.
Установите и запустите плагин Docker для QingCloud:
Из исходников (требуется Docker версии 1.9 и выше):
git clone https://github.com/nicescale/qingcloud-docker-network.git /tmp/qingcloud-docker-network
# Для пользователей из Китая: git clone https://git.oschina.net/csphere/qingcloud-docker-network.git /tmp/qingcloud-docker-network
cd /tmp/qingcloud-docker-network
make
cp bin/qingcloud-docker-network /bin/
Запуск:
ACCESS_KEY_ID=xxxxxxxx SECRET_KEY=xxxxxxxxxx ZONE=sh1a /usr/bin/qingcloud-docker-network
Или запустите плагин на основе Docker-образа:
docker run -d --restart=always --name=netplugin --net=host \
--cap-add NET_ADMIN \
-v /var/lib/docker/qingcloud-network:/var/lib/docker/qingcloud-network \
-v /var/run/docker/plugins:/var/run/docker/plugins \
-e ACCESS_KEY_ID=xxxxxxxx \
-e SECRET_KEY=xxxxxxxxxx \
-e ZONE=cn-north-1 \
csphere/qingcloud-docker-network
docker network create \
-d qingcloud \
--subnet=172.25.1.0/24 \
--gateway=172.25.1.1 \
-o vxnet=vxnet-qpxj8ci \
--ipam-driver=qingcloud \
--ipam-opt vxnet=vxnet-qpxj8ci \
vxnet-qpxj8ci
Где vxnet
— это ID приватной сети, используемой контейнерами, который можно найти в консоли управления QingCloud.
Адрес шлюза (gateway
) и сеть (subnet
) должны совпадать с сетевыми параметрами, указанными при добавлении приватной сети в маршрутизатор QingCloud.
docker run -it --rm --net=vxnet-qpxj8ci alpine sh
Код был разработан командой cSphere (https://csphere.cn) и выпущен под лицензией Apache 2.0.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )