Zona ketersediaan

Zona ketersediaan

Sebuah node ketersediaan kelompok zona jaringan yang menjalankan layanan seperti DHCP, L3, FW, dan lain-lain. Hal ini didefinisikan sebagai atribut agen pada node jaringan. Hal ini memungkinkan pengguna untuk menghubungkan zona ketersediaan sumber daya mereka sehingga sumber daya mendapatkan ketersediaan tinggi.

Use case

Zona ketersediaan digunakan untuk membuat sumber daya jaringan sangat tersedia. Operator mengelompokan node yang melekat pada sumber daya yang berbeda di bawah zona ketersediaan terpisah dan mengkonfigurasi penjadwalan sumber daya dengan ketersediaan tinggi sehingga mereka dijadwalkan pada zona ketersediaan yang berbeda.

Ekstensi yang diperlukan

Plug-in inti harus mendukung ekstensi availability_zone. Plug-in inti juga harus mendukung ekstensi network_availability_zone untuk menjadwalkan jaringan sesuai dengan zona ketersediaan. Ml2Plugin mendukungnya. Layanan router plug-in harus mendukung ekstensi router_availability_zone untuk menjadwal router sesuai dengan zona ketersediaan. L3RouterPlugin mendukungnya.

$ openstack extension list --network -c Alias -c Name
+---------------------------+---------------------------+
| Name                      | Alias                     |
+---------------------------+---------------------------+
...
| Network Availability Zone | network_availability_zone |
...
| Availability Zone         | availability_zone         |
...
| Router Availability Zone  | router_availability_zone  |
...
+---------------------------+---------------------------+

Zona ketersediaan agen

Atribut availability_zone dapat didefinisikan dalam dhcp-agent and l3-agent. Untuk menentukan zona ketersediaan untuk setiap agen, tetapkan nilai ke dalam bagian [AGENT] dari /etc/neutron/dhcp_agent.ini atau /etc/neutron/l3_agent.ini:

[AGENT]
availability_zone = zone-1

Untuk mengkonfirmasi zona ketersediaan agen:

$ openstack network agent show 116cc128-4398-49af-a4ed-3e95494cd5fc
+---------------------+---------------------------------------------------+
| Field               | Value                                             |
+---------------------+---------------------------------------------------+
| admin_state_up      | UP                                                |
| agent_type          | DHCP agent                                        |
| alive               | True                                              |
| availability_zone   | zone-1                                            |
| binary              | neutron-dhcp-agent                                |
| configurations      | dhcp_driver='neutron.agent.linux.dhcp.Dnsmasq',   |
|                     | dhcp_lease_duration='86400',                      |
|                     | log_agent_heartbeats='False', networks='2',       |
|                     | notifies_port_ready='True', ports='6', subnets='4 |
| created_at          | 2016-12-14 00:25:54                               |
| description         | None                                              |
| heartbeat_timestamp | 2016-12-14 06:20:24                               |
| host                | ankur-desktop                                     |
| id                  | 116cc128-4398-49af-a4ed-3e95494cd5fc              |
| started_at          | 2016-12-14 00:25:54                               |
| topic               | dhcp_agent                                        |
+---------------------+---------------------------------------------------+

$ openstack network agent show 9632309a-2aa4-4304-8603-c4de02c4a55f
+---------------------+-------------------------------------------------+
| Field               | Value                                           |
+---------------------+-------------------------------------------------+
| admin_state_up      | UP                                              |
| agent_type          | L3 agent                                        |
| alive               | True                                            |
| availability_zone   | zone-1                                          |
| binary              | neutron-l3-agent                                |
| configurations      | agent_mode='legacy', ex_gw_ports='2',           |
|                     | external_network_bridge='', floating_ips='0',   |
|                     | gateway_external_network_id='',                 |
|                     | handle_internal_only_routers='True',            |
|                     | interface_driver='openvswitch', interfaces='4', |
|                     | log_agent_heartbeats='False', routers='2'       |
| created_at          | 2016-12-14 00:25:58                             |
| description         | None                                            |
| heartbeat_timestamp | 2016-12-14 06:20:28                             |
| host                | ankur-desktop                                   |
| id                  | 9632309a-2aa4-4304-8603-c4de02c4a55f            |
| started_at          | 2016-12-14 00:25:58                             |
| topic               | l3_agent                                        |
+---------------------+-------------------------------------------------+

Availability zone aware scheduler

Alat penjadwal jaringan

Atur AZAwareWeightScheduler ke network_scheduler_driver dalam /etc/neutron/neutron.conf sehingga layanan Networking menjadwal jaringan sesuai dengan zona ketersediaan:

network_scheduler_driver = neutron.scheduler.dhcp_agent_scheduler.AZAwareWeightScheduler
dhcp_load_type = networks

Layanan Networking menjadwal jaringan ke salah satu agen dalam zona terpilih sebagai dengan WeightScheduler. Dalam hal ini, scheduler mengacu juga dhcp_load_type.

Alat penjadwal router

Atur AZLeastRoutersScheduler ke router_scheduler_driver dalam file /etc/neutron/neutron.conf sehingga layanan Networking menjadwal router sesuai dengan zona ketersediaan:

router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.AZLeastRoutersScheduler

Layanan Networking menjadwal router untuk salah satu agen dalam zona terpilih sebagai dengan LeastRouterScheduler.

Pencapaian ketersediaan tinggi dengan zona ketersediaan

Meskipun, layanan Networking menyediakan ketersediaan tinggi untuk router dan dan toleransi kesalahan untuk layanan DHCP jaringan ‘, zona ketersediaan memberikan lapisan tambahan perlindungan dengan segmentasi pengerahan layanan jaringan di daerah kegagalan terisolasi (isolated failure domain). Dengan mengerahkan HA node (High Availability node) di zona ketersediaan yang berbeda, dijamin bahwa layanan jaringan tetap tersedia dalam menghadapi kegagalan zone-wide yang mempengaruhi pengerahan.

Bagian ini menjelaskan bagaimana untuk mendapatkan ketersediaan tinggi dengan zona ketersediaan L3 dan DHCP. Anda secara alami harus mengatur opsi konfigurasi di atas untuk zona ketersediaan.

L3 ketersediaan tinggi

Atur opsi konfigurasi berikut dalam file /etc/neutron/neutron.conf sehingga Anda mendapatkan L3 ketersediaan tinggi.

l3_ha = True
max_l3_agents_per_router = 3

HA router diciptakan pada zona ketersediaan dimana Anda pilih pada saat pembuatan router.

DHCP ketersediaan tinggi

Atur opsi konfigurasi berikut dalam file /etc/neutron/neutron.conf sehingga Anda mendapatkan DHCP ketersediaan tinggi.

dhcp_agents_per_network = 2

Layanan DHCP diciptakan di zona ketersediaan dimana Anda pilih ketika pembuatan jaringan.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.