Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Operator Nexus, atau hanya Operator Nexus, adalah instans yang terdiri dari perangkat keras komputasi dan jaringan yang diinstal di tempat pelanggan. Berbagai lapisan perangkat fisik dan virtual menyediakan konektivitas jaringan dan layanan perutean ke beban kerja yang berjalan pada perangkat keras komputasi ini. Dokumen ini memberikan deskripsi terperinci tentang masing-masing lapisan jaringan ini.
Topology
Di sini kami menjelaskan topologi perangkat keras dalam instans Operator Nexus.
Pelanggan memiliki dan mengelola router Tepi Penyedia (PE). Router ini mewakili tepi jaringan backbone pelanggan.
Operator Nexus mengelola router tepi pelanggan (CE). Router ini adalah bagian dari instance Operator Nexus dan disertakan dalam tagihan bahan (BOM) perangkat keras near-edge. Ada dua router CE di setiap instans Nexus Operator multi-rak. Setiap router CE memiliki uplink ke masing-masing router PE. Router CE adalah satu-satunya perangkat Operator Nexus yang terhubung secara fisik ke jaringan pelanggan.
Setiap rak server komputasi dalam instans multi-rak Azure Operator Nexus memiliki dua sakelar top-of-rack (TOR). Setiap TOR memiliki uplink ke masing-masing router CE. Setiap TOR terhubung ke setiap server komputasi bare metal di rak dan dikonfigurasi sebagai switch lapisan 2 sederhana.
Logam telanjang
Beban kerja penyewa yang berjalan pada infrastruktur komputasi ini biasanya merupakan fungsi jaringan virtual atau kontainer. Fungsi jaringan virtual (VNF) berjalan sebagai komputer virtual (VM) pada perangkat keras server komputasi. Fungsi jaringan kontainer (CNF) berjalan di dalam kontainer. Kontainer ini berjalan pada VM yang dijalankan sendiri pada perangkat keras server komputasi.
Fungsi jaringan yang menyediakan layanan sarana data pengguna akhir memerlukan antarmuka jaringan berkinerja tinggi yang menawarkan fitur canggih dan tingkat I/O tinggi.
Dalam instans multi-rak Operator Nexus pada jarak dekat, setiap server komputasi bare metal adalah mesin dengan dua soket dengan arsitektur Non-Uniform Memory Access (NUMA).
Server komputasi bare metal dalam instans Azure Operator Nexus multi-rak tepi berisi satu kartu antarmuka jaringan port ganda (pNIC) untuk setiap sel NUMA. PNIC ini mendukung Single-Root I/O Virtualization (SR-IOV) dan fitur berkinerja tinggi lainnya. Satu sel NUMA terdiri dari memori dan CPU yang diselaraskan dengan satu pNIC.
Semua antarmuka jaringan yang ditetapkan untuk beban kerja penyewa adalah perangkat passthrough host dan menggunakan fungsi virtual (VF) SR-IOV yang dialokasikan dari pNIC yang diselaraskan dengan sel NUMA tempat sumber daya CPU dan memori VM beban kerja berada. Pengaturan ini memastikan performa optimal rangkaian jaringan di dalam VM dan kontainer yang dialokasikan untuk VF tersebut.
Rak komputasi dipasang dengan sepasang sakelar Top-of-Rack (TOR). Setiap pNIC pada setiap server komputasi bare metal terhubung ke kedua TOR tersebut. Grup agregasi tautan multi-sasis (MLAG) menyediakan ketersediaan tinggi dan protokol kontrol agregasi tautan (LACP) menyediakan peningkatan throughput agregat untuk tautan.
Setiap server komputasi bare metal memiliki antarmuka jaringan penyimpanan yang disediakan oleh bond yang menggabungkan dua fungsi virtual (VF) lokal host (berbeda dengan VF lokal VM) yang terhubung ke kedua pNIC. Kedua VF ini diagregasi dalam ikatan aktif cadangan untuk memastikan bahwa jika salah satu pNIC gagal, konektivitas penyimpanan jaringan tetap tersedia.
Sumber daya jaringan logis
Saat berinteraksi dengan Operator Nexus Network Cloud API dan MANAGED Network Fabric API, pengguna membuat dan memodifikasi sekumpulan sumber daya logis.
Sumber daya logis di API Managed Network Fabric sesuai dengan jaringan dan konfigurasi kontrol akses pada perangkat keras jaringan yang mendasar (TOR dan CEs). Terutama, ManagedNetworkFabric.L2IsolationDomain dan ManagedNetworkFabric.L3IsolationDomain sumber daya berisi sakelar tingkat rendah dan konfigurasi jaringan. Sebuah ManagedNetworkFabric.L2IsolationDomain mewakili pengidentifikasi jaringan area lokal virtual (VLAN).
ManagedNetworkFabric.L3IsolationDomain mewakili konfigurasi perutean dan penerusan virtual (VRF) pada router CE.
Baca tentang konsep Domain Isolasi.
Sumber daya logis di Network Cloud API sesuai dengan infrastruktur komputasi. Ada sumber daya untuk rak fisik dan perangkat keras bare metal. Demikian juga, ada sumber daya untuk kluster Kubernetes dan komputer virtual yang berjalan pada perangkat keras tersebut dan jaringan logis yang menghubungkannya.
NetworkCloud.L2Network, NetworkCloud.L3Network, dan NetworkCloud.TrunkedNetwork semua mewakili jaringan beban kerja, yang berarti lalu lintas pada jaringan ini dimaksudkan untuk beban kerja penyewa.
Sebuah NetworkCloud.L2Network mewakili jaringan lapisan-2 dan berisi sedikit lebih dari sekadar tautan ke ManagedNetworkFabric.L2IsolationDomain. L2IsolationDomain ini berisi pengidentifikasi VLAN dan pengaturan unit transmisi maksimum (MTU).
Sebuah NetworkCloud.L3Network mewakili jaringan lapisan-3 dan berisi pengidentifikasi VLAN, informasi tentang penetapan alamat IP untuk titik akhir pada jaringan dan tautan ke ManagedNetworkFabric.L3IsolationDomain.
Nota
NetworkCloud.L3Network Mengapa sumber daya berisi pengidentifikasi VLAN?
Bukankah VLAN konsep layer-2?
Ya, ya benar mereka! Alasan untuk ini disebabkan oleh fakta bahwa NetworkCloud.L3Network harus dapat merujuk ke spesifik ManagedNetworkFabric.InternalNetwork.
ManagedNetworkFabric.InternalNetworks dibuat dalam ManagedNetworkFabric.L3IsolationDomain tertentu dan diberikan pengidentifikasi VLAN.
Oleh karena itu, untuk mereferensikan ManagedNetworkFabric.InternalNetwork tertentu, NetworkCloud.L3Network harus berisi identifikator L3IsolationDomain dan identifikator VLAN.
Sumber daya jaringan logis di Network Cloud API seperti NetworkCloud.L3Networkmereferensikan sumber daya logis di API Managed Network Fabric dan dengan demikian menyediakan koneksi logis antara infrastruktur komputasi fisik dan infrastruktur jaringan fisik.
Saat membuat Nexus Virtual Machine, Anda dapat menentukan nol atau lebih L2, L3, dan Jaringan Terpotong di Nexus Virtual Machine.NetworkAttachments Saat membuat Kluster Kubernetes Nexus, Anda dapat menentukan nol atau lebih Jaringan L2, L3, dan Trunked di bidang Kluster NetworkConfiguration.AttachedNetworkConfiguration Kubernetes Nexus.
AgentPools adalah kumpulan node pekerja Kubernetes serupa dalam Kluster Kubernetes Nexus. Anda dapat mengonfigurasi jaringan L2, L3, dan Trunked yang terpasang pada setiap Agent Pool di bidang AttachedNetworkConfiguration AgentPool.
Anda dapat berbagi jaringan dengan Nexus Virtual Machines dan Nexus Kubernetes Clusters yang mandiri. Komposabilitas ini memungkinkan Anda untuk menyatukan CNFs dan VNFs yang bekerja bersamaan di seluruh jaringan logis yang sama.
Diagram menunjukkan contoh kluster Nexus Kubernetes dengan dua kumpulan agen dan Nexus Virtual Machine mandiri yang terhubung ke jaringan beban kerja yang berbeda. Kumpulan Agen "AP1" tidak memiliki konfigurasi jaringan tambahan dan oleh karena itu mewarisi informasi jaringan KubernetesCluster. Perhatikan juga bahwa semua node Kubernetes dan semua mesin virtual Nexus yang berdiri sendiri dikonfigurasi untuk terhubung ke jaringan layanan cloud yang sama. Terakhir, Kumpulan Agen "AP2" dan VM mandiri telah dikonfigurasi untuk terhubung ke "Jaringan L3 Bersama".
The CloudServicesNetwork
Nexus Virtual Machines dan Nexus Kubernetes Clusters selalu mereferensikan sesuatu yang disebut "Cloud Services Network" (CSN). CSN adalah jaringan khusus yang digunakan untuk lalu lintas antara beban kerja lokal dan sekumpulan titik akhir eksternal atau yang dihosting Azure.
Lalu lintas di CloudServicesNetwork dirutekan melalui proksi, yang mengontrol lalu lintas keluar melalui penggunaan daftar izin. Pengguna dapat menyetel daftar izin ini menggunakan Network Cloud API.
Jaringan CNI
Saat membuat Kluster Kubernetes Nexus, Anda menyediakan identitas sumber daya NetworkCloud.L3Network di NetworkConfiguration.CniNetworkId kolom.
"Jaringan CNI" ini, kadang-kadang disebut sebagai "Jaringan DefaultCNI", menentukan jaringan layer-3 yang menyediakan alamat IP untuk Node Kubernetes di kluster Nexus Kubernetes.
Diagram menunjukkan hubungan antara beberapa sumber daya logis Network Cloud, Managed Network Fabric, dan Kubernetes. Dalam diagram, NetworkCloud.L3Network adalah sebuah sumber daya logis di Network Cloud API yang mewakili lapisan jaringan 3. Sumber daya NetworkCloud.KubernetesCluster memiliki bidang networkConfiguration.cniNetworkId yang berisi referensi ke sumber daya NetworkCloud.L3Network.
Sumber daya NetworkCloud.L3Network dikaitkan dengan satu sumber daya ManagedNetworkFabric.InternalNetwork melalui bidang l3IsolationDomainId dan vlanId. Sumber daya ManagedNetworkFabric.L3IsolationDomain berisi satu atau beberapa sumber daya ManagedNetworkFabric.InternalNetwork, yang diindeks oleh vlanId. Saat pengguna membuat NetworkCloud.KubernetesCluster sumber daya, satu atau beberapa NetworkCloud.AgentPool sumber daya dibuat.
Masing-masing sumber daya ini NetworkCloud.AgentPool terdiri dari satu atau beberapa komputer virtual. Sumber daya Kubernetes Node mewakili masing-masing komputer virtual tersebut. Sumber daya Kubernetes Node ini harus mendapatkan alamat IP dan plugin Container Networking Interface (CNI) pada komputer virtual mengambil alamat IP dari kumpulan alamat IP yang terkait dengan NetworkCloud.L3Network. Resource NetworkCloud.KubernetesCluster merujuk ke NetworkCloud.L3Network melalui bidang cniNetworkId. Aturan perutean dan akses untuk alamat IP tingkat simpul tersebut terkandung dalam ManagedNetworkFabric.L3IsolationDomain.
NetworkCloud.L3Network merujuk pada ManagedNetworkFabric.L3IsolationDomain melalui bidang l3IsoldationDomainId-nya.
Jaringan Operator Nexus Kubernetes
Ada tiga lapisan logis jaringan di Kubernetes:
- Lapisan jaringan simpul
- Lapisan jaringan Pod
- Lapisan jaringan layanan
Lapisan jaringan Node menyediakan konektivitas antara plan kontrol Kubernetes dan agen node pekerja kubelet.
Lapisan jaringan Pod menyediakan konektivitas antara kontainer (Pod) yang berjalan di dalam kluster Nexus Kubernetes dan konektivitas antara Pod dan satu atau beberapa jaringan yang ditentukan penyewa.
Lapisan jaringan Layanan menyediakan fungsionalitas penyeimbangan beban dan ingress untuk set Pod terkait.
Jaringan simpul
Kluster Operator Nexus Kubernetes menampung satu atau beberapa fungsi jaringan kontainer (CNF) yang berjalan pada komputer virtual (VM). Node Kubernetes mewakili satu VM. Node Kubernetes mungkin berupa Node Sarana Kontrol atau Node Pekerja . Node Sarana Kontrol berisi komponen manajemen untuk Kluster Kubernetes. Node Pekerja menampung beban kerja penyewa.
Grup Simpul Pekerja Kubernetes disebut Kumpulan Agen. Kumpulan Agen adalah konstruksi Operator Nexus, bukan konstruksi Kubernetes.
Setiap server komputasi bare metal dalam instans Operator Nexus memiliki switchdev yang diafinisikan ke sel NUMA tunggal di server bare metal. Switchdev menampung satu set port representor VF SR-IOV yang menyediakan konektivitas ke sekumpulan perangkat penghubung yang digunakan untuk menampung tabel perutean bagi berbagai jaringan.
Selain defaultcni antarmuka, Operator Nexus membangun cloudservices antarmuka jaringan pada setiap Node. Antarmuka cloudservices jaringan bertanggung jawab untuk merutekan lalu lintas yang ditujukan untuk titik akhir eksternal (ke tempat pelanggan). Antarmuka cloudservices jaringan sesuai dengan NetworkCloud.CloudServicesNetwork sumber daya API yang ditentukan pengguna sebelum membuat kluster Nexus Kubernetes. Alamat IP yang ditetapkan ke cloudservices antarmuka jaringan adalah alamat tautan-lokal, memastikan bahwa lalu lintas jaringan eksternal selalu melintasi antarmuka khusus ini.
Selain antarmuka jaringan defaultcni dan cloudservices, Operator Nexus membuat satu atau beberapa antarmuka jaringan pada setiap Node Kubernetes yang terkait dengan NetworkCloud.L2Network, NetworkCloud.L3Network, dan NetworkCloud.TrunkedNetwork dalam asosiasi dengan kluster Nexus Kubernetes atau AgentPool.
Hanya VM Kumpulan Agen yang memiliki antarmuka jaringan tambahan ini. Mesin Virtual (VM) Control Plane hanya memiliki antarmuka jaringan defaultcni dan cloudservices.
Manajemen Alamat IP Node (IPAM)
Simpul di Kumpulan Agen menerima alamat IP dari kumpulan alamat IP yang terkait dengan sumber daya yang NetworkCloud.L3Network dirujuk di NetworkCloud.KubernetesCluster bidang sumber daya networkConfiguration.cniNetworkId . Jaringan ini defaultcni adalah gateway default untuk semua Pod yang berjalan pada Node tersebut dan berfungsi sebagai jaringan default untuk komunikasi Pod ke Pod timur-barat dalam kluster Nexus Kubernetes.
Jaringan untuk pod
Pod Kubernetes adalah koleksi dari satu atau beberapa gambar kontainer yang berjalan di namespace Linux. Namespace layanan Linux ini mengisolasi proses dan sumber daya kontainer dari kontainer dan proses lain pada host. Untuk kluster Nexus Kubernetes, "host" ini adalah VM yang diwakili sebagai Node Pekerja Kubernetes.
Sebelum membuat Operator Nexus Kubernetes Cluster, pengguna terlebih dahulu membuat sekumpulan sumber daya yang mewakili jaringan virtual, dari mana beban kerja penyewa diberikan alamat. Jaringan virtual ini kemudian dirujuk dalam bidang cniNetworkId, cloudServicesNetworkId, agentPoolL2Networks, agentPoolL3Networks, dan agentPoolTrunkedNetworks ketika membuat Klaster Operator Nexus Kubernetes.
Pod dapat berjalan di server komputasi apa pun di rak mana pun dalam instans Operator Nexus. Secara default semua Pod dalam kluster Nexus Kubernetes dapat berkomunikasi satu sama lain melalui apa yang dikenal sebagai jaringan pod. Beberapa plugin Container Networking Interface (CNI) yang diinstal di setiap Nexus Kubernetes Worker Node mengelola jaringan Pod.
Jaringan Ekstra
Saat membuat Pod dalam Kluster Kubernetes Nexus, Anda mendeklarasikan jaringan tambahan yang harus dihubungkan ke Pod dengan menentukan sebuah anotasi k8s.v1.cni.cnf.io/networks. Nilai anotasi adalah daftar nama jaringan yang dibatasi koma. Nama jaringan ini sesuai dengan nama Jaringan Trunked, L3, atau L2 yang terkait dengan Kluster Nexus Kubernetes atau Kumpulan Agen.
Operator Nexus mengonfigurasi VM Kumpulan Agen dengan file NetworkAttachmentDefinition (NAD) yang berisi konfigurasi jaringan untuk satu jaringan tambahan.
Untuk setiap Jaringan Terpotong yang tercantum dalam jaringan terkait Pod, Pod mendapatkan satu antarmuka jaringan. Beban kerja bertanggung jawab untuk mengirim lalu lintas yang diberi tag secara mentah melalui antarmuka ini atau membangun antarmuka yang diberi tag di atas antarmuka jaringan.
Untuk setiap Jaringan L2 yang tercantum dalam jaringan terkait Pod, Pod mendapatkan satu antarmuka jaringan. Beban kerja bertanggung jawab atas alamat MAC statis mereka sendiri.
Manajemen Alamat IP Pod
Saat membuat kluster Nexus Kubernetes, Anda menentukan rentang alamat IP untuk jaringan pod di podCidrs bidang . Ketika Pod diluncurkan, plugin CNI menciptakan antarmuka eth0@ifXX di Pod dan menetapkan alamat IP dari suatu rentang alamat IP dalam bidang podCidrs tersebut.
Untuk Jaringan L3, jika jaringan telah dikonfigurasi untuk menggunakan Nexus IPAM, antarmuka jaringan Pod yang terkait dengan Jaringan L3 menerima alamat IP dari rentang alamat IP (CIDR) yang dikonfigurasi untuk jaringan tersebut. Jika Jaringan L3 tidak dikonfigurasi untuk menggunakan Nexus IPAM, beban kerja bertanggung jawab untuk menetapkan alamat IP secara statis ke antarmuka jaringan Pod.
Pengaturan Rute
Di dalam setiap Pod, lalu lintas dari antarmuka
Antarmuka eth0 di dalam Pod memiliki tabel rute sederhana yang secara efektif menggunakan tabel rute VM simpul pekerja untuk salah satu lalu lintas berikut.
- Lalu lintas antar pod: Lalu lintas yang ditujukan untuk IP dalam
podCidrsrentang alamat mengalir ke switchdev pada VM host dan melalui antarmuka tingkat Nodedefaultcnidi mana ia dirutekan ke alamat IP VM kumpulan agen yang sesuai dengan tujuan. - Lalu lintas jaringan L3 OSDevice: Lalu lintas yang ditujukan untuk IP di Jaringan L3 yang terkait dengan tipe plugin
OSDevicemengalir ke switchdev pada VM host dan melalui antarmuka tingkat Node yang terhubung dengan Jaringan L3 tersebut. - Semua lalu lintas lainnya dialihkan ke gateway default di Pod, yang meneruskan ke antarmuka pada tingkat
cloudservicesNode. Aturan egress yang dikonfigurasi pada CloudServicesNetwork yang terkait dengan kluster Nexus Kubernetes kemudian menentukan bagaimana lalu lintas harus dirutekan.
Antarmuka jaringan tambahan di dalam Pod akan menggunakan tabel rute Pod untuk mengalihkan lalu lintas ke Jaringan L3 tambahan yang menggunakan jenis plugin SRIOV dan DPDK.
Konfigurasi CNI BFD dan BGP
Konfigurasi Default BFD
Parameter Deteksi Penerusan Dua Arah (BFD) dapat dikonfigurasi untuk setiap peering BGP. Timer BFD dinegosiasikan antara kluster Operator Nexus Kubernetes dan router peer. Nilai timer yang lebih tinggi antara kedua router dipilih, yang merupakan perilaku BFD standar. Kluster Nexus Kubernetes menggunakan nilai berikut
- Interval: 300ms
-
Pengali: 3
Jika BFD tidak diaktifkan pada router serekan, sesi tidak akan dibuat.
Konfigurasi BGP Default
Timer Border Gateway Protocol (BGP) dinegosiasikan antara kluster Kubernetes Operator Nexus dan router mitra. Nilai timer penahanan terendah antara kedua router dipilih yang merupakan perilaku BGP standar. Kluster Nexus Kubernetes menggunakan nilai berikut
- waktu penahanan: 240 detik waktu penahanan
- interval tetap hidup: 1/3 waktu penahanan (80 detik) Jika sesi BFD juga ada, BGP akan memanfaatkan BFD untuk mendeteksi rekan-rekan yang gagal.