2

The openstack ansible created containers where running but they don't have access to internet. When I manually add routing then I get following error:

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

also thing is my lxc bridge has some different network & that is not getting assigned

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

my openstack_user_config.yml defines all infra components on 192.168.56.0/24 network.

Why by default when I run the playbook I don't get internet access on containers? did I missed anything?

2 Answers 2

0

Internet access to lxc containers is provided through lxcbr0. Each container should get an IP 10.0.3.0/24 subnet assigned to eth0 (default interface). I have the same issue, which is caused by dnsmasq not handling DHCP request sent to lxcbr0. Restarting dnsmasq works. Following are the steps I took:

Check if DHCP requests are handled with tcpdump on controller host:

tcpdump -ntv -i lxcbr0

Restart dnsmasq:

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

or with systemctl start lxc-dnsmasq.service

0

There should be a need to check the /etc/resolv.conf

The correct nameserver is not added there because this under container apt update is failed.

1
  • Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
    – Community Bot
    Commented Jul 12, 2022 at 16:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .