Kullanılabilirlik bölgeleri

Kullanılabilirlik bölgeleri

Bir kullanılabilirlik bölgesi, DHCP, L3, FW ve diğerleri gibi hizmetleri çalıştıran ağ düğümlerini gruplar. Ağ düğümünde bir aracının özniteliği olarak tanımlanır. Bu, kullanıcıların bir kullanılabilirlik bölgesi ile kaynaklarını ilişkilendirmesini, böylece kaynakların yüksek kullanılabilirlik kazanmasını sağlar.

Kullanım örneği

Ağ kaynakları yüksek kullanılabilirliğe getirmek için bir kullanılabilirlik bölgesi kullanılır. Operatörler, ayrı ayrı kullanılabilirlik bölgeleri altında farklı güç kaynaklarına bağlı düğümleri gruplar ve farklı kullanılabilirlik bölgeleri üzerinde planlanacak şekilde yüksek kullanılabilirlikli kaynaklar için zamanlama yapılandırır.

Gerekli uzantılar

Çekirdek eklentinin availability_zone uzantısını desteklemesi gerekir. Çekirdek eklenti, bir ağın kullanılabilirlik bölgelerine göre zamanlamak için network_availability_zone uzantısını da desteklemelidir. Ml2Plugin bunu destekliyor. Yönlendirici servisi eklentisi, kullanılabilirlik bölgelerine göre bir yönlendiriciyi zamanlamak için router_availability_zone uzantısını desteklemelidir. L3RouterPlugin bunu destekliyor.

$ 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  |
...
+---------------------------+---------------------------+

Ajanların kullanılabilirlik alanı

availability_zone özelliği dhcp-agent ve l3-agent içinde tanımlanabilir. Her ajan için bir kullanılabilirlik bölgesi tanımlamak için, /etc/neutron/dhcp_agent.ini veya /etc/neutron/l3_agent.ini dosyalarının [AGENT] bölümüne değeri ayarlayın:

[AGENT]
availability_zone = zone-1

Ajanın kullanılabilirlik alanını onaylayın:

$ 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                                        |
+---------------------+-------------------------------------------------+

Kullanılabilirlik bölgesi duyarlı zamanlayıcı

Ağ zamanlayıcı

/etc/neutron/neutron.conf dosyası içindeki network_scheduler_driver değerini AZAwareWeightScheduler olarak ayarlayın böylece Ağ servisi kullanılabilirlik bölgesine göre bir ağı zamanlayacaktır:

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

Ağ servisi WeightScheduler‘da olduğu gibi seçilen bölgedeki ajanlardan birine ağı zamanlar. Bu durumda, zamanlayıcı dhcp_load_type da başvurur.

Yönlendirici zamanlayıcı

/etc/neutron/neutron.conf dosyasında router_scheduler_driver değerini AZLeastRoutersScheduler‘a ayarlayın böylece Ağ servisi kullanılabilirlik bölgesine göre bir yönlendiriciyi zamanlar:

router_scheduler_driver = neutron.scheduler.l3_agent_scheduler.AZLeastRoutersScheduler

Ağ hizmeti, bir yönlendiriciyi seçilen bölgedeki ajanlardan birine LeastRouterScheduler gibi programlar.

Kullanılabilirlik bölgesi ile yüksek kullanılabilirlik sağlama

Ağ hizmetleri, yönlendiriciler için yüksek kullanılabilirlik ve ağların DHCP hizmetleri için yüksek kullanılabilirlik ve hata toleransı sağlamakla birlikte, izole edilmiş başarısız etki alanlarında bir Ağ hizmeti dağıtımını segmentize ederek ek bir koruma katmanı sağlar. Farklı kullanılabilirlik bölgeleri arasında HA düğümleri dağıtarak, dağıtımın uygulanmasını etkileyen bölge çapında başarısızlıklar karşısında ağ hizmetlerinin kullanılabilirliğini garantiler.

Bu bölümde, L3 ve DHCP için kullanılabilirlik bölgesi ile yüksek kullanılabilirlik elde etme yöntemi açıklanmaktadır. Kullanılabilirlik bölgesi için yukarıda yapılandırma seçeneklerini doğal olarak ayarlamalısınız.

L3 yüksek kullanılabilirliği

Aşağıdaki yapılandırma seçeneklerini /etc/neutron/neutron.conf dosyasında ayarlayarak L3’ün yüksek kullanılabilirliğini sağlayın.

l3_ha = True
max_l3_agents_per_router = 3

HA yönlendiricileri, yönlendirici oluştururken seçtiğiniz kullanılabilirlik bölgelerinde oluşturulur.

DHCP yüksek kullanılabilirliği

/etc/neutron/neutron.conf dosyasında aşağıdaki yapılandırma seçeneklerini ayarlayarak DHCP’nin yüksek kullanılabilirliğini sağlayın.

dhcp_agents_per_network = 2

DHCP servisleri, ağı oluştururken seçtiğiniz kullanılabilirlik bölgesinde oluşturulur.

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.