Articles

BGP as a Service

zrozumienie BGP as a Service

funkcja BGP as a Service (BGPaaS) pozwala maszynie wirtualnej gościa (VM) umieszczać trasy we własnej instancji Wirtualnego routingand forwarding (VRF) przy użyciu BGP.

  • funkcje Contrail BGPaaS

  • przypadki użycia BGPaaS

funkcje Contrail BGPaaS

Korzystanie z BGPaaS z Contrail Networking wymaga gościa vmto mają łączność z węzłem sterowania i możliwość podłączenia do instancji VRF.

dzięki funkcji BGPaaS:

  • agent vRouter jest w stanie akceptować połączenia BGP z maszyn wirtualnych i proxy je do węzła sterowania.

  • agent vRouter zawsze wybiera jeden z węzłów sterujących, którego używa jako serwera XMPP.

Contrail Networking zapewnia funkcjonalność eksportu tras dla sesji gpaas. Następny skok dla wszystkich tras reklamowanych w tenantVM jest ustawiony na domyślny adres bramy podsieci tenantVM. Dzięki temu implementacja BGP dzierżawcy jest stosunkowo prosta, nie wymaga obsługi rekurencyjnego rozwiązywania BGP next hops.

obiekt BGPaaS jest powiązany z interfejsem maszyny wirtualnej,a nie tylko z maszyną wirtualną (VM), która w razie potrzeby umożliwia maszynie dzierżawczej wykonywanie sesji GP w wielu sieciach wirtualnych.

BGPaaS w Contrail Networking ma następujące funkcje:

  • domyślnie wszystkie sesje BGPaaS są skonfigurowane do dwukierunkowej wymiany tras. Boolean property bgpaas-supply-route-advertisement zapewnia brak reklamy tras do vm najemcy.

  • Jeśli trasy inet6 są reklamowane w maszynie wirtualnej dzierżawcy,są reklamowane z domyślnym adresem bramy podsieci IPv6 w BGP next hop. Właściwość logiczna, bgpaas-ipv4-mapped-ipv6-nexthop, powoduje, że Domyślna brama podsieci IPv4,w formacie IPv4-mapped IPv6, jest używana zamiast tego jako następna hop.

  • Jeśli wiele maszyn wirtualnych dzierżawców w tej samej sieci wirtualnej ma sesje gpaas i używają eBGP, standardowe zasady zapobiegania pętli ścieżek BGP uniemożliwiają reklamowanie tras reklamowanych przez jedną maszynę wirtualną dzierżawców innym maszynom wirtualnym. Pole as-override, dodane do istniejącego obiektu BgpSessionAttributes w obiekcie bgpaas, powoduje, że węzeł kontrolny zastąpi numer as maszyny dzierżawczej jej własnym numerem AS, gdy trasy reklamowe dowiedzą się od maszyny dzierżawczej do innej maszyny dzierżawczej w tej samej sieci wirtualnej.Maszyna wirtualna najemcy nie musi wdrażać żadnych nowych funkcjonalności.

Contrail Networking zapewnia wsparcie dla architektur wysokiej dostępności (HA), BGPaaS obsługuje wybór strefy węzła sterowania, z opcjami dostępnymi do konfiguracji sąsiadów strefy węzła sterowania BGPaaS.

ta możliwość pozwala na skonfigurowanie głównych i drugich węzłów kontroli, które mogą mieć jeden lub więcej węzłów kontroli. Jest to spowodowane tym, że BGPaaS jest często polegany na dostarczaniu danych do i z VNFs, które składają się z kilku węzłów w różnych obliczeniach, a vnfs zwykle polegają na dwóch rówieśnikach BGP. Te funkcje strefy węzła kontrolnego zwiększają odporność i niezawodność BGPaaS w Contrail.

poniżej znajdują się zastrzeżenia:

  • sesje BGP muszą korzystać z transportu IPv4.

  • VNF musi obsługiwać RFC 2545, używać rozszerzeń BGP-4Multiprotocol dla routingu między domenami IPv6,aby przenosić trasy IPv6 przez peer IPv4.

  • tylko rodziny adresów IPv4 (inet) i IPv6 (Inet6) są obsługiwane.

następujące funkcje są obsługiwane w Contrail Networkingdla konfiguracji BGPaaS:

  • Global-System-Config ma opcję dodawania, modyfikowania, porządkowania stref węzłów sterowania

  • Control-Node-Zone ma opcję dodawania, modyfikowania lub usuwania węzłów sterowania

  • węzeł sterowania ma opcję dodania, modyfikacji lub usunięcia strefy węzła kontrolnego i może mieć tylko jedną strefę węzła sterowania

  • bgpaas ma opcję dodania, modyfikacji lub usunięcia podstawowej lub dodatkowej strefy węzła sterowania

  • jeśli strefa węzła sterującego ma więcej niż jeden węzeł sterujący, wybór węzła sterowania dla BGP Peering jest losowy w strefie węzła sterowania

  • używając tylko jednego węzła sterowania w każdej strefie, VNF może przewidzieć utworzenie bgp-peering do tego konkretnego węzła sterowania.

przypadki użycia BGPaaS

Ta sekcja zawiera przykładowe scenariusze implementacji Bgpaas with Contrail.

  • dynamiczne Wstawianie tunelu w nakładce dzierżawy

  • dynamiczna dostępność aplikacji w sieci

  • wykrywanie żywotności dla wysokiej dostępności

dynamiczne wstawianie tunelu w nakładce dzierżawy

różne aplikacje muszą wstawiać dynamiczne tunele do Virtualnetworks. Wirtualne funkcje sieciowe (vnfs) zapewniają funkcję zakończenia sieci. Typy zakończeń tuneli różnią się w zależności od typu aplikacji, takich jak biznesowy VPN, ruchomy backhaul w małej witrynie, VPC i tym podobne. Kluczowym wymogiem jest to, że tunele muszą wstawiać dynamicznie nowe informacje o osiągalności sieci do sieci wirtualnej. Główne metody wprowadzania możliwości dotarcia do sieci tunelowej wykorzystują BGP.

BGPaaS pozwala na migrację vnfs typu brownfield do Contrail,zachowując zachowanie aplikacji i wymagania dla BGP, bez zapisywania aplikacji.

Rysunek 1 pokazuje potrzebę Wstawienia tunelu adynamicznego do sieci wirtualnej.

Rysunek 1: Dynamiczne Wstawianie tunelu

dynamiczne Wstawianie tunelu

dynamiczne osiąganie sieci aplikacji

System nazw domen (DNS) jest powszechną aplikacją, która wykorzystuje BGP jako mechanizm dostrajania osiągalności swoich usług, w oparciu o metryki, takie jak obciążenie, konserwacja, dostępność i tym podobne.Ponieważ usługi DNS są migrowane do środowisk za pomocą nakładek, potrzebny jest mechanizm zachowania istniejącego zachowania aplikacji i wymagań, w tym możliwość ogłaszania i wycofywania dostępności do dostępnej aplikacji.

to wymaganie nie jest ograniczone do DNS. Inne aplikacje, takie jak virtualized evolved packet core (vEPC) i inne, używają BGPas mechanizmu osiągalności sieci w oparciu o dostępność i obciążenie.

wykrywanie żywotności dla wysokiej dostępności

różne mechanizmy utrzymania dostępności najemców zostały zapewnione przez komponenty sieciowe, takie jak BGP, OSPF, PING, VRRP,BFD lub mechanizmy specyficzne dla aplikacji. Dzięki BGP na agencie vRouter, BGP może być używany do zapewnienia mechanizmu wykrywania żywotności między dzierżawcą na lokalnym węźle obliczeniowym a usługami świadczonymi przez konkretną maszynę wirtualną.

Konfigurowanie BGPaaS przy użyciu VNC API

aby skonfigurować BGPaaS przy użyciu VNC API:

  1. Uzyskaj dostęp do domyślnego projektu.

    default_project = self._vnc_lib.project_read(fq_name=)

  2. Create a BGPaaS object.

    bgpaas_obj = BgpAsAService(name=‘bgpaas_1’,parent_obj=default_project)

  3. Attach the BGP object to a precreated virtual machineinterface.

    bgpaas_obj.add_virtual_machine_interface(vmi)

  4. Set the ASN. It must be an eBGP session.

    bgpaas_obj.set_autonomous_system('65000')

    If the ASN is not set, the primary instance IP will be chosen.

    bgpaas_obj.set_bgpaas_ip_address(u’10.1.1.5’)

  5. Set session attributes.

    bgp_addr_fams = AddressFamilies()
    bgp_sess_attrs = BgpSessionAttributes(address_families=bgp_addr_fams,hold_time=60)
    bgpaas_obj.set_bgpaas_session_attributes(bgp_sess_attrs)
    self._vnc_lib.bgp_as_a_service_create(bgpaas_obj)

aby usunąć obiekt BGPaaS, postępuj zgodnie z podanym kodem:

fq_name=
bgpaas_obj = self._vnc_lib.bgp_as_a_service_read(fq_name=fq_name)
bgpaas_obj.del_virtual_machine_interface(vmi)
self._vnc_lib.bgp_as_a_service_update(bgpaas_obj)
self._vnc_lib.bgp_as_a_service_delete(id=bgpaas_obj.get_uuid())

Konfigurowanie BGPaaS z contrail web UI

aby skonfigurować bgpaas wewnątrz najemcy:

  1. wybierz konfigurację > usługi > BGP jako usługa z contrail web user interface (UI). Wyświetlany jest BGP jako strona serwisowa.
  2. kliknij przycisk + na stronie BGPaaS. Zostanie wyświetlona strona Utwórz BGP jako usługę.Patrz Rysunek 2.
    Rysunek 2: Utwórz BGP jako usługę

    Utwórz BGP jako usługę
  3. na stronie Utwórz BGPaaS, wypełnij pola za pomocą następujących wartości, aby utworzyć usługę.

    pola

    opis

    Nazwa

    wpisz nazwę dla usługi BGP nazwa może być unikalna nie więcej niż 15 znaków zawierających znaki alfanumeryczne i myślnik (-).

    adres IP

    wprowadź adres źródłowy IPv4 lub IPv6 na maszynie wirtualnej BGPaaS.

    interfejs maszyny Wirtualnej

    wprowadź adres IP interfejsu maszyny wirtualnej.

    Rodzina adresów

    Wybierz inet lub inet6 z listy rodziny adresów zgodnie z wymaganiami.

    Autonomous System

    Enter AS number in the range 1- 65,534.

    Advanced Options

    Hold Time

    Enter the maximum time a BGP session remains active ifno Keepalives are received.

    Stan administratora

    Wybierz pole Stan administratora, aby włączyć stan w górę i usuń zaznaczenie pola, aby wyłączyć stan w dół.

  4. kliknij Zapisz, aby utworzyć obiekt BGP.

Konfigurowanie BGPaaS z polecenia Contrail

aby skonfigurować BGPaaS wewnątrz dzierżawy:

  1. Wybierz Usługi> BGPaaS. z interfejsu użytkownika ContrailCommand (UI). Zostanie wyświetlona strona BGPaaS.
  2. kliknij przycisk Utwórz na stronie BGPaaS. Zostanie wyświetlona strona Utwórz BGPaaS. Patrz Rysunek 3.
    Rysunek 3: Utwórz BGPaaS

    Utwórz BGPaaS
  3. na stronie Utwórz BGPaaS wypełnij pola mają następujące wartości, aby utworzyć obiekt BGP.

    pola

    opis

    Nazwa

    wprowadź nazwę usługi BGP. Nazwa może być unikalna nie więcej niż 15 znaków, która zawiera znaki alfanumeryczne i myślnik ( -).

    interfejs maszyny Wirtualnej

    wprowadź adres IP interfejsu maszyny wirtualnej.

    Rodzina adresów

    Wybierz inet lub inet6 z listy rodziny adresów zgodnie z wymaganiami.

    system autonomiczny

    wprowadź numer systemu autonomicznego (as) w zakresie 1-65,535.

    Jeśli włączysz 4-bajtowe ASN w globalnej konfiguracji, możesz wprowadzić 4-bajtową liczbę w zakresie 1-4,294,967,295.

    Zaawansowane opcje

    adres IP

    wprowadź adres źródłowy IPv4 lub IPv6 na maszynie wirtualnej bgpaas.

    wspólne

    Zaznacz to pole wyboru, aby połączyć wszystkie VMIs z obiektem commonbgp-router. Jeśli to pole nie jest zaznaczone, każdy Virtual machineinterface łączy się z własnym obiektem bgp-router.

    pochodzenie trasy

    • Wybierz BGP z listy, jeśli trasa pochodzi z routera aBGP.

    • Wybierz EGP z listy, jeśli trasa pochodzi z sesji External Gateway Protocols (EGP).

    • Wybierz niekompletne z listy, jeśli informacja o dostępności warstwy sieciowej (Nlri) jest poznawana za pomocą metod takich jak redystrybucja tras do BGP, a nie przez BGP.

    Nadpisz pochodzenie trasy

    Zaznacz to pole wyboru, aby zastąpić przypis pochodzenia reklamowanego pochodzenia trasy do niekompletnego.

    kontrola stanu usług

    Wybierz dowolny obiekt kontroli stanu usług z listy zgodnie z wymaganiami.

    czas wstrzymania

    wprowadź maksymalny czas, w którym sesja BGP pozostanie aktywna, jeśli nie zostaną odebrane pliki Keepalive.

    liczba pętli

    wprowadź liczbę razy taką samą jak N można zobaczyć w aktualizacji trasy. Trasa jest odrzucana po przekroczeniu liczby pętli.

    Local ASN

    wprowadź numer systemu autonomicznego (as) w zakresie 1-65,535.

    Jeśli włączysz 4-bajtowe ASN w globalnej konfiguracji, możesz wprowadzić 4-bajtową liczbę w zakresie 1-4,294,967,295.

    as Override

    Zaznacz to pole wyboru, aby zastąpić numer AS węzła kontrolnego numerem AS maszyny wirtualnej dzierżawcy.

    użyj IPv4-mapped IPv6 Nexthop

    Zaznacz to pole wyboru, aby użyć formatów IPv6 mapowanych IPv4 zamiast domyślnej bramy podsieci IPv4.

    wyłączanie reklamy trasy

    Zaznacz to pole wyboru, aby zapobiec reklamowaniu routesto VM dzierżawcy.

    Strefa głównego węzła sterowania

    Możesz wybrać węzeł sterowania, za pomocą którego BGPaaSVM może wykonać sesję BGP.

    Strefa dodatkowego węzła sterującego

    Możesz wybrać węzeł sterujący, za pomocą którego BGPaaSVM może wykonać sesję BGP.

  4. kliknij przycisk Utwórz, aby utworzyć obiekt BGP.