[ English | русский | Deutsch | español | Indonesia | English (United Kingdom) ]
Menambahkan jaringan ekstra ke container¶
Dalam beberapa kasus mungkin berguna untuk memiliki kemampuan untuk menambahkan antarmuka jaringan tambahan untuk beberapa kelompok container (atau hanya satu container tunggal). Sebagai contoh, ini dapat digunakan untuk menerapkan alamat IP tetap yang diketahui dari jaringan lain untuk layanan Designate. Kami akan menampilkan konfigurasi lebih lanjut berdasarkan contoh ini. Mari kita asumsikan, bahwa jaringan ini adalah 10.0.20.0/24 yang dapat dijangkau melalui antarmuka br-dns.
Untuk menambahkan antarmuka baru dengan jaringan itu ke dalam containers dessignate, kita perlu melakukan beberapa tindakan di openstack_user_config.yml
.
Catatan
Anda dapat menemukan contoh detail konfigurasi openstack_user_config.yml di bagian referensi pengaturan openstack_user_config.
Tambahkan jaringan ini di
cidr_networks
:cidr_networks: container: 172.29.236.0/22 tunnel: 172.29.240.0/22 storage: 172.29.244.0/22 designate: 10.0.20.0/24
Jelaskan jaringan di
provider_networks
:global_overrides: provider_networks: - network: container_bridge: "br-dns" container_type: "veth" container_interface: "eth5" ip_from_q: "designate" type: "veth" group_binds: - dnsaas_hosts
Tentukan override untuk containers
Catatan
Menambahkan kunci gateway akan membuat rute default di dalam container melaluinya
dnsaas_hosts: aio1: ip: 172.29.236.100 container_vars: container_extra_networks: dns_address: bridge: br-dns interface: eth5 address: 10.0.20.100 netmask: 255.255.255.0 gateway: 10.0.20.1
Using SR-IOV interfaces in containers¶
For some deployments it might be required to passthrough devices directly to containers, for example, when SR-IOV is used or devices can't be bridged (ie with IPoIB <https://www.kernel.org/doc/html/latest/infiniband/ipoib.html>)
You would need to manually map physical interfaces to specific containers. This also assumes, that same interface name is present on all containers and it is consistent and present before LXC startup.
Below as an example we will try using IB interfaces for storage network
and pass them inside containers that require storage connectivity.
For that you need describe connections in provider_networks
inside openstack_user_config.yml configuration:
global_overrides: provider_networks: - network: container_bridge: "ib1" container_type: "phys" container_interface: "ib1" ip_from_q: "storage" type: "raw" group_binds: - cinder_volume - network: container_bridge: "ib3" container_type: "phys" container_interface: "ib3" ip_from_q: "storage" type: "raw" group_binds: - glance_api - network: container_bridge: "ib5" container_type: "phys" container_interface: "ib5" ip_from_q: "storage" type: "raw" group_binds: - gnocchi_api