Ini adalah bagian keempat dari konfigurasi neutron (Networking) di Ubuntu 14.04, Anda dapat membaca artikel sebelumnya tentang Configure Neutron #1 , Configure Neutron #2, dan Configure Neutron #3 dimana kita telah menginstal dan mengkonfigurasi komponen Networking pada Controller, Network , dan Compute node.
Di sini, kita akan membuat jaringan awal, ini harus dibuat sebelum meluncurkan instance VM.
Membuat Jaringan eksternal:
Jaringan eksternal menyediakan akses internet ke instans menggunakan NAT (Network Address Translation), akses internet dapat diaktifkan untuk masing-masing instans menggunakan alamat ip mengambang dengan aturan keamanan yang sesuai.
Muat kredensial pada node pengontrol.
# source admin-openrc.sh
buat jaringan.
# neutron net-create ext-net --router:external --provider:physical_network external --provider:network_type flat Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | b4c8d5fc-a4b9-42dc-b705-48c0d4217137 | | mtu | 0 | | name | ext-net | | provider:network_type | flat | | provider:physical_network | external | | provider:segmentation_id | | | router:external | True | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +---------------------------+--------------------------------------+
Buat subnet di jaringan eksternal.
Misalnya, menggunakan 192.168.0.0/24 dengan rentang alamat IP mengambang 192.168.0.200 hingga 203.0.113.250 dengan gateway fisik 192.168.0.1. Gateway ini harus dikaitkan dengan jaringan fisik
# neutron subnet-create ext-net 192.168.0.0/24 --name ext-subnet --allocation-pool start=192.168.0.200,end=192.168.0.250 --disable-dhcp --gateway 192.168.0.1 Created a new subnet: +-------------------+----------------------------------------------------+ | Field | Value | +-------------------+----------------------------------------------------+ | allocation_pools | {"start": "192.168.0.200", "end": "192.168.0.250"} | | cidr | 192.168.0.0/24 | | dns_nameservers | | | enable_dhcp | False | | gateway_ip | 192.168.0.1 | | host_routes | | | id | b32eb748-9bc0-4e57-ae26-cd17033b635e | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | ext-subnet | | network_id | b4c8d5fc-a4b9-42dc-b705-48c0d4217137 | | subnetpool_id | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-------------------+----------------------------------------------------+
Membuat jaringan internal:
Jaringan internal menyediakan akses jaringan internal misalnya, jaringan internal terisolasi satu sama lain. Hanya instance yang berjalan di jaringan yang sama yang dapat berkomunikasi satu sama lain, bukan ke atau dari jaringan lain.
Buat jaringan internal (int-net).
# neutron net-create int-net Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | 187a7b6c-7d14-4d8f-8673-57fa9bab1bba | | mtu | 0 | | name | int-net | | provider:network_type | gre | | provider:physical_network | | | provider:segmentation_id | 1 | | router:external | False | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +---------------------------+--------------------------------------+
Buat subnet di jaringan internal. Misalnya, menggunakan jaringan 192.168.100.0/24 dengan gateway virtual 192.168.0.1
# neutron subnet-create int-net 192.168.100.0/24 --name int-subnet --gateway 192.168.100.1 Created a new subnet: +-------------------+------------------------------------------------------+ | Field | Value | +-------------------+------------------------------------------------------+ | allocation_pools | {"start": "192.168.100.2", "end": "192.168.100.254"} | | cidr | 192.168.100.0/24 | | dns_nameservers | | | enable_dhcp | True | | gateway_ip | 192.168.100.1 | | host_routes | | | id | 7f75b54f-7b87-42e4-a7e1-f452c8adcb3a | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | int-subnet | | network_id | 187a7b6c-7d14-4d8f-8673-57fa9bab1bba | | subnetpool_id | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-------------------+------------------------------------------------------+
Buat router virtual.
Sebuah router virtual melewati lalu lintas jaringan antara dua atau lebih jaringan virtual, Dalam kasus kami, kami perlu membuat router dan melampirkan jaringan internal dan eksternal untuk itu.
# neutron router-create int-router Created a new router: +-----------------------+--------------------------------------+ | Field | Value | +-----------------------+--------------------------------------+ | admin_state_up | True | | distributed | False | | external_gateway_info | | | ha | False | | id | a47b81d7-2ad8-4bdc-a17a-0026ad374dcf | | name | int-router | | routes | | | status | ACTIVE | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-----------------------+--------------------------------------+
Pasang router ke subnet internal.
# neutron router-interface-add int-router int-subnet Added interface cb36eb61-5e3a-4c85-b747-8e230b5d1fec to router int-router.
Pasang router ke jaringan eksternal dengan menyetelnya sebagai gateway.
# neutron router-gateway-set int-router ext-net Set gateway for router int-router
Anda dapat memverifikasi konektivitas dengan melakukan ping ke 192.168.0.200 dari jaringan fisik eksternal. Hal ini dikarenakan kita menggunakan subnet 192.168.0.0/24, floating ip berkisar antara 192.168.0.200 – 250, tenant router gateway harus menempati IP address terendah pada range floating IP address yaitu 192.168.0.200
C:\>ping 192.168.0.200 Pinging 192.168.0.200 with 32 bytes of data: Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time=1ms TTL=64 Ping statistics for 192.168.0.200: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms
That's All!!!, Anda telah berhasil mengonfigurasi Jaringan (Neutron). Anda siap meluncurkan instance.