База знаний DCImanager 6

Как изменить сеть, используемую Docker?

По умолчанию система виртуализации Docker использует для своей работы сети 172.17.0.0/16. Если ваше оборудование использует адреса из этих сетей, вы можете изменить настройки Docker. Это предотвратит возможные сетевые конфликты.

Обратите внимание!
Выполнение действий из этой статьи требует остановки платформы и перезагрузки сервера c DCImanager 6.

Просмотр информации об используемых сетях

Чтобы узнать какие сети использует Docker:

  1. Запросите список сетей:

    docker network list
    Пример ответа
    NETWORK ID          NAME                          DRIVER              SCOPE
    14a38927e118        bridge                        bridge              local
    b91a38ed491b        dci_auth                      bridge              local
    7bdf76184b18        docker_ipmi_proxy_v2_bridge   bridge              local
    2d9237551d88        etc_default                   bridge              local
    f67c6099ef24        host                          host                local
    cbb6fb4096c5        none                          null                local

    В ответе команды в столбце NAME будут отображены имена используемых сетей.

  2. Запросите информацию об используемом адресном пространстве:

    Пример команд с ответами
    [root@dci ~]# docker network inspect etc_default | grep Subnet
    "Subnet": "172.19.0.0/16",
    [root@dci ~]# docker network inspect docker_ipmi_proxy_v2_bridge | grep Subnet
    "Subnet": "172.26.0.0/16",
    [root@dci ~]# docker network inspect bridge | grep Subnet
    "Subnet": "172.17.0.0/16",
    [root@dci ~]# docker network inspect dci_auth | grep Subnet
    "Subnet": "172.25.0.0/16",

Смена сети для Docker

Чтобы изменить настройки сетей, используемые Docker:

  1. Отредактируйте или создайте файл /etc/docker/daemon.json:

    Пример файла
    {
    	"live-restore": true,
    	"bip": "10.10.0.1/16",
    	"default-address-pools": [{
    		"base": "10.0.0.0/8",
    		"size": 16
    	}]
    }
    Пояснения к формату файла
  2. Удалите запущенные докер-контейнеры:

    docker rm -f `docker ps -q -a`
  3. Удалите все неиспользуемые объекты Docker:

    docker system prune
    docker network prune
  4. Перезапустите службу Docker: 

    systemctl restart docker
  5. Запустите DCImanager 6:

    dci start
  6. Запустите докер-контейнеры модуля проксирования BMC:

    Имена контейнеров могут отличаться в зависимости от используемой версии Docker Compose. Вместо символа подчёркивания в именах контейнеров может использоваться дефис.

    Чтобы узнать точные имена контейнеров, выполните команду: 

    docker ps -a
    docker-compose -f /opt/ispsystem/ipmi_proxy_service/etc/docker/ipmi_proxy_v2.yml up -d
  7. Запустите докер-контейнеры для работы с локациями:

    docker-compose -f /opt/ispsystem/dci/etc/location.yaml up -d
  8. Перезагрузите сервер с DCImanager 6:

    reboot
  9. Проверьте настройки сетей:

    Примеры команд с ответами
    [root@dci6 ~]# docker network inspect bridge | grep Subnet
    "Subnet": "10.10.0.0/16",
    [root@dci6 ~]# docker network inspect dci_auth | grep Subnet
    "Subnet": "10.0.0.0/16",
    [root@dci6 ~]# docker network inspect docker_ipmi_proxy_v2_bridge | grep Subnet
    "Subnet": "10.1.0.0/16",
    [root@dci6 ~]# docker network inspect etc_default | grep Subnet
    "Subnet": "10.2.0.0/16",