Self-service network

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.

Networking Option 2: Self-service networks - Overview

** Networking Opsi 2: jaringan Self-service - Ikhtisar **

Networking Option 2: Self-service networks - Connectivity

** Networking Opsi 2: jaringan Self-service - Konektivitas **

Buat jaringan self-service

  1. Pada controller node, dapatkan sumber kredensial demo untuk mendapatkan akses ke user-only CLI commands:

    $ . demo-openrc
    
  2. 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
    
  3. 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                 |
    +-------------------+--------------------------------------+
    

Buat router

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.

Jaringan provider harus menyertakan opsi router: external untuk mengaktifkan router self-service untuk menggunakannya untuk konektivitas ke jaringan eksternal seperti Internet. The admin atau pengguna istimewa lainnya harus menyertakan opsi ini selama pembuatan jaringan atau menambahkannya nanti. Dalam kasus ini, opsi router: external disetel dengan menggunakan parameter --external saat membuat jaringan provider.

  1. Pada controller node, dapatkan sumber kredensial demo untuk mendapatkan akses ke user-only CLI commands:

    $ . demo-openrc
    
  2. 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                 |
    +-------------------------+--------------------------------------+
    
  3. Tambahkan subnet jaringan self-service sebagai interface pada router:

    $ openstack router add subnet router selfservice
    
  4. Atur gateway pada jaringan provider pada router:

    $ openstack router set router --external-gateway provider
    

Verifikasi operasi

Kami menyarankan Anda memverifikasi operasi dan memperbaiki masalah apapun sebelum melanjutkan. Langkah-langkah berikut menggunakan rentang alamat IP dari jaringan dan contoh pembuatan subnet.

  1. Pada controller node, dapatkan sumber kredensial admin untuk mendapatkan akses ke admin-only CLI commands:

    $ . admin-openrc
    
  2. 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
    
  3. Daftarlah port pada router untuk menentukan alamat IP gateway di jaringan provider:

    $ openstack port list --router router
    
    +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------+--------+
    | ID                                   | Name | MAC Address       | Fixed IP Addresses                                                            | Status |
    +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------+--------+
    | bff6605d-824c-41f9-b744-21d128fc86e1 |      | fa:16:3e:2f:34:9b | ip_address='172.16.1.1', subnet_id='3482f524-8bff-4871-80d4-5774c2730728'     | ACTIVE |
    | d6fe98db-ae01-42b0-a860-37b1661f5950 |      | fa:16:3e:e8:c1:41 | ip_address='203.0.113.102', subnet_id='5cc70da8-4ee7-4565-be53-b9c011fca011'  | ACTIVE |
    +--------------------------------------+------+-------------------+-------------------------------------------------------------------------------+--------+
    
  4. 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
    

Kembali Launch an instance - Create virtual networks.