cisco logosu

CISCO IOS XR Barındırma Uygulamaları

CISCO IOS XR Barındırma Uygulamaları

IOS XR'de Uygulama Barındırma
Bu bölümde farklı uygulama barındırma türleri açıklanmakta ve basit bir uygulamanın IOS XR'de yerel olarak veya üçüncü taraf bir kapsayıcıda nasıl barındırılabileceği gösterilmektedir.

  • Docker Konteynerlerini Kullanarak Uygulama Barındırma.
  • Docker Tabanlı Konteyner Uygulama Barındırma.

Docker Konteynerlerini Kullanarak Uygulama Barındırma
IOS XR'de uygulama barındırma, liman işçisi konteynerlerini destekler. IOS XR üzerinde docker kullanarak kendi konteynerinizi oluşturabilir ve konteyner içindeki uygulamaları barındırabilirsiniz. Uygulamalar herhangi bir Linux dağıtımı kullanılarak geliştirilebilir. Bu, IOS XR kökü tarafından sağlananlardan farklı sistem kitaplıklarını kullanan uygulamalar için çok uygundur. file sistem. Cisco NCS 540 yalnızca liman işçisi tabanlı uygulama barındırmayı destekler.

Docker Tabanlı Konteyner Uygulama Barındırma
Bu bölümde konteyner uygulaması barındırma kavramı tanıtılmakta ve iş akışı açıklanmaktadır. Konteyner uygulama barındırma, uygulamaların Cisco IOS XR üzerinde bir Linux konteyneri içerisinde kendi ortamlarında ve işlem alanlarında (ad alanı) barındırılmasını mümkün kılar. Uygulama geliştiricisi, uygulama geliştirme ortamı üzerinde tam kontrole sahiptir ve tercih ettiği bir Linux dağıtımını kullanabilir. Uygulamalar IOS XR kontrol düzlemi süreçlerinden izole edilmiştir; yine de XR GigE arayüzleri aracılığıyla XR dışındaki ağlara bağlanabilirler. Uygulamalar ayrıca yerel file IOS XR'deki sistemler.

Cisco IOS XR'de Uygulamaları Barındırmak için Docker'ı Kullanma
Docker, Cisco IOS XR üzerinde uygulamaları barındırmak için kullanılan bir konteynerdir. Docker, Linux ağ ad alanlarını kullanarak uygulama işlemlerinin XR'deki temel ana bilgisayar işlemlerinden izolasyonunu sağlar.

Cisco IOS XR'de Docker İhtiyacı
Docker, sanallaştırma alanındaki uygulamalar için sektörün tercih ettiği paketleme modeli haline geliyor. Docker, uygulama yaşam döngüsü yönetimini otomatikleştirmenin temelini sağlar. Docker, altta uygulama katmanlarını destekleyen, üstte ise temel görüntüden oluşan katmanlı bir yaklaşım izler. Temel görüntüler, üstüne yüklemek istediğiniz uygulamanın türüne bağlı olarak bir depoda herkese açık olarak mevcuttur. Docker indeksini ve kayıt defterini kullanarak docker görüntülerini değiştirebilirsiniz. Docker, konteyner uygulamaları geliştirmek için git benzeri bir iş akışı sağlar ve yalnızca kaynak kodundaki farkın güncellendiği ve daha hızlı yükseltmelere olanak sağlayan "ince güncelleme" mekanizmasını destekler. Docker ayrıca, ortak temel docker katmanlarının birden fazla docker konteyneri arasında paylaşılması nedeniyle daha yeni uygulamaların daha hızlı indirildiği "ince indirme" mekanizmasını da sağlar. Liman işçisi katmanlarının birden fazla liman işçisi konteyneri arasında paylaşılması, XR'deki liman işçisi konteynerleri için daha düşük ayak izine yol açar.

Cisco IOS XR'de Docker Mimarisi
Aşağıdaki şekil IOS XR'deki docker mimarisini göstermektedir.

CISCO IOS XR Barındırma Uygulamaları 1

Barındırılacak uygulamaların uygulama ikili dosyaları docker konteynerinin içine kurulur.

Docker Container'larda Uygulamaları Barındırma
Aşağıdaki şekil, IOS XR'deki Docker kapsayıcılarında uygulamaları barındırmaya yönelik iş akışını göstermektedir.
CISCO IOS XR Barındırma Uygulamaları 2

  1. Liman işçisi file Kaynak deposundaki uygulama ikili dosyasını oluşturmak için kullanılır file (docker motor yapısı) ana makinenizde.
  2. Uygulama ikilisi file Docker görüntü kayıt defterine aktarılır.
  3. Uygulama ikilisi file docker görüntü kayıt defterinden alınır ve XR'deki (docker motoru hedef ana bilgisayarı) docker kapsayıcısına kopyalanır.
  4. Uygulama, XR'deki liman işçisi konteynerinde oluşturulur ve barındırılır.

Docker Container'lardaki Uygulamaları Güncelleme
Aşağıdaki şekil, liman işçisi konteynerlerinde barındırılan uygulamaları güncellemeye yönelik iş akışını göstermektedir.CISCO IOS XR Barındırma Uygulamaları 3

  1. Uygulama güncellemesi, temel kütüphane güncellemesi olarak oluşturulur file (delta güncellemesi file) ve liman işçisi görüntü kaydına aktarıldı.
  2. Delta güncellemesi file (yalnızca uygulama kodundaki farkı içerir) docker görüntü kayıt defterinden alınır ve XR'deki (docker motoru hedef ana bilgisayarı) docker kapsayıcılarına kopyalanır.
  3. Liman işçisi konteynerleri delta güncellemesiyle yeniden başlatıldı file.

Uygulama Yöneticisini Kullanarak TPA'yı Barındırma

Tablo 1: Özellik Geçmişi Tablosu

Özellik İsim Sürüm Bilgileri Özellik Tanım
İsteğe Bağlı Docker Daemon Hizmeti Sürüm 7.5.1 Bu sürümden itibaren,

Docker arka plan programı hizmeti, yalnızca bir üçüncü taraf barındırma uygulamasını kullanarak yapılandırmanız durumunda yönlendiricide başlar. uygulama yöneticisi emretmek. Böyle bir isteğe bağlı hizmet, CPU, bellek ve güç gibi işletim sistemi kaynaklarını optimize eder.

Önceki sürümlerde Docker arka plan hizmeti, yönlendiricinin başlatılması sırasında otomatik olarak başlatıldı.

Önceki sürümlerde uygulamalar Docker komutları tarafından barındırılıyor ve kontrol ediliyordu. Bu Docker komutları, Cisco IOS XR yazılımını da barındıran Çekirdeğin bash kabuğunda yürütülüyordu. Application Manager'ın kullanıma sunulmasıyla birlikte üçüncü taraf uygulama barındırma ve bunların işleyişini Cisco IOS XR CLI'ler aracılığıyla yönetmek artık mümkün. Bu özellik sayesinde, etkinleştirilen tüm üçüncü taraf uygulamaları, yönlendiricinin yeniden yüklenmesinden veya RP geçişinden sonra otomatik olarak yeniden başlatılabilir. Uygulamaların bu otomatik yeniden başlatılması, barındırılan uygulamaların sorunsuz çalışmasını sağlar.

Uygulama Yöneticisinde Desteklenen Komutlar
Yürütülen her uygulama yöneticisi komutu veya yapılandırması için Uygulama Yöneticisi, Docker soketi aracılığıyla Docker arka plan programıyla arayüz oluşturarak istenen eylemi gerçekleştirir. Aşağıdaki tabloda Docker kapsayıcısı işlevleri, önceki sürümlerde kullanılan genel Docker komutları ve artık kullanılabilecek eşdeğer uygulama yöneticisi komutları listelenmektedir:

İşlevsellik Genel Docker Komutları Başvuru Müdür Komutlar
Uygulama RPM'sini yükleyin NA Router#appmgr paketi kurulum rpm'si

image_name-0.1.0-XR_7.3.1.x86_64.rpm

Uygulamayı yapılandırın ve etkinleştirin • Görüntüyü yükle – [xr-vm_node0_RP0_CPU0:~]$docker load -i /tmp/resim_adı.katran

• Yönlendiricideki görüntüyü doğrulayın –

xr-vm_node0_RP0_CPU0:~]$docker görüntüleri ls

• Görüntünün üzerinde kapsayıcı oluşturun –

[xr-vm_node0_RP0_CPU0:~]$docker oluştur resim_adı
Yönlendirici#yapılandırma

Yönlendirici(config)#appmgr Yönlendirici(config-appmgr)#application

uygulama_adı

Yönlendirici(yapılandırma uygulaması)#docker tipini etkinleştir resim_adı docker-run-opts “–net=ana bilgisayar” docker-run-cmd “iperf3 -s -d”

  • Kapsayıcıyı başlat – [xr-vm_node0_RP0_CPU0:~]$docker start my_container_id Yönlendirici(yapılandırma uygulaması)#commit
View uygulamanın listesi, istatistikleri, günlükleri ve ayrıntıları

konteyner

• Resimleri listeleme

-[xr-vm_node0_RP0_CPU0:~]$docker görüntüleri ls

• Kapsayıcıları listele –

[xr-vm_node0_RP0_CPU0:~]$docker ps

• İstatistik

-[xr-vm_node0_RP0_CPU0:~]$docker istatistikleri

Yönlendirici#appmgr kaynak tablosunu göster

Yönlendirici#appmgr uygulama adını göster uygulama_adı bilgi özeti

Yönlendirici#appmgr uygulama adını göster uygulama_adı bilgi detayı

Yönlendirici#appmgr uygulama adını göster uygulama_adı istatistikler

  • Kütükler

-[xr-vm_node0_RP0_CPU0:~]$docker günlükleri

Yönlendirici#appmgr uygulama tablosunu göster

Yönlendirici#appmgr uygulama adını göster uygulama_adı günlükler

İşlevsellik Genel Docker Komutları Başvuru Müdür Komutlar
Yeni bir tane çalıştır • Çalıştır – [xr-vm_node0_RP0_CPU0:~]$docker exec -it my_container_id Yönlendirici#appmgr uygulama yöneticisi
emretmek

içinde bir

isim uygulama_adı docker-exec-cmd
koşma  
konteyner  
Uygulama kapsayıcısını durdur • Kapsayıcıyı durdur – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id Yönlendirici#appmgr uygulama durdurma adı uygulama_adı
Uygulama kapsayıcısını sonlandır • Kabı sonlandır – [xr-vm_node0_RP0_CPU0:~]$docker kill my_container_id Yönlendirici#appmgr uygulama öldürme adı uygulama_adı
Uygulama kapsayıcısını başlatın • Kapsayıcıyı başlat – [xr-vm_node0_RP0_CPU0:~]$docker start my_container_id Yönlendirici#appmgr uygulama başlangıç ​​adı uygulama_adı
Uygulamayı devre dışı bırakın • Kapsayıcıyı durdur – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id Yönlendirici#yapılandırma

Yönlendirici(yapılandırma)#appmgr uygulaması yok uygulama_adı

  • Kabı kaldır – [xr-vm_node0_RP0_CPU0:~]$docker rm my_container_id Yönlendirici(yapılandırma)#taahhüt
  • Görüntüyü kaldır – [xr-vm_node0_RP0_CPU0:~]$docker rmi resim_adı  
Uygulama görüntüsünü/RPM'yi kaldırın • Görüntüyü kaldır – [xr-vm_node0_RP0_CPU0:~]$docker uygulamasını kaldırma resim_adı Router#appmgr paketi kaldırma paketi

image_name-0.1.0-XR_7.3.1.x86_64

Not: Uygulama yöneticisi komutlarının kullanımı “Uygulama Yöneticisini Kullanarak Ağ Performansını İzlemek İçin Docker Konteynerlerinde iPerf Barındırma” bölümünde açıklanmıştır.

Docker'ı Birden Çok VRF ile Yapılandırma

Bu bölümde, Cisco IOS XR'de birden fazla VRF'ye sahip bir Docker'ı nasıl yapılandırabileceğiniz açıklanmaktadır. Birden çok VRF'yi yapılandırma hakkında bilgi için Uygulama Barındırma için Birden Çok VRF'yi Yapılandırma konusuna bakın.

Yapılandırma
XR'de çoklu VRF Docker'ı oluşturmak ve dağıtmak için aşağıdaki adımları kullanın.

  1. NET_ADMIN ve SYS_ADMIN ayrıcalıklarına sahip çoklu VRF Docker'ı oluşturun.
    Aşağıdaki örnekteample, üç VRF (sarı, mavi ve yeşil) içeren bir Docker konteyneri başlatıldı. Eskiampdosya, appmgr package install komutu kullanılarak önceki bir "multivrfimage" liman işçisi görüntüsünün kurulduğunu varsayar.CISCO IOS XR Barındırma Uygulamaları 4
    Not: 
    • /var/run/netns içeriğinin tamamının ana bilgisayardan Docker'a bağlanması önerilmez çünkü XR'ye ve sistem yönetici düzlemine karşılık gelen netns içeriğini Docker'a bağlar.
    • Docker'da kullanıldığında VRF'yi Cisco IOS XR'den silmemelisiniz. XR'den bir veya daha fazla VRF silinirse çoklu VRF Docker başlatılamaz
  2. Çoklu VRF Docker'ın başarıyla yüklenip yüklenmediğini doğrulayın.CISCO IOS XR Barındırma Uygulamaları 5
  3. Aşağıdaki komutu yürüterek çoklu VRF Docker konteynerine bağlanın.
    Yönlendirici# appmgr uygulama yürütme adı multivrfcontainer1 docker-exec-cmd /bin/bash/
    Varsayılan olarak Docker, Cisco IOS XR'de global-vrf ad alanına yüklenir.
  4. Birden fazla VRF'ye Docker'dan erişilebildiğini doğrulayın.CISCO IOS XR Barındırma Uygulamaları 7
    CISCO IOS XR Barındırma Uygulamaları 8

Cisco IOS XR'de çoklu VRF Docker'ı başarıyla başlattınız.

Belgeler / Kaynaklar

CISCO IOS XR Barındırma Uygulamaları [pdf] Kullanıcı Kılavuzu
IOS XR Hosting Uygulamaları, IOS XR, Hosting Uygulamaları, Uygulamalar

Referanslar

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar işaretlenmiştir *