Open vSwitch: Self-servis ağları

Open vSwitch: Self-servis ağları

Bu mimari örneği, neredeyse sınırsız miktarda tamamen sanal ağları desteklemek için Open vSwitch: Sağlayıcı ağlar işlevini arttırıyor. Ağ hizmeti, VLAN self-servis ağlarını desteklese de, bu örnek VXLAN self servis ağlarına odaklanmaktadır. Self servis ağları hakkında daha fazla bilgi için bkz Self-servis ağları.

Önkoşullar

Aşağıdaki bileşenleri içeren bir ağ düğümü ekleyin:

  • Üç ağ arabirimi: yönetim, sağlayıcı ve yer paylaşımı.
  • OpenStack Ağ Open vSwitch (OVS) katman-2 ajanı, katman-3 ajanı ve OVS de dahil olmak üzere herhangi biri.

Hesaplama düğümlerini aşağıdaki bileşenlerle düzenleyin:

  • Bir ağ arabirimi ekleyin: yer paylaşımı.

Not

DHCP ve meta veri aracısını her hesaplama düğümünde tutabilir veya ağ düğümüne taşıyabilirsiniz.

Mimari

Self-service networks using OVS - overview

Aşağıdaki resim, bir self-servis ağı ve bir etiketsiz (düz) sağlayıcı ağı için bileşenleri ve bağlanabilirliği göstermektedir. Bu durumda, sunucu, ağ için DHCP aracı ile aynı hesaplama düğümünde bulunur. DHCP aracı başka bir hesaplama düğümünde bulunuyorsa, sonuncusu yalnızca DHCP ad alanı içerir ve OVS entegrasyon köprüsünde bir bağlantı noktası bulunur.

Self-service networks using OVS - components and connectivity - one network

Örnek yapılandırma

Sağlayıcı ağlarını destekleyen mevcut bir operasyon ortamına self servis ağlar için destek eklemek için aşağıdaki örnek yapılandırmayı şablon olarak kullanın.

Denetleyici düğüm

  1. neutron.conf dosyasında:

    • Yönlendirmeyi etkinleştirin ve çakışan IP adres aralıklarına izin verin.

      [DEFAULT]
      service_plugins = router
      allow_overlapping_ips = True
      
  2. ml2_conf.ini dosyasında:

    • Sürücüleri ve proje ağ türlerini yazmak için vxlan ekleyin.

      [ml2]
      type_drivers = flat,vlan,vxlan
      tenant_network_types = vxlan
      
    • Katman-2 nüfus mekanizma sürücüsünü etkinleştir.

      [ml2]
      mechanism_drivers = openvswitch,l2population
      
    • VXLAN ağ kimliği (VNI) aralığını yapılandırın.

      [ml2_type_vxlan]
      vni_ranges = VNI_START:VNI_END
      

      VNI_START ve VNI_END değerlerini uygun sayısal değerlerle değiştirin.

  3. Aşağıdaki servisleri yeniden başlatın:

    • Neutron Sunucu
    • Open vSwitch ajanı

Ağ düğümü

  1. Ağ hizmeti OVS katmanı-2 aracı ve katman-3 aracısını yükleyin.

  2. OVS kurun.

  3. neutron.conf dosyasında, genel seçenekleri yapılandırın:

    [DEFAULT]
    core_plugin = ml2
    auth_strategy = keystone
    
    [database]
    # ...
    
    [keystone_authtoken]
    # ...
    
    [nova]
    # ...
    
    [agent]
    # ...
    

    [DEFAULT], [database], [keystone_authtoken], [nova], ve [agent] bölümleri için uygun ek yapılandırmaları bulmak için OpenStack sürümünüze göre Kurulum Dökümanları ve Kılavuzları ve Yapılandırma Kılavuzu belgelerine bakın.

  4. Aşağıdaki servisleri başlatın:

    • OVS
  5. OVS sağlayıcı köprüsü ``br-provider``i oluştur:

    $ ovs-vsctl add-br br-provider
    
  6. openvswitch_agent.ini dosyasında, katman-2 ajanını yapılandır.

    [ovs]
    bridge_mappings = provider:br-provider
    local_ip = OVERLAY_INTERFACE_IP_ADDRESS
    
    [agent]
    tunnel_types = vxlan
    l2_population = True
    
    [securitygroup]
    firewall_driver = iptables_hybrid
    

    ``OVERLAY_INTERFACE_IP_ADDRESS``i self servis ağları için VXLAN yer paylaşımlarını yöneten arabirimin IP adresiyle değiştirin.

  7. l3_agent.ini dosyasında, katman-3 ajanını yapılandır.

    [DEFAULT]
    interface_driver = openvswitch
    external_network_bridge =
    

    Not

    external_network_bridge seçeneğinin değeri bilerek boş bırakılmıştır.

  8. Aşağıdaki servisleri başlatın:

    • Open vSwitch ajanı
    • Katman-3 ajanı

Hesaplama düğümleri

  1. openvswitch_agent.ini dosyasında, katman-2 nüfusunu içeren VXLAN desteğini etkinleştirin.

    [ovs]
    local_ip = OVERLAY_INTERFACE_IP_ADDRESS
    
    [agent]
    tunnel_types = vxlan
    l2_population = True
    

    ``OVERLAY_INTERFACE_IP_ADDRESS``i self servis ağları için VXLAN yer paylaşımlarını yöneten arabirimin IP adresiyle değiştirin.

  2. Aşağıdaki servisleri yeniden başlatın:

    • Open vSwitch ajanı

Servis işlemini doğrula

  1. Yönetimsel proje kimlik bilgilerini kaynak olarak verin.

  2. Ajanların varlığını ve işlevini doğrula.

    $ openstack network agent list
    +--------------------------------------+--------------------+----------+-------------------+-------+-------+---------------------------+
    | ID                                   | Agent Type         | Host     | Availability Zone | Alive | State | Binary                    |
    +--------------------------------------+--------------------+----------+-------------------+-------+-------+---------------------------+
    | 1236bbcb-e0ba-48a9-80fc-81202ca4fa51 | Metadata agent     | compute2 |                   | True  | UP    | neutron-metadata-agent    |
    | 457d6898-b373-4bb3-b41f-59345dcfb5c5 | Open vSwitch agent | compute2 |                   | True  | UP    | neutron-openvswitch-agent |
    | 71f15e84-bc47-4c2a-b9fb-317840b2d753 | DHCP agent         | compute2 | nova              | True  | UP    | neutron-dhcp-agent        |
    | 8805b962-de95-4e40-bdc2-7a0add7521e8 | L3 agent           | network1 | nova              | True  | UP    | neutron-l3-agent          |
    | a33cac5a-0266-48f6-9cac-4cef4f8b0358 | Open vSwitch agent | network1 |                   | True  | UP    | neutron-openvswitch-agent |
    | a6c69690-e7f7-4e56-9831-1282753e5007 | Metadata agent     | compute1 |                   | True  | UP    | neutron-metadata-agent    |
    | af11f22f-a9f4-404f-9fd8-cd7ad55c0f68 | DHCP agent         | compute1 | nova              | True  | UP    | neutron-dhcp-agent        |
    | bcfc977b-ec0e-4ba9-be62-9489b4b0e6f1 | Open vSwitch agent | compute1 |                   | True  | UP    | neutron-openvswitch-agent |
    +--------------------------------------+--------------------+----------+-------------------+-------+-------+---------------------------+
    

Başlangıç ağları oluştur

Yapılandırma, birden fazla VXLAN self servis ağını destekler. Kolaylık sağlamak için, aşağıdaki yordam bir self-servis ağı ve düz tedarikçi ağında bir ağ geçidi bulunan bir yönlendirici oluşturur. Yönlendirici, IPv4 ağ trafiğinde NAT kullanır ve doğrudan IPv6 ağ trafiğini yönlendirir.

Not

Self servis ağlar ile IPv6 bağlantısı genellikle düğümlere statik yol eklemeyi ve fiziksel ağ altyapısını gerektirir.

  1. Yönetimsel proje kimlik bilgilerini kaynak olarak verin.

  2. Self servis ağlar için harici bağlantıyı desteklemek için sağlayıcı ağını güncelleyin.

    $ openstack network set --external provider1
    

    Not

    Bu komutun hiç çıktısı yok.

  3. Normal (idari olmayan) bir proje kimlik bilgisi kaynağı.

  4. Bir self-servis ağı oluştur.

    $ openstack network create selfservice1
    +-------------------------+--------------+
    | Field                   | Value        |
    +-------------------------+--------------+
    | admin_state_up          | UP           |
    | mtu                     | 1450         |
    | name                    | selfservice1 |
    | port_security_enabled   | True         |
    | router:external         | Internal     |
    | shared                  | False        |
    | status                  | ACTIVE       |
    +-------------------------+--------------+
    
  5. Self-servis ağı üzerinde bir IPv4 alt ağı oluştur.

    $ openstack subnet create --subnet-range 192.0.2.0/24 \
      --network selfservice1 --dns-nameserver 8.8.4.4 selfservice1-v4
    +-------------------+---------------------------+
    | Field             | Value                     |
    +-------------------+---------------------------+
    | allocation_pools  | 192.0.2.2-192.0.2.254     |
    | cidr              | 192.0.2.0/24              |
    | dns_nameservers   | 8.8.4.4                   |
    | enable_dhcp       | True                      |
    | gateway_ip        | 192.0.2.1                 |
    | ip_version        | 4                         |
    | name              | selfservice1-v4           |
    +-------------------+---------------------------+
    
  6. Self-servis ağı üzerinde bir IPv6 alt ağı oluştur.

    $ openstack subnet create --subnet-range fd00:192:0:2::/64 --ip-version 6 \
      --ipv6-ra-mode slaac --ipv6-address-mode slaac --network selfservice1 \
      --dns-nameserver 2001:4860:4860::8844 selfservice1-v6
    +-------------------+------------------------------------------------------+
    | Field             | Value                                                |
    +-------------------+------------------------------------------------------+
    | allocation_pools  | fd00:192:0:2::2-fd00:192:0:2:ffff:ffff:ffff:ffff     |
    | cidr              | fd00:192:0:2::/64                                    |
    | dns_nameservers   | 2001:4860:4860::8844                                 |
    | enable_dhcp       | True                                                 |
    | gateway_ip        | fd00:192:0:2::1                                      |
    | ip_version        | 6                                                    |
    | ipv6_address_mode | slaac                                                |
    | ipv6_ra_mode      | slaac                                                |
    | name              | selfservice1-v6                                      |
    +-------------------+------------------------------------------------------+
    
  7. Bir yönlendirici oluştur.

    $ openstack router create router1
    +-----------------------+---------+
    | Field                 | Value   |
    +-----------------------+---------+
    | admin_state_up        | UP      |
    | name                  | router1 |
    | status                | ACTIVE  |
    +-----------------------+---------+
    
  8. Yönlendirici üzerinde arabirim olarak IPv4 ve IPv6 alt ağları ekle.

    $ openstack router add subnet router1 selfservice1-v4
    $ openstack router add subnet router1 selfservice1-v6
    

    Not

    Bu komut hiç çıktı üretmedi.

  9. Yönlendirici ağ sağlayıcısını ağ geçidi olarak ekleyin.

    $ neutron router-gateway-set router1 provider1
    Set gateway for router router1
    

Ağ işlemlerini doğrula

  1. Her hesaplama düğümünde, ikinci bir qdhcp ad alanının oluşturulmasını doğrulayın.

    # ip netns
    qdhcp-8b868082-e312-4110-8627-298109d4401c
    qdhcp-8fbc13ca-cfe0-4b8a-993b-e33f37ba66d1
    
  2. Ağ düğümünde, qrouter ad alanının oluşturulmasını doğrulayın.

    # ip netns
    qrouter-17db2a15-e024-46d0-9250-4cd4d336a2cc
    
  3. Normal (idari olmayan) bir proje kimlik bilgisi kaynağı.

  4. Ağı kullanarak ping ve SSH erişim örneklerine izin vermek için uygun güvenlik grubu kurallarını oluşturun.

    $ openstack security group rule create --proto icmp default
    +------------------+-----------+
    | Field            | Value     |
    +------------------+-----------+
    | direction        | ingress   |
    | ethertype        | IPv4      |
    | protocol         | icmp      |
    | remote_ip_prefix | 0.0.0.0/0 |
    +------------------+-----------+
    
    $ openstack security group rule create --ethertype IPv6 --proto ipv6-icmp default
    +-----------+-----------+
    | Field     | Value     |
    +-----------+-----------+
    | direction | ingress   |
    | ethertype | IPv6      |
    | protocol  | ipv6-icmp |
    +-----------+-----------+
    
    $ openstack security group rule create --proto tcp --dst-port 22 default
    +------------------+-----------+
    | Field            | Value     |
    +------------------+-----------+
    | direction        | ingress   |
    | ethertype        | IPv4      |
    | port_range_max   | 22        |
    | port_range_min   | 22        |
    | protocol         | tcp       |
    | remote_ip_prefix | 0.0.0.0/0 |
    +------------------+-----------+
    
    $ openstack security group rule create --ethertype IPv6 --proto tcp --dst-port 22 default
    +------------------+-----------+
    | Field            | Value     |
    +------------------+-----------+
    | direction        | ingress   |
    | ethertype        | IPv6      |
    | port_range_max   | 22        |
    | port_range_min   | 22        |
    | protocol         | tcp       |
    +------------------+-----------+
    
  5. Self servis ağı üzerindeki bir arayüzle bir sunucuyu başlatın. Örneğin, flavor ID 1’i kullanan bir CirrOS imajı.

    $ openstack server create --flavor 1 --image cirros --nic net-id=NETWORK_ID selfservice-instance1
    

    NETWORK_ID ile self servis ağın ID’sini değiştirin.

  6. Sunucunun IPv4 ve IPv6 adreslerini belirleyin.

    $ openstack server list
    +--------------------------------------+-----------------------+--------+--------------------------------------------------------------+
    | ID                                   | Name                  | Status | Networks                                                     |
    +--------------------------------------+-----------------------+--------+--------------------------------------------------------------+
    | c055cdb0-ebb4-4d65-957c-35cbdbd59306 | selfservice-instance1 | ACTIVE | selfservice1=192.0.2.4, fd00:192:0:2:f816:3eff:fe30:9cb0     |
    +--------------------------------------+-----------------------+--------+--------------------------------------------------------------+
    

    Uyarı

    IPv4 adresi, özel bir IP adres aralığında (RFC1918) bulunur. Böylece, Ağ hizmeti, sunucunun Internet gibi harici ağlara erişmesi için kaynak ağ adresi çevirisi (SNAT) gerçekleştirir. İnternet gibi harici ağlardan sunucuya erişim, kayan bir IPv4 adresini gerektirir. Ağ hizmeti, kayan IPv4 adresinden self servis ağdaki sunucu IPv4 adresine hedef ağ adresi çevirisi (DNAT) gerçekleştirir. Öte yandan, IPv6 için Ağ hizmet mimarisi, NAT’ın çok büyük adres alanı ve karmaşıklığı nedeniyle NAT’ı desteklemiyor. Böylece, kayan IP adresleri IPv6 için mevcut değildir ve Ağ hizmeti, yalnızca kendi kendine hizmet ağlarındaki IPv6 alt ağları için yönlendirme gerçekleştirir. Başka bir deyişle, IPv4 ve IPv6 adresleri veya sadece IPv6 adresleri ile “gizlemek” için NAT’a güvenemezsiniz ve erişimi kısıtlamak için güvenlik gruplarını doğru bir şekilde uygulamalısınız.

  7. Denetleyici düğümünde veya sağlayıcı ağına erişimi olan herhangi bir ana bilgisayarda, sunucunun IPv6 adresine ping atın.

    $ ping6 -c 4 fd00:192:0:2:f816:3eff:fe30:9cb0
    PING fd00:192:0:2:f816:3eff:fe30:9cb0(fd00:192:0:2:f816:3eff:fe30:9cb0) 56 data bytes
    64 bytes from fd00:192:0:2:f816:3eff:fe30:9cb0: icmp_seq=1 ttl=63 time=2.08 ms
    64 bytes from fd00:192:0:2:f816:3eff:fe30:9cb0: icmp_seq=2 ttl=63 time=1.88 ms
    64 bytes from fd00:192:0:2:f816:3eff:fe30:9cb0: icmp_seq=3 ttl=63 time=1.55 ms
    64 bytes from fd00:192:0:2:f816:3eff:fe30:9cb0: icmp_seq=4 ttl=63 time=1.62 ms
    
    --- fd00:192:0:2:f816:3eff:fe30:9cb0 ping statistics ---
    4 packets transmitted, 4 received, 0% packet loss, time 3004ms
    rtt min/avg/max/mdev = 1.557/1.788/2.085/0.217 ms
    
  8. İsteğe bağlı olarak, İnternet gibi sunucuya harici ağlardan IPv4 erişimini etkinleştirin.

    1. Sağlayıcı ağ üzerinde yüzen IPv4 adresini oluşturun.

      $ openstack floating ip create provider1
      +-------------+--------------------------------------+
      | Field       | Value                                |
      +-------------+--------------------------------------+
      | fixed_ip    | None                                 |
      | id          | 22a1b088-5c9b-43b4-97f3-970ce5df77f2 |
      | instance_id | None                                 |
      | ip          | 203.0.113.16                         |
      | pool        | provider1                            |
      +-------------+--------------------------------------+
      
    2. Sunucu ile yüzen IPv4 adresini ilişkilendir.

      $ openstack server add floating ip selfservice-instance1 203.0.113.16
      

      Not

      Bu komutun hiç çıktısı yok.

    3. Denetleyici düğümünde veya sağlayıcının ağına erişimi olan herhangi bir ana bilgisayarda, sunucunun kayan IPv4 adresine ping atın.

      $ ping -c 4 203.0.113.16
      PING 203.0.113.16 (203.0.113.16) 56(84) bytes of data.
      64 bytes from 203.0.113.16: icmp_seq=1 ttl=63 time=3.41 ms
      64 bytes from 203.0.113.16: icmp_seq=2 ttl=63 time=1.67 ms
      64 bytes from 203.0.113.16: icmp_seq=3 ttl=63 time=1.47 ms
      64 bytes from 203.0.113.16: icmp_seq=4 ttl=63 time=1.59 ms
      
      --- 203.0.113.16 ping statistics ---
      4 packets transmitted, 4 received, 0% packet loss, time 3005ms
      rtt min/avg/max/mdev = 1.473/2.040/3.414/0.798 ms
      
  9. Sunucuya erişim alın.

  10. Internet veya diğer harici ağlara IPv4 ve IPv6 bağlanılabilirliğini test edin.

Ağ trafik akışı

Aşağıdaki bölümlerde, birkaç yaygın senaryoda ağ trafiğinin akışını açıklanmaktadır. kuzey-güney ağ trafiği, bir sunucu ile İnternet gibi harici bir ağ arasında dolaşır. doğu-batı ağ trafiği aynı veya farklı ağlardaki sunucular arasında dolaşır. Tüm senaryolarda, fiziksel ağ altyapısı, sağlayıcının ağları ve Internet gibi harici ağlar arasındaki geçiş ve yönlendirmeyi ele alır. Her bir durum aşağıdaki bileşenlerden birini veya daha fazlasını referans gösteriyor:

  • Sağlayıcı ağ (VLAN)
    • VLAN ID 101 (etiketli)
  • Self-servis ağ 1 (VXLAN)
    • VXLAN ID (VNI) 101
  • Self-servis ağ 2 (VXLAN)
    • VXLAN ID (VNI) 102
  • Self-servis yönlendirici
    • Sağlayıcı ağ üzerinde geçit
    • Self-servis ağ 1 üzerindeki arabirim
    • Self-servis ağ 2 üzerindeki arabirim
  • Sunucu 1
  • Sunucu 2

Kuzey-güney senaryosu 1: Sabit bir IP adresine sahip sunucu

Sabit bir IPv4 adresine sahip sunucular için, ağ düğümü, self-servisten İnternet gibi harici ağlara geçen kuzey-güney trafiğinde SNAT gerçekleştirir. Sabit IPv6 adresli sunucularda, ağ düğümü, self-servis ve harici ağlar arasında trafiğin geleneksel yolunu gerçekleştirir.

  • Sunucu, hesaplama düğümü 1’de bulunur ve self-servis ağı 1’i kullanır.
  • Sunucu ana bilgisayara internet üzerinden bir paket gönderir.

Aşağıdaki adımlar hesaplama düğümü 1’i içerir:

  1. Sunucu arabirimi (1) paketi veth çifti aracılığıyla güvenlik grubu köprüsü sunucu portuna (2) iletir.
  2. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (3), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  3. Güvenlik grubu köprüsü OVS portu (4), paketin veth çifti aracılığıyla OVS entegrasyon köprü güvenlik grubu portuna (5) iletilmesini sağlar.
  4. OVS entegrasyon köprüsü pakete dahili bir VLAN etiketi ekler.
  5. OVS entegrasyon köprüsü dahili VLAN etiketi ile dahili bir tünel kimliğini değiştirir.
  6. OVS entegrasyon köprü yama bağlantı noktası (6) paketi OVS tünel köprü yama bağlantı noktasına (7) iletir.
  7. OVS tünel köprüsü (8) VNI 101’i kullanarak paketi sarmalar.
  8. Yer paylaşımlı ağlar için altta yatan fiziksel arabirim (9), paketin yer paylaşım ağı (10) vasıtasıyla ağ düğümüne iletilmesini sağlar.

Aşağıdaki adımlar ağ düğümünü içerir:

  1. Yerleşim ağları için altta yatan fiziksel arabirim (11) paketi OVS tünel köprüsüne (12) iletir.
  2. OVS tünel köprüsü paketi açar ve ona bir dahili tünel kimliği ekler.
  3. OVS tünel köprüsü dahili bir VLAN etiketi için dahili tünel kimliğini değiştirir.
  4. OVS tünel köprüsü yama portu (13) paketi OVS entegrasyon köprüsü yama portuna (14) iletir.
  5. Self servis ağı (15) için OVS entegrasyon köprü portu, dahili VLAN etiketini kaldırır ve paketi yönlendirici alanındaki self servis ağ arabirimine (16) iletir.
    • IPv4 için yönlendirici, kaynak IP adresini sağlayıcı ağındaki yönlendirici IP adresine değiştiren ve sağlayıcı ağındaki ağ geçidi arabirimi (17) aracılığıyla sağlayıcı ağındaki ağ geçidi IP adresine gönderen paket üzerinde SNAT gerçekleştirir.
    • IPv6 için, yönlendirici paketi, sağlayıcının ağ geçidi arabirimi (17) aracılığıyla bir sonraki durak IP adresine, genellikle sağlayıcı ağı üzerindeki ağ geçidi IP adresine gönderir.
  6. Yöneltici paketi sağlayıcı ağı için OVS entegrasyon köprü portuna iletir (18).
  7. OVS entegrasyon köprüsü pakete dahili VLAN etiketini ekler.
  8. OVS entegrasyon köprüsü int-br-provider yama bağlantı noktası (19) paketi OVS sağlayıcı köprü phy-br-provider yama bağlantı noktasına paketi iletir (20).
  9. OVS sağlayıcı köprüsü, dahili VLAN etiketini gerçek VLAN etiketi 101 ile değiştirir.
  10. OVS sağlayıcı köprü sağlayıcı ağ bağlantı noktası (21) paketi fiziksel ağ arabirimine (22) iletir.
  11. Fiziksel ağ arabirimi paketi fiziksel ağı altyapısıyla Internet’e iletir (23).

Not

Geri dönüş trafiği de benzer adımları izlemektedir. Bununla birlikte, kayan bir IPv4 adresi olmadan, sağlayıcıdaki veya dış ağdaki ana bilgisayarlar, self servis ağı üzerindeki sunucular ile bağlantılar kuramaz.

Self-service networks using Open vSwitch - network traffic flow - north/south scenario 1

Kuzey-güney senaryosu 2: Değişken IPv4 adresli sunucu

Yüzen bir IPv4 adresine sahip örnekler için ağ düğümü, sunucudan harici ağlardan kuzey-güney trafiğine Internet ve DNAT gibi harici ağlara geçen kuzey-güney trafiğinde SNAT gerçekleştirir. Değişken IP adresleri ve NAT, IPv6 için geçerli değildir. Böylece, ağ düğüm bu senaryoda IPv6 trafiğini yönlendirir.

  • Sunucu, hesaplama düğümü 1’de bulunur ve self-servis ağı 1’i kullanır.
  • Internet üzerindeki bir ana makine sunucuya bir paket gönderir.

Aşağıdaki adımlar ağ düğümünü içerir:

  1. Fiziksel ağ altyapısı (1) paketi sağlayıcı fiziksel ağ arayüzüne iletir (2).
  2. Sağlayıcı fiziksel ağ arabirimi paketi OVS sağlayıcı köprü sağlayıcısı ağ bağlantı noktasına iletir (3).
  3. OVS sağlayıcı köprüsü, gerçek VLAN etiketi 101’i dahili VLAN etiketi ile değiştirir.
  4. OVS sağlayıcı köprüsü phy-br-provider portu (4) paketi OVS entegrasyon köprüsü int-br-provider portuna iletir (5).
  5. Sağlayıcı ağı (6) için OVS entegrasyon köprü portu dahili VLAN etiketini kaldırır ve paketi yönlendirici ad alanındaki sağlayıcı ağ arabirimine (6) iletir.
    • IPv4 için, yönlendirici hedef IP adresini self servis ağındaki sunucu IP adresine değiştiren paket üzerinde DNAT gerçekleştirir ve kendini servis arabirimi (7) aracılığıyla self-servis ağındaki ağ geçidi IP adresine gönderir.
    • IPv6 için yönlendirici, paketi self servis arabirimi (8) aracılığıyla bir sonraki durak IP adresine, genellikle self-servis ağındaki ağ geçidi IP adresine gönderir.
  6. Yöneltici, paketi kendi kendine hizmet ağı için OVS entegrasyon köprü portuna iletir (9).
  7. OVS entegrasyon köprüsü pakete dahili bir VLAN etiketi ekler.
  8. OVS entegrasyon köprüsü dahili VLAN etiketi ile dahili bir tünel kimliğini değiştirir.
  9. OVS entegrasyon köprüsü patch-tun` yama bağlantı noktası (10) paketi OVS tünel köprüsü patch-int yama bağlantı noktasına (11) iletir.
  10. OVS tünel köprüsü (12), VNI 101’i kullanarak paketi sarar.
  11. Yer paylaşımlı ağlar için altta yatan fiziksel arabirim (13), paketin yer paylaşımlı ağ (14) üzerinden ağ düğümüne iletilmesini sağlar.

Aşağıdaki adımlar, hesaplama düğümünü içerir:

  1. Yerleşim ağları için alttaki fiziksel arabirim (15) paketi OVS tünel köprüsüne (16) iletir.
  2. OVS tünel köprüsü paketi açar ve ona bir dahili tünel kimliği ekler.
  3. OVS tünel köprüsü dahili bir VLAN etiketi için dahili tünel kimliğini değiştirir.
  4. OVS tünel köprüsü patch-int yama portu (17) paketi OVS entegrasyon köprüsü patch-tun yama portuna (18) iletir.
  5. OVS entegrasyon köprüsü, dahili VLAN etiketini paketten kaldırır.
  6. OVS entegrasyon köprü güvenlik grubu portu (19) paketi veth çifti ile güvenlik grubu köprüsü OVS portuna (20) iletir.
  7. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (21), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  8. Güvenlik grubu köprü sunucu portu (22) paketi veth çifti aracılığıyla sunucu arabirimine (23) iletir.
Self-service networks using Open vSwitch - network traffic flow - north/south scenario 2

Not

Çıkış sunucu trafiği, kuzey-güney senaryosu 1’e benzer, ancak SNAT, paketin kaynak IP adresini sağlayıcı ağı üzerindeki yönlendirici IP adresinden ziyade kayan IPv4 adresine değiştirir.

Doğu-batı senaryosu 1: Aynı ağ üzerindeki sunucular

Aynı ağdaki sabit IPv4/IPv6 adresi veya kayan IPv4 adresine sahip sunucular, bu sunucuları içeren hesaplama düğümleri arasında doğrudan iletişim kurar.

Varsayılan olarak, VXLAN protokolü hedef konum bilgisi yetersizdir ve keşfetmek için çok noktaya yayın kullanır. Keşif sonrasında konumu yerel yönlendirme veritabanında depolar. Büyük dağıtımlarda, keşif işlemi, tüm düğümlerin işlemesi gereken önemli miktarda ağ oluşturabilir. Bunları ortadan kaldırmak ve genel olarak verimliliği artırmak için, Ağ hizmeti, VXLAN arabirimleri için yönlendirme veritabanını otomatik olarak dolduran katman-2 nüfus şeması sürücüsünü içerir. Örnek yapılandırma, bu sürücüyü etkinleştirir. Daha fazla bilgi için bkz ML2 eklentisi.

  • Sunucu 1, hesap düğümü 1’de bulunur ve self-servis ağı 1’i kullanır.
  • Sunucu 2, hesaplama düğümü 2’de bulunur ve self-servis hizmet ağı 1’i kullanır.
  • Sunucu 1, sunucu 2’ye bir paket gönderir.

Aşağıdaki adımlar hesaplama düğümü 1’i içerir:

  1. Sunucu 1 arabirimi (1) paketi veth çifti aracılığıyla güvenlik grubu köprü sunucu bağlantı noktasına iletir.
  2. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (3), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  3. Güvenlik grubu köprüsü OVS portu (4), paketin veth çifti aracılığıyla OVS entegrasyon köprü güvenlik grubu portuna (5) iletilmesini sağlar.
  4. OVS entegrasyon köprüsü pakete dahili bir VLAN etiketi ekler.
  5. OVS entegrasyon köprüsü dahili VLAN etiketi ile dahili bir tünel kimliğini değiştirir.
  6. OVS entegrasyon köprü yama bağlantı noktası (6) paketi OVS tünel köprü yama bağlantı noktasına (7) iletir.
  7. OVS tünel köprüsü (8) VNI 101’i kullanarak paketi sarmalar.
  8. Yer paylaşımlı ağlar için altta yatan fiziksel arabirim (9), düğüm 2’yi yer paylaşım ağı (10) üzerinden hesaplamak için paketi iletir.

Aşağıdaki adımlar hesaplama düğüm 2’yi içerir:

  1. Yerleşim ağları için altta yatan fiziksel arabirim (11) paketi OVS tünel köprüsüne (12) iletir.
  2. OVS tünel köprüsü paketi açar ve ona bir dahili tünel kimliği ekler.
  3. OVS tünel köprüsü dahili bir VLAN etiketi için dahili tünel kimliğini değiştirir.
  4. OVS tünel köprüsü patch-int yama bağlantı noktası (13) paketi OVS entegrasyon köprüsü patch-tun yama bağlantı noktasına (14) iletir.
  5. OVS entegrasyon köprüsü, dahili VLAN etiketini paketten kaldırır.
  6. OVS entegrasyon köprü güvenlik grubu bağlantı noktası (15) paketi veth çifti aracılığıyla güvenlik grubu köprüsü OVS bağlantı noktasına (16) iletir.
  7. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (17), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  8. Güvenlik grubu köprü sunucu portu (18) paketi veth çifti vasıtasıyla sunucu 2 arabirimine (19) iletir.
Self-service networks using Open vSwitch - network traffic flow - east/west scenario 1

Not

Dönüş trafik akışı benzer adımlardan tersine takip eder.

Doğu-batı senaryosu 2: Farklı ağlardaki sunucular

Sabit bir IPv4 / IPv6 adresi veya kayan IPv4 adresi kullanan sunucular ağ düğümünde yönlendirici üzerinden iletişim kurar. Self servis ağları aynı yönlendiricide bulunmalıdır.

  • Sunucu 1, hesap düğümü 1’de bulunur ve self-servis ağı 1’i kullanır.
  • Sunucu 2, hesaplama düğümü 1’de bulunur ve kendi kendine hizmet ağı 2’yi kullanır.
  • Sunucu 1, sunucu 2’ye bir paket gönderir.

Not

Her iki sunucu da aynı hesaplama düğümünde bulunur ve VXLAN’ın aynı katman-3 ağını nasıl kullanabileceğini gösterir.

Aşağıdaki adımlar, hesaplama düğümünü içerir:

  1. Sunucu arabirimi (1) paketi veth çifti aracılığıyla güvenlik grubu köprüsü sunucu portuna (2) iletir.
  2. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (3), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  3. Güvenlik grubu köprüsü OVS portu (4), paketin veth çifti aracılığıyla OVS entegrasyon köprü güvenlik grubu portuna (5) iletilmesini sağlar.
  4. OVS entegrasyon köprüsü pakete dahili bir VLAN etiketi ekler.
  5. OVS entegrasyon köprüsü dahili VLAN etiketi ile dahili bir tünel kimliğini değiştirir.
  6. OVS entegrasyon köprüsü patch-tun yama portu (6) paketi OVS tünel köprüsü patch-int patch portuna (7) iletir.
  7. OVS tünel köprüsü (8) VNI 101’i kullanarak paketi sarmalar.
  8. Yer paylaşımlı ağlar için altta yatan fiziksel arabirim (9), paketin yer paylaşım ağı (10) vasıtasıyla ağ düğümüne iletilmesini sağlar.

Aşağıdaki adımlar ağ düğümünü içerir:

  1. Yerleşim ağları için altta yatan fiziksel arabirim (11) paketi OVS tünel köprüsüne (12) iletir.
  2. OVS tünel köprüsü paketi açar ve ona bir dahili tünel kimliği ekler.
  3. OVS tünel köprüsü dahili bir VLAN etiketi için dahili tünel kimliğini değiştirir.
  4. OVS tünel köprüsü patch-int yama bağlantı noktası (13) paketi OVS entegrasyon köprüsü patch-tun yama bağlantı noktasına (14) iletir.
  5. Self-servis ağı 1 (15) için OVS entegrasyon köprü portu, dahili VLAN etiketini kaldırır ve paketi yönlendirici ad alanındaki self-servis ağı 1 arabirimine (16) iletir.
  6. Yöneltici paketi, self-servis ağı 2 arabirimi (17) üzerinden bir sonraki durak IP adresine, genelde self servis ağı 2 üzerindeki ağ geçidi IP adresine gönderir.
  7. Yöneltici, paketin self servis ağı 2 için OVS entegrasyon köprü portuna iletilmesini sağlar (18).
  8. OVS entegrasyon köprüsü pakete dahili VLAN etiketini ekler.
  9. OVS entegrasyon köprüsü dahili VLAN etiketi ile dahili bir tünel kimliğini değiştirir.
  10. OVS entegrasyon köprüsü patch-tun patch portu (19) paketi OVS tünel köprüsü patch-int patch portuna (20) iletir.
  11. OVS tünel köprüsü (21), VNI 102’yi kullanarak paketi sarar.
  12. Yer paylaşımlı ağlar için altta yatan fiziksel arabirim (22), paketin yer paylaşım ağı (23) üzerinden hesaplama düğümüne iletilmesini sağlar.

Aşağıdaki adımlar, hesaplama düğümünü içerir:

  1. Yerleşim ağları için alttaki fiziksel arabirim (24), paketi OVS tünel köprüsüne (25) iletir.
  2. OVS tünel köprüsü paketi açar ve ona bir dahili tünel kimliği ekler.
  3. OVS tünel köprüsü dahili bir VLAN etiketi için dahili tünel kimliğini değiştirir.
  4. OVS tünel köprüsü patch-int yama portu (26), paketi OVS entegrasyon köprüsü patch-tun yama portuna (27) iletir.
  5. OVS entegrasyon köprüsü, dahili VLAN etiketini paketten kaldırır.
  6. OVS entegrasyon köprü güvenlik grubu bağlantı noktasına (28) veth çifti vasıtasıyla paketi güvenlik grubu köprüsü OVS bağlantı noktasına (29) iletir.
  7. Güvenlik grubu köprüsündeki güvenlik grubu kuralları (30), paket için güvenlik duvarını ve bağlantı izlemeyi ele alır.
  8. Güvenlik grubu köprü sunucusu bağlantı noktası (31), paketi veth çifti aracılığıyla sunucu arabirimine (32) iletir.

Not

Dönüş trafik akışı benzer adımlardan tersine takip eder.

Self-service networks using Open vSwitch - network traffic flow - east/west scenario 2
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.