Aplikasi Hosting CISCO IOS XR

Aplikasi Hosting di IOS XR
Bagian ini menjelaskan berbagai jenis hosting aplikasi, dan menunjukkan bagaimana aplikasi sederhana dapat dihosting secara asli atau dalam wadah pihak ketiga di IOS XR.
- Hosting Aplikasi Menggunakan Kontainer Docker.
- Hosting Aplikasi Kontainer Berbasis Docker.
Hosting Aplikasi Menggunakan Kontainer Docker
Hosting aplikasi di IOS XR mendukung kontainer buruh pelabuhan. Anda dapat membuat container Anda sendiri di IOS XR menggunakan buruh pelabuhan, dan menghosting aplikasi di dalam container. Aplikasi dapat dikembangkan menggunakan distribusi Linux apa pun. Ini sangat cocok untuk aplikasi yang menggunakan perpustakaan sistem yang berbeda dari yang disediakan oleh root IOS XR file sistem. Cisco NCS 540 hanya mendukung hosting aplikasi berbasis buruh pelabuhan.
Hosting Aplikasi Kontainer Berbasis Docker
Bagian ini memperkenalkan konsep hosting aplikasi kontainer dan menjelaskan alur kerjanya. Hosting aplikasi kontainer memungkinkan aplikasi dihosting di lingkungannya sendiri dan ruang proses (namespace) dalam kontainer Linux di Cisco IOS XR. Pengembang aplikasi memiliki kendali penuh atas lingkungan pengembangan aplikasi, dan dapat menggunakan distribusi Linux pilihannya. Aplikasi diisolasi dari proses bidang kendali IOS XR; namun, mereka dapat terhubung ke jaringan di luar XR melalui antarmuka XR GigE. Aplikasi juga dapat dengan mudah mengakses lokal file sistem pada IOS XR.
Menggunakan Docker untuk Aplikasi Hosting di Cisco IOS XR
Docker adalah wadah yang digunakan untuk menghosting aplikasi di Cisco IOS XR. Docker menyediakan isolasi untuk proses aplikasi dari proses host yang mendasarinya di XR dengan menggunakan namespace jaringan Linux.
Kebutuhan Docker di Cisco IOS XR
Docker menjadi model pengemasan pilihan industri untuk aplikasi di ruang virtualisasi. Docker memberikan landasan untuk mengotomatisasi manajemen siklus hidup aplikasi. Docker mengikuti pendekatan berlapis yang terdiri dari gambar dasar di bagian bawah yang mendukung lapisan aplikasi di bagian atas. Gambar dasar tersedia untuk umum di repositori, bergantung pada jenis aplikasi yang ingin Anda instal di atasnya. Anda dapat memanipulasi gambar buruh pelabuhan dengan menggunakan indeks buruh pelabuhan dan registri. Docker menyediakan alur kerja seperti git untuk mengembangkan aplikasi kontainer dan mendukung mekanisme “pembaruan tipis”, di mana hanya perbedaan dalam kode sumber yang diperbarui, sehingga menghasilkan peningkatan yang lebih cepat. Docker juga menyediakan mekanisme “thin download”, dimana aplikasi baru diunduh lebih cepat karena berbagi lapisan dasar buruh pelabuhan yang umum di antara beberapa kontainer buruh pelabuhan. Pembagian lapisan buruh pelabuhan di antara beberapa kontainer buruh pelabuhan menyebabkan jejak yang lebih rendah untuk kontainer buruh pelabuhan di XR.
Arsitektur Docker pada Cisco IOS XR
Gambar berikut mengilustrasikan arsitektur buruh pelabuhan di IOS XR.

Biner aplikasi untuk aplikasi yang akan dihosting dipasang di dalam wadah buruh pelabuhan.
Aplikasi Hosting di Kontainer Docker
Gambar berikut mengilustrasikan alur kerja untuk menghosting aplikasi di container Docker di IOS XR.

- buruh pelabuhan file di repositori sumber digunakan untuk membangun biner aplikasi file pada mesin host (build mesin buruh pelabuhan) Anda.
- Biner aplikasi file didorong ke dalam registri gambar buruh pelabuhan.
- Biner aplikasi file ditarik dari registri gambar buruh pelabuhan dan disalin ke wadah buruh pelabuhan di XR (host target mesin buruh pelabuhan).
- Aplikasi ini dibangun dan dihosting di wadah buruh pelabuhan di XR.
Memperbarui Aplikasi di Kontainer Docker
Gambar berikut mengilustrasikan alur kerja untuk memperbarui aplikasi yang dihosting di kontainer buruh pelabuhan.
- Pembaruan aplikasi dihasilkan sebagai pembaruan lib dasar file (pembaruan delta file) dan didorong ke registri gambar buruh pelabuhan.
- Pembaruan delta file (hanya berisi perbedaan kode aplikasi) ditarik dari registri gambar buruh pelabuhan dan disalin ke wadah buruh pelabuhan di XR (host target mesin buruh pelabuhan).
- Kontainer buruh pelabuhan dimulai ulang dengan pembaruan delta file.
Hosting TPA Menggunakan Manajer Aplikasi
Tabel 1: Tabel Riwayat Fitur
| Fitur Nama | Informasi Rilis | Fitur Keterangan |
| Layanan Daemon Docker Sesuai Permintaan | Rilis 7.5.1 | Mulai rilis ini dan seterusnya,
Layanan daemon Docker dimulai di router hanya jika Anda mengonfigurasi aplikasi hosting pihak ketiga menggunakan aplikasimgr memerintah. Layanan berdasarkan permintaan tersebut mengoptimalkan sumber daya sistem operasi seperti CPU, memori, dan daya. Pada rilis sebelumnya, layanan daemon Docker secara otomatis dimulai saat router melakukan booting. |
Pada rilis sebelumnya, aplikasi dihosting dan dikontrol oleh perintah Docker. Perintah Docker ini dijalankan di bash shell Kernel yang juga menghosting perangkat lunak Cisco IOS XR. Dengan diperkenalkannya Manajer Aplikasi, sekarang dimungkinkan untuk mengelola hosting aplikasi pihak ketiga dan fungsinya melalui Cisco IOS XR CLI. Dengan fitur ini, semua aplikasi pihak ketiga yang diaktifkan dapat restart secara otomatis setelah router reload atau peralihan RP. Pengaktifan ulang aplikasi secara otomatis ini memastikan kelancaran fungsi aplikasi yang dihosting.
Perintah yang Didukung pada Manajer Aplikasi
Untuk setiap perintah atau konfigurasi manajer aplikasi yang dijalankan, Manajer Aplikasi melakukan tindakan yang diminta dengan berinteraksi dengan daemon Docker melalui soket Docker. Tabel berikut mencantumkan fungsionalitas kontainer Docker, perintah Docker generik yang digunakan dalam rilis sebelumnya, dan perintah manajer aplikasi setara yang kini dapat digunakan:
| Fungsionalitas | Perintah Docker Generik | Aplikasi Manajer Perintah |
| Instal aplikasi RPM | NA | Paket router#appmgr menginstal rpm
nama_gambar-0.1.0-XR_7.3.1.x86_64.rpm |
| Konfigurasikan dan aktifkan aplikasi | • Muat gambar – [xr-vm_node0_RP0_CPU0:~]$docker load -i /tmp/nama_gambar.ter
• Verifikasi gambar di router – xr-vm_node0_RP0_CPU0:~]$gambar buruh pelabuhan ls • Buat wadah di atas gambar – [xr-vm_node0_RP0_CPU0:~]$buruh pelabuhan membuat nama_gambar |
Router#konfigurasi
Router(config)#appmgr Router(config-appmgr)#application nama_aplikasi Router(config-aplikasi)#aktifkan sumber buruh pelabuhan tipe nama_gambar docker-run-opts “–net=Host” docker-run-cmd “iperf3 -s -d” |
| • Mulai kontainer – [xr-vm_node0_RP0_CPU0:~]$docker start my_container_id | Router(aplikasi konfigurasi)#commit | |
| View daftar, statistik, log, dan detail aplikasi
wadah |
• Daftar gambar
-[xr-vm_node0_RP0_CPU0:~]$gambar buruh pelabuhan ls • Daftar kontainer – [xr-vm_node0_RP0_CPU0:~]$buruh pelabuhan ps• Statistik -[xr-vm_node0_RP0_CPU0:~]$statistik buruh pelabuhan |
Router#tampilkan tabel sumber appmgr
Router#tampilkan nama aplikasi appmgr nama_aplikasi ringkasan informasi Router#tampilkan nama aplikasi appmgr nama_aplikasi detail informasi Router#tampilkan nama aplikasi appmgr nama_aplikasi Statistik |
| • Log
-[xr-vm_node0_RP0_CPU0:~]$log buruh pelabuhan |
Router#tampilkan tabel aplikasi appmgr
Router#tampilkan nama aplikasi appmgr nama_aplikasi catatan |
| Fungsionalitas | Perintah Docker Generik | Aplikasi Manajer Perintah |
| Jalankan yang baru | • Jalankan – [xr-vm_node0_RP0_CPU0:~]$docker exec -it my_container_id | Router#appmgr aplikasi eksekutif |
| memerintah
di dalam sebuah |
nama nama_aplikasi buruh pelabuhan-exec-cmd | |
| berlari | ||
| wadah | ||
| Hentikan wadah aplikasi | • Hentikan kontainer – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id | Nama penghentian aplikasi router#appmgr nama_aplikasi |
| Matikan wadah aplikasi | • Bunuh kontainer – [xr-vm_node0_RP0_CPU0:~]$docker kill my_container_id | Nama penghentian aplikasi router#appmgr nama_aplikasi |
| Mulai wadah aplikasi | • Mulai kontainer – [xr-vm_node0_RP0_CPU0:~]$docker start my_container_id | Nama awal aplikasi router#appmgr nama_aplikasi |
| Nonaktifkan aplikasi | • Hentikan kontainer – [xr-vm_node0_RP0_CPU0:~]$docker stop my_container_id | Router#konfigurasi
Router(config)#tidak ada aplikasi appmgr nama_aplikasi |
| • Hapus wadah – [xr-vm_node0_RP0_CPU0:~]$docker rm my_container_id | Router(konfigurasi)#commit | |
| • Hapus gambar – [xr-vm_node0_RP0_CPU0:~]$docker rmi nama_gambar | ||
| Uninstall gambar aplikasi/RPM | • Copot pemasangan gambar – [xr-vm_node0_RP0_CPU0:~]$docker copot pemasangan aplikasi nama_gambar | Paket uninstall paket router#appmgr
nama_gambar-0.1.0-XR_7.3.1.x86_64 |
Catatan: Penggunaan perintah manajer aplikasi dijelaskan di bagian “Hosting iPerf di Docker Containers untuk Memantau Kinerja Jaringan menggunakan Manajer Aplikasi”.
Mengonfigurasi Docker dengan Banyak VRF
Bagian ini menjelaskan bagaimana Anda dapat mengkonfigurasi Docker dengan beberapa VRF di Cisco IOS XR. Untuk informasi tentang mengonfigurasi beberapa VRF, lihat topik Mengonfigurasi Beberapa VRF untuk Hosting Aplikasi.
Konfigurasi
Gunakan langkah-langkah berikut untuk membuat dan menerapkan Docker multi-VRF di XR.
- Buat Docker multi-VRF dengan hak istimewa NET_ADMIN dan SYS_ADMIN.
Dalam contoh berikutample, container Docker yang berisi tiga VRF (kuning, biru, dan hijau) diluncurkan. Sang mantanample berasumsi bahwa image buruh pelabuhan “multivrfimage” sebelumnya telah diinstal menggunakan perintah instalasi paket appmgr.
Catatan:- Memasang seluruh konten /var/run/netns dari host ke Docker tidak disarankan, karena ini akan memasang konten netns yang terkait dengan XR dan bidang admin sistem ke Docker.
- Anda tidak boleh menghapus VRF dari Cisco IOS XR saat digunakan di Docker. Jika satu atau lebih VRF dihapus dari XR, Docker multi-VRF tidak dapat diluncurkan
- Verifikasi apakah Docker multi-VRF telah berhasil dimuat.

- Hubungkan ke kontainer Docker multi-VRF dengan menjalankan perintah berikut.
Router# aplikasi appmgr nama eksekutif multivrfcontainer1 docker-exec-cmd /bin/bash/
Secara default, Docker dimuat di namespace global-vrf di Cisco IOS XR. - Verifikasi apakah beberapa VRF dapat diakses dari Docker.


Anda telah berhasil meluncurkan Docker multi-VRF di Cisco IOS XR.
Dokumen / Sumber Daya
![]() |
Aplikasi Hosting CISCO IOS XR [Bahasa Indonesia:] Panduan Pengguna Aplikasi Hosting IOS XR, Aplikasi Hosting IOS XR, Aplikasi |

