Ошибка развертывания OpenStack Ansible после создания контейнеров LXC при запуске команды apt-get update внутри контейнера

Ошибка развертывания OpenStack Ansible после создания контейнеров LXC при запуске команды apt-get update внутри контейнера

Контейнеры, созданные OpenStack Ansible, были запущены, но у них не было доступа к интернету. Когда я вручную добавляю маршрутизацию, то получаю следующую ошибку:

Err:1 http://archive.ubuntu.com/ubuntu bionic InRelease
  Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
# lxc-ls -f
NAME                                STATE   AUTOSTART GROUPS            IPV4                         IPV6 UNPRIVILEGED
infra1_galera_container-40eb8c2c    RUNNING 1         onboot, openstack 192.168.56.232               -    false
infra1_glance_container-fe32f950    RUNNING 1         onboot, openstack 192.168.56.194, 10.200.75.51 -    false
infra1_heat_api_container-fcdda89c  RUNNING 1         onboot, openstack 192.168.56.207               -    false
infra1_horizon_container-29382c02   RUNNING 1         onboot, openstack 192.168.56.140               -    false
infra1_keystone_container-c4b4bca5  RUNNING 1         onboot, openstack 192.168.56.61                -    false
infra1_memcached_container-667ec859 RUNNING 1         onboot, openstack 192.168.56.183               -    false
infra1_nova_api_container-6dcd2a9b  RUNNING 1         onboot, openstack 192.168.56.114               -    false
infra1_placement_container-d9a47077 RUNNING 1         onboot, openstack 192.168.56.218               -    false
infra1_rabbit_mq_container-34797cf1 RUNNING 1         onboot, openstack 192.168.56.210               -    false
infra1_repo_container-02a62c03      RUNNING 1         onboot, openstack 192.168.56.94                -    false
infra1_utility_container-a23621d0   RUNNING 1         onboot, openstack 192.168.56.90                -    false

также проблема в том, что у моего моста lxc есть какая-то другая сеть, и она не назначается

lxcbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.3.1  netmask 255.255.255.0  broadcast 10.0.3.255

мой openstack_user_config.yml определяет все компоненты инфраструктуры в сети 192.168.56.0/24.

Почему по умолчанию при запуске сценария я не получаю доступ в Интернет на контейнерах? Я что-то упустил?

решение1

Доступ в Интернет к контейнерам lxc осуществляется через lxcbr0. Каждый контейнер должен получить подсеть IP 10.0.3.0/24, назначенную на eth0 (интерфейс по умолчанию). У меня та же проблема, вызванная тем, что dnsmasq не обрабатывает DHCP-запрос, отправленный на lxcbr0. Перезапуск dnsmasq работает. Ниже приведены шаги, которые я предпринял:

Проверьте, обрабатываются ли запросы DHCP с помощью tcpdump на хосте контроллера:

tcpdump -ntv -i lxcbr0

Перезапустите dnsmasq:

ps aux | grep dnsmasq
# note pid and copy dnsmasq command
kill dnsmasq-pid
rerun dnsmasq command

или с помощью systemctl start lxc-dnsmasq.service

решение2

Должна быть необходимость проверить/etc/resolv.conf

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

Связанный контент