Jika Anda memilih opsi jaringan 2, Anda juga dapat membuat jaringan self-service (private) yang terhubung ke jaringan infrastruktur fisik melalui NAT. Jaringan ini mencakup server DHCP yang menyediakan alamat IP untuk instance. Sebuah instance pada jaringan ini dapat secara otomatis mengakses jaringan eksternal seperti Internet. Namun, akses ke sebuah instance di jaringan ini dari jaringan eksternal seperti Internet membutuhkan floating IP address.
User demo
atau user biasa lainnya dapat membuat jaringan ini karena hal itu memberikan konektivitas ke instance dalam proyek demo
saja.
Peringatan
Anda harus create the provider network sebelum jaringan self-service.
Catatan
Ikuti petunjuk dan diagram menggunakan rentang alamat IP contoh. Anda harus menyesuaikan mereka untuk lingkungan tertentu Anda.
Pada controller node, dapatkan sumber kredensial demo
untuk mendapatkan akses ke user-only CLI commands:
$ . demo-openrc
Buat jaringan:
$ openstack network create selfservice
Created a new network:
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2016-11-04T18:20:59Z |
| description | |
| headers | |
| id | 7c6f9b37-76b4-463e-98d8-27e5686ed083 |
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| mtu | 1450 |
| name | selfservice |
| port_security_enabled | True |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| revision_number | 3 |
| router:external | Internal |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | [] |
| updated_at | 2016-11-04T18:20:59Z |
+-------------------------+--------------------------------------+
Pengguna non-istimewa biasanya tidak dapat menyediakan parameter tambahan untuk perintah ini. Layanan ini secara otomatis memilih parameter menggunakan informasi dari file-file berikut:
ml2_conf.ini
:
[ml2]
tenant_network_types = vxlan
[ml2_type_vxlan]
vni_ranges = 1:1000
Buat subnet pada jaringan:
$ openstack subnet create --network selfservice \
--dns-nameserver DNS_RESOLVER --gateway SELFSERVICE_NETWORK_GATEWAY \
--subnet-range SELFSERVICE_NETWORK_CIDR selfservice
Ganti DNS_RESOLVER
dengan alamat IP dari DNS resolver. Dalam kebanyakan kasus, Anda dapat menggunakan salah satu dari file /etc/resolv.conf
pada host.
Ganti SELFSERVICE_NETWORK_GATEWAY
dengan gateway yang ingin Anda gunakan pada jaringan self-service, biasanya alamat IP ”.1”.
Ganti SELFSERVICE_NETWORK_CIDR
dengan subnet yang ingin Anda gunakan pada jaringan self-service. Anda dapat menggunakan nilai apapun, meskipun kami merekomendasikan jaringan dari RFC 1918 <https://tools.ietf.org/html/rfc1918> _.
Example
Jaringan self-service menggunakan 172.16.1.0/24 dengan gateway di 172.16.1.1. Sebuah server DHCP memberikan setiap instance alamat IP dari 172.16.1.2 ke 172.16.1.254. Semua instance menggunakan 8.8.4.4 sebagai DNS resolver.
$ openstack subnet create --network selfservice \
--dns-nameserver 8.8.4.4 --gateway 172.16.1.1 \
--subnet-range 172.16.1.0/24 selfservice
Created a new subnet:
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| allocation_pools | 172.16.1.2-172.16.1.254 |
| cidr | 172.16.1.0/24 |
| created_at | 2016-11-04T18:30:54Z |
| description | |
| dns_nameservers | 8.8.4.4 |
| enable_dhcp | True |
| gateway_ip | 172.16.1.1 |
| headers | |
| host_routes | |
| id | 5c37348e-e7da-439b-8c23-2af47d93aee5 |
| ip_version | 4 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| name | selfservice |
| network_id | b9273876-5946-4f02-a4da-838224a144e7 |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| revision_number | 2 |
| service_types | [] |
| subnetpool_id | None |
| updated_at | 2016-11-04T18:30:54Z |
+-------------------+--------------------------------------+
Jaringan self-service terhubung ke jaringan provider menggunakan router virtual yang biasanya melakukan NAT dua arah. Setiap router berisi sebuah antarmuka pada setidaknya satu jaringan self-service dan gateway pada jaringan provider.
The provider network must include the router:external
option to
enable self-service routers to use it for connectivity to external networks
such as the Internet. The admin
or other privileged user must include this
option during network creation or add it later. In this case, the
router:external
option was set by using the --external
parameter
when creating the provider
network.
Pada controller node, dapatkan sumber kredensial admin
untuk mendapatkan akses ke admin-only CLI commands:
$ . admin-openrc
Dapatkan sumber kredensial demo
untuk mendapatkan akses ke user-only CLI commands:
$ . demo-openrc
Buat router:
$ openstack router create router
Created a new router:
+-------------------------+--------------------------------------+
| Field | Value |
+-------------------------+--------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2016-11-04T18:32:56Z |
| description | |
| external_gateway_info | null |
| flavor_id | None |
| headers | |
| id | 67324374-396a-4db6-9443-c70be167a42b |
| name | router |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| project_id | 3828e7c22c5546e585f27b9eb5453788 |
| revision_number | 2 |
| routes | |
| status | ACTIVE |
| updated_at | 2016-11-04T18:32:56Z |
+-------------------------+--------------------------------------+
Tambahkan subnet jaringan self-service sebagai interface pada router:
$ neutron router-interface-add router selfservice
Added interface bff6605d-824c-41f9-b744-21d128fc86e1 to router router.
Atur gateway pada jaringan provider pada router:
$ neutron router-gateway-set router provider
Set gateway for router router
Kami menyarankan Anda memverifikasi operasi dan memperbaiki masalah apapun sebelum melanjutkan. Langkah-langkah berikut menggunakan rentang alamat IP dari jaringan dan contoh pembuatan subnet.
Pada controller node, dapatkan sumber kredensial admin
untuk mendapatkan akses ke admin-only CLI commands:
$ . admin-openrc
Daftarlah namespace jaringan. Anda akan melihat satu namespace qrouter
dan dua namespaces qdhcp
.
$ ip netns
qrouter-89dd2083-a160-4d75-ab3a-14239f01ea0b
qdhcp-7c6f9b37-76b4-463e-98d8-27e5686ed083
qdhcp-0e62efcd-8cee-46c7-b163-d8df05c3c5ad
Daftarlah port pada router untuk menentukan alamat IP gateway di jaringan provider:
$ neutron router-port-list router
+--------------------------------------+------+-------------------+------------------------------------------+
| id | name | mac_address | fixed_ips |
+--------------------------------------+------+-------------------+------------------------------------------+
| bff6605d-824c-41f9-b744-21d128fc86e1 | | fa:16:3e:2f:34:9b | {"subnet_id": |
| | | | "3482f524-8bff-4871-80d4-5774c2730728", |
| | | | "ip_address": "172.16.1.1"} |
| d6fe98db-ae01-42b0-a860-37b1661f5950 | | fa:16:3e:e8:c1:41 | {"subnet_id": |
| | | | "5cc70da8-4ee7-4565-be53-b9c011fca011", |
| | | | "ip_address": "203.0.113.102"} |
+--------------------------------------+------+-------------------+------------------------------------------+
Ping alamat IP ini dari controller node atau host di jaringan provider fisik:
$ ping -c 4 203.0.113.102
PING 203.0.113.102 (203.0.113.102) 56(84) bytes of data.
64 bytes from 203.0.113.102: icmp_req=1 ttl=64 time=0.619 ms
64 bytes from 203.0.113.102: icmp_req=2 ttl=64 time=0.189 ms
64 bytes from 203.0.113.102: icmp_req=3 ttl=64 time=0.165 ms
64 bytes from 203.0.113.102: icmp_req=4 ttl=64 time=0.216 ms
--- 203.0.113.102 ping statistics ---
rtt min/avg/max/mdev = 0.165/0.297/0.619/0.187 ms
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.