AKS diaktifkan oleh persyaratan jaringan Azure Arc
Berlaku untuk: Azure Stack HCI, versi 23H2
Artikel ini memperkenalkan konsep jaringan inti untuk VM dan aplikasi Anda di AKS yang diaktifkan oleh Azure Arc. Artikel ini juga menjelaskan prasyarat jaringan yang diperlukan untuk membuat kluster Kubernetes. Sebaiknya Anda bekerja sama dengan administrator jaringan untuk menyediakan dan menyiapkan parameter jaringan yang diperlukan untuk menyebarkan AKS yang diaktifkan oleh Arc.
Dalam artikel konseptual ini, komponen utama berikut diperkenalkan. Komponen-komponen ini memerlukan alamat IP statis agar kluster dan aplikasi AKS Arc berhasil membuat dan beroperasi:
- VM kluster AKS
- IP sarana kontrol AKS
- Load balancer untuk aplikasi dalam kontainer
Jaringan untuk VM kluster AKS
Simpul Kubernetes disebarkan sebagai komputer virtual khusus di AKS yang diaktifkan oleh Arc. VM ini dialokasikan alamat IP untuk mengaktifkan komunikasi antara simpul Kubernetes. AKS Arc menggunakan jaringan logis Azure Stack HCI untuk menyediakan alamat IP dan jaringan untuk VM yang mendasar dari kluster Kubernetes. Untuk informasi selengkapnya tentang jaringan logis, lihat Jaringan logis untuk Azure Stack HCI. Anda harus merencanakan untuk memesan satu alamat IP per VM node kluster AKS di lingkungan Azure Stack HCI Anda.
Catatan
IP statis adalah satu-satunya mode yang didukung untuk menetapkan alamat IP ke AKS Arc VM. Ini karena Kubernetes memerlukan alamat IP yang ditetapkan ke node Kubernetes agar konstan sepanjang siklus hidup kluster Kubernetes. Jaringan virtual yang ditentukan perangkat lunak dan fitur terkait SDN saat ini tidak didukung pada AKS di Azure Stack HCI 23H2.
Parameter berikut diperlukan untuk menggunakan jaringan logis untuk operasi pembuatan kluster AKS Arc:
Parameter jaringan logis | Deskripsi | Parameter yang diperlukan untuk kluster AKS Arc |
---|---|---|
--address-prefixes |
AddressPrefix untuk jaringan. Saat ini hanya 1 awalan alamat yang didukung. Penggunaan: --address-prefixes "10.220.32.16/24" . |
|
--dns-servers |
Daftar alamat IP server DNS yang dipisahkan spasi. Penggunaan: --dns-servers 10.220.32.16 10.220.32.17 . |
|
--gateway |
Gateway. Alamat IP gateway harus berada dalam cakupan awalan alamat. Penggunaan: --gateway 10.220.32.16 . |
|
--ip-allocation-method |
Metode alokasi alamat IP. Nilai yang didukung adalah "Statis". Penggunaan: --ip-allocation-method "Static" . |
|
--ip-pool-start |
Alamat IP awal kumpulan IP Anda. Alamat harus dalam rentang awalan alamat. Penggunaan: --ip-pool-start "10.220.32.18" . |
|
--ip-pool-end |
Alamat IP akhir kumpulan IP Anda. Alamat harus dalam rentang awalan alamat. Penggunaan: --ip-pool-end "10.220.32.38" . |
|
--vm-switch-name |
Nama sakelar VM. Penggunaan: --vm-switch-name "vm-switch-01" . |
IP sarana kontrol
Kubernetes menggunakan sarana kontrol untuk memastikan setiap komponen dalam kluster Kubernetes disimpan dalam keadaan yang diinginkan. Sarana kontrol juga mengelola dan memelihara simpul pekerja yang menyimpan aplikasi dalam kontainer. AKS yang diaktifkan oleh Arc menyebarkan load balancer KubeVIP untuk memastikan bahwa alamat IP server API dari sarana kontrol Kubernetes tersedia setiap saat. Instans KubeVIP ini memerlukan satu "alamat IP sarana kontrol" yang tidak dapat diubah agar berfungsi dengan benar.
Catatan
IP sarana kontrol adalah parameter yang diperlukan untuk membuat kluster Kubernetes. Anda harus memastikan bahwa alamat IP sarana kontrol kluster Kubernetes tidak tumpang tindih dengan hal lain, termasuk jaringan logis komputer virtual Arc, IP jaringan infrastruktur, load balancer, dll. IP sarana kontrol juga harus berada dalam cakupan awalan alamat jaringan logis, tetapi di luar kumpulan IP. Ini karena kumpulan IP hanya digunakan untuk VM, dan jika Anda memilih alamat IP dari kumpulan IP untuk sarana kontrol, konflik alamat IP dapat dihasilkan. Alamat IP yang tumpang tindih dapat menyebabkan kegagalan tak terduga untuk kluster AKS dan tempat lain alamat IP sedang digunakan. Anda harus merencanakan untuk memesan satu alamat IP per kluster Kubernetes di lingkungan Anda.
IP load balancer untuk aplikasi dalam kontainer
Tujuan utama load balancer adalah untuk mendistribusikan lalu lintas di beberapa node dalam kluster Kubernetes. Penyeimbangan beban ini dapat membantu mencegah waktu henti dan meningkatkan performa aplikasi secara keseluruhan. AKS mendukung opsi berikut untuk menyebarkan load balancer untuk kluster Kubernetes Anda:
- Sebarkan load balancer MetalLB menggunakan ekstensi Azure Arc.
- Bawa load balancer pihak ketiga Anda sendiri.
Baik Anda memilih ekstensi MetalLB Arc, atau membawa load balancer Anda sendiri, Anda harus menyediakan sekumpulan alamat IP ke layanan load balancer. Anda memiliki opsi berikut:
- Berikan alamat IP untuk layanan Anda dari subnet yang sama dengan AKS Arc VM.
- Gunakan jaringan dan daftar alamat IP yang berbeda jika aplikasi Anda memerlukan penyeimbangan beban eksternal.
Terlepas dari opsi yang Anda pilih, Anda harus memastikan bahwa alamat IP yang dialokasikan ke load balancer tidak bertentangan dengan alamat IP di jaringan logis atau IP sarana kontrol untuk kluster Kubernetes Anda. Alamat IP yang bertentangan dapat menyebabkan kegagalan yang tidak terduga dalam penyebaran dan aplikasi AKS Anda.
Perencanaan alamat IP sederhana untuk kluster dan aplikasi Kubernetes
Dalam panduan skenario berikut, Anda memesan alamat IP dari satu jaringan untuk kluster dan layanan Kubernetes Anda. Ini adalah skenario paling mudah dan sederhana untuk penetapan alamat IP.
Persyaratan alamat IP | Jumlah minimum alamat IP | Bagaimana dan di mana melakukan reservasi ini |
---|---|---|
IP VM AKS Arc | Pesan satu alamat IP untuk setiap simpul pekerja di kluster Kubernetes Anda. Misalnya, jika Anda ingin membuat 3 kumpulan simpul dengan 3 simpul di setiap kumpulan simpul, Anda harus memiliki 9 alamat IP di kumpulan IP Anda. | Cadangkan alamat IP untuk AKS Arc VM melalui kumpulan IP di jaringan logis VM Arc. |
IP peningkatan versi AKS Arc K8s | Karena AKS Arc melakukan peningkatan bergulir, cadangkan satu alamat IP untuk setiap kluster AKS Arc untuk operasi peningkatan versi Kubernetes. | Pesan alamat IP untuk operasi peningkatan versi K8s melalui kumpulan IP di jaringan logis VM Arc. |
IP sarana kontrol | Pesan satu alamat IP untuk setiap kluster Kubernetes di lingkungan Anda. Misalnya, jika Anda ingin membuat total 5 kluster, cadangkan 5 alamat IP, satu untuk setiap kluster Kubernetes. | Cadangkan alamat IP untuk IP sarana kontrol di subnet yang sama dengan jaringan logis komputer virtual Arc, tetapi di luar kumpulan IP yang ditentukan. |
IP load balancer | Jumlah alamat IP yang dicadangkan tergantung pada model penyebaran aplikasi Anda. Sebagai titik awal, Anda dapat memesan satu alamat IP untuk setiap layanan Kubernetes. | Cadangkan alamat IP untuk IP sarana kontrol di subnet yang sama dengan jaringan logis komputer virtual Arc, tetapi di luar kumpulan IP yang ditentukan. |
Contoh panduan untuk reservasi alamat IP untuk kluster dan aplikasi Kubernetes
Jane adalah administrator TI yang baru saja memulai dengan AKS yang diaktifkan oleh Azure Arc. Dia ingin menyebarkan dua kluster Kubernetes: kluster Kubernetes A dan kluster Kubernetes B pada kluster Azure Stack HCI-nya. Dia juga ingin menjalankan aplikasi pemungutan suara di atas kluster A. Aplikasi ini memiliki tiga instans UI front-end yang berjalan di dua kluster dan satu instans database backend. Semua kluster dan layanan AKS-nya berjalan dalam satu jaringan, dengan satu subnet.
- Kluster Kubernetes A memiliki 3 simpul sarana kontrol dan 5 simpul pekerja.
- Kluster Kubernetes B memiliki 1 simpul sarana kontrol dan 3 simpul pekerja.
- 3 instans UI front-end (port 443).
- 1 instans database backend (port 80).
Berdasarkan tabel sebelumnya, dia harus memesan total 19 alamat IP di subnetnya:
- 8 alamat IP untuk VM simpul AKS Arc di kluster A (satu IP per VM node K8s).
- 4 alamat IP untuk VM simpul AKS Arc di kluster B (satu IP per VM node K8s).
- 2 alamat IP untuk menjalankan operasi peningkatan AKS Arc (satu alamat IP per kluster AKS Arc).
- 2 alamat IP untuk sarana kontrol AKS Arc (satu alamat IP per kluster AKS Arc)
- 3 alamat IP untuk layanan Kubernetes (satu alamat IP per instans UI front-end, karena semuanya menggunakan port yang sama. Database backend dapat menggunakan salah satu dari tiga alamat IP selama menggunakan port yang berbeda).
Melanjutkan dengan contoh ini, dan menambahkannya ke tabel berikut, Anda mendapatkan:
Parameter | Jumlah alamat IP | Bagaimana dan di mana melakukan reservasi ini |
---|---|---|
Peningkatan versi AKS Arc VM dan K8s | Memesan 14 alamat IP | Lakukan reservasi ini melalui kumpulan IP di jaringan logis Azure Stack HCI. |
IP sarana kontrol | Pesan 2 alamat IP, satu untuk kluster AKS Arc | controlPlaneIP Gunakan parameter untuk meneruskan alamat IP untuk IP sarana kontrol. Pastikan IP ini berada di subnet yang sama dengan jaringan logis Arc, tetapi di luar kumpulan IP yang ditentukan dalam jaringan logis Arc. |
IP load balancer | 3 alamat IP untuk layanan Kubernetes, untuk aplikasi voting Jane. | Alamat IP ini digunakan saat Anda menginstal load balancer pada kluster A. Anda dapat menggunakan ekstensi MetalLB Arc, atau membawa load balancer pihak ke-3 Anda sendiri. Pastikan IP ini berada di subnet yang sama dengan jaringan logis Arc, tetapi di luar kumpulan IP yang ditentukan dalam jaringan logis VM Arc. |
Pengaturan proksi
Pengaturan proksi di AKS diwarisi dari sistem infrastruktur yang mendasar. Fungsionalitas untuk mengatur pengaturan proksi individual untuk kluster Kubernetes dan mengubah pengaturan proksi belum didukung.
Port jaringan dan persyaratan lintas VLAN
Saat Anda menyebarkan Azure Stack HCI, Anda mengalokasikan blok yang berdampingan dari setidaknya enam alamat IP statis pada subnet jaringan manajemen Anda, menghilangkan alamat yang sudah digunakan oleh server fisik. IP ini digunakan oleh Azure Stack HCI dan infrastruktur internal (Arc Resource Bridge) untuk manajemen Arc VM dan AKS Arc. Jika jaringan manajemen Anda yang menyediakan alamat IP ke layanan Azure Stack HCI terkait Arc Resource Bridge berada di VLAN yang berbeda dari jaringan logis yang Anda gunakan untuk membuat kluster AKS, Anda perlu memastikan bahwa port berikut dibuka agar berhasil membuat dan mengoperasikan kluster AKS.
Port Tujuan | Tujuan | Sumber | Deskripsi | Catatan jaringan lintas VLAN |
---|---|---|---|---|
22 | Jaringan logis yang digunakan untuk VM AKS Arc | Alamat IP dalam jaringan manajemen | Diperlukan untuk mengumpulkan log untuk pemecahan masalah. | Jika Anda menggunakan VLAN terpisah, alamat IP dalam jaringan manajemen yang digunakan untuk Azure Stack HCI dan Arc Resource Bridge perlu mengakses VM kluster AKS Arc pada port ini. |
6443 | Jaringan logis yang digunakan untuk VM AKS Arc | Alamat IP dalam jaringan manajemen | Diperlukan untuk berkomunikasi dengan API Kubernetes. | Jika Anda menggunakan VLAN terpisah, alamat IP dalam jaringan manajemen yang digunakan untuk Azure Stack HCI dan Arc Resource Bridge perlu mengakses VM kluster AKS Arc pada port ini. |
55000 | Alamat IP dalam jaringan manajemen | Jaringan logis yang digunakan untuk VM AKS Arc | Server gRPC Agen Cloud | Jika Anda menggunakan VLAN terpisah, VM AKS Arc perlu mengakses alamat IP dalam jaringan manajemen yang digunakan untuk IP agen cloud dan IP kluster pada port ini. |
65000 | Alamat IP dalam jaringan manajemen | Jaringan logis yang digunakan untuk VM AKS Arc | Autentikasi gRPC Agen Cloud | Jika Anda menggunakan VLAN terpisah, VM AKS Arc perlu mengakses alamat IP dalam jaringan manajemen yang digunakan untuk IP agen cloud dan IP kluster pada port ini. |
Pengecualian URL firewall
Untuk informasi tentang daftar izin firewall/URL proksi Azure Arc, lihat persyaratan jaringan jembatan sumber daya Azure Arc dan persyaratan jaringan Azure Stack HCI 23H2.
Catatan
Jika Anda menyebarkan rilis Azure Stack HCI yang lebih lama, seperti 2402 dan yang lebih lama, Anda juga harus mengizinkan URL gcr.io dan storage.googleapis.com . URL ini dihapus dari rilis AKS Arc terbaru.
URL | Port | Layanan | Catatan |
---|---|---|---|
https://mcr.microsoft.com *.data.mcr.microsoft.com azurearcfork8s.azurecr.io linuxgeneva-microsoft.azurecr.io pipelineagent.azurecr.io ecpacr.azurecr.io https://azurearcfork8sdev.azurecr.io https://hybridaks.azurecr.io aszk8snetworking.azurecr.io |
443 | AKS Arc | Digunakan untuk artefak Resmi Microsoft seperti gambar kontainer. |
docker.io |
443 | AKS Arc | Digunakan untuk artefak resmi Kubernetes seperti gambar dasar kontainer. |
hybridaksstorage.z13.web.core.windows.net |
443 | AKS Arc | Situs web statis AKSHCI yang dihosting di Azure Storage. |
*.blob.core.windows.net *.dl.delivery.mp.microsoft.com *.do.dsp.mp.microsoft.com |
443 | AKS Arc | Digunakan untuk unduhan dan pembaruan gambar AKS Arc VHD. |
*.prod.do.dsp.mp.microsoft.com |
443 | AKS Arc | Digunakan untuk unduhan dan pembaruan gambar AKS Arc VHD. |
*.login.microsoft.com |
443 | Azure | Diperlukan untuk mengambil dan memperbarui token Azure Resource Manager untuk masuk ke Azure. |
https://*.his.arc.azure.com |
443 | K8 dengan dukungan Azure Arc | Digunakan untuk identitas agen Arc dan kontrol akses. |
https://*.dp.kubernetesconfiguration.azure.com |
443 | K8 dengan dukungan Azure Arc | Digunakan untuk konfigurasi Azure Arc. |
https://*.servicebus.windows.net |
443 | K8 dengan dukungan Azure Arc | Digunakan untuk terhubung dengan aman ke kluster Kubernetes dengan dukungan Azure Arc tanpa memerlukan port masuk apa pun untuk diaktifkan pada firewall. |
https://guestnotificationservice.azure.com |
443 | K8 dengan dukungan Azure Arc | Digunakan untuk operasi pemberitahuan tamu. |
sts.windows.net |
443 | K8 dengan dukungan Azure Arc | Untuk skenario Cluster Connect dan Custom Location-based. |
https://*.dp.prod.appliances.azure.com |
443 | Jembatan Sumber Daya Arc | Digunakan untuk operasi data plane untuk Resource bridge (appliance). |
*.prod.microsoftmetrics.com *.prod.hot.ingestion.msftcloudes.com dc.services.visualstudio.com *.prod.warm.ingest.monitor.core.windows.net gcs.prod.monitoring.core.windows.net https://adhs.events.data.microsoft.com https://v20.events.data.microsoft.com |
443 | Metrik dan Pemantauan Kesehatan | Digunakan untuk metrik dan memantau lalu lintas telemetri. |
pypi.org *.pypi.org files.pythonhosted.org |
443 | Azure CLI | Digunakan untuk mengunduh ekstensi Az CLI dan Az CLI. |
aka.ms |
443 | Azure Stack HCI | Diperlukan untuk unduhan terkait Azure Stack HCI. |
raw.githubusercontent.com |
443 | GitHub | Digunakan untuk GitHub. |
www.microsoft.com |
80 | Situs web resmi Microsoft. | Situs web resmi Microsoft. |
Langkah berikutnya
Membuat jaringan logis untuk kluster Kubernetes di Azure Stack HCI 23H2