Como posso garantir que os contêineres LXD mantenham o mesmo endereço IP após a reinicialização do host?

0

Estou usando o LXD com uma configuração padrão que atribui endereços privados ipv4 a contêineres via DHCP / dnsmasq. Quando eu reinicio o host, alguns containers (não todos) mudam o endereço IP. Acho que esses são contêineres que foram criados a partir do mesmo contêiner (por meio de uma cópia ou por meio de um modelo que foi publicado de outro contêiner). Aqueles podem rodar endereços IP entre eles. Verifiquei se os endereços MAC virtuais dos contêineres permanecem os mesmos após a reinicialização do host e se cada contêiner tem um endereço MAC diferente. Por que então o dnsmasq não mantém o mesmo endereço IP e o mesmo tempo de aluguel? Todos os tempos de concessão mudam em /var/lib/lxd-bridge/dnsmasq.lxdbr0.leases após a reinicialização. Por que isso está acontecendo? Isso é um bug?

Como posso garantir que isso não aconteça? Posso atribuir endereços IP estáticos, mas isso exigiria uma etapa de configuração extra em várias situações, por exemplo, cada vez que o contêiner é copiado / movido para outro servidor (o que às vezes faço). Também exigiria uma reinicialização adicional do convidado para garantir que a configuração esteja correta.

    
por user13097 31.08.2016 / 08:10

1 resposta

0

Eu não tocaria na configuração do contêiner, como você disse, você quer movê-los.

Que tal você usar o dnsmasq para atribuir endereços IP estáticos ao DHCP? Você não precisa tocar nas configurações do contêiner e sempre ter os mesmos endereços em todos os contêineres.

Coloque isso com os valores que você precisa no seu dnsmasq.conf para cada container

dhcp-host=MAC_ADDRESS,CONTAINER_NAME,IP_ADDRESS,LEASE_TIME

O MAC_ADDRESS ou o CONTAINER_NAME é opcional aqui. Apenas identifica o cliente e atribui o IP_ADDRESS a esse cliente.

    
por Kev Inski 31.08.2016 / 09:28