Memilih Kubernetes di opsi komputasi tepi

Dokumen ini membahas trade-off untuk berbagai opsi yang tersedia untuk memperpanjang komputasi di tepi. Pertimbangan berikut untuk setiap opsi Kubernetes tercakup:

  • Biaya operasional. Tenaga kerja yang diharapkan diperlukan untuk memelihara dan mengoperasikan kluster Kubernetes.

  • Kemudahan konfigurasi. Tingkat kesulitan untuk mengonfigurasi dan menyebarkan kluster Kubernetes.

  • Fleksibilitas. Ukuran seberapa mudah disesuaikan opsi Kubernetes adalah mengintegrasikan konfigurasi yang disesuaikan dengan infrastruktur yang ada di tepi.

  • Simpul campuran. Kemampuan untuk menjalankan kluster Kubernetes dengan simpul Linux dan Windows.

Asumsi

  • Anda adalah operator kluster yang ingin memahami berbagai opsi untuk menjalankan Kubernetes di tepi dan mengelola kluster di Azure.

  • Anda memiliki pemahaman yang baik tentang infrastruktur yang ada dan persyaratan infrastruktur lainnya, termasuk persyaratan penyimpanan dan jaringan.

Setelah membaca dokumen ini, Anda akan berada dalam posisi yang lebih baik untuk mengidentifikasi opsi mana yang paling sesuai dengan skenario Anda dan lingkungan yang diperlukan.

Sekilas pilihan Kubernetes

Biaya operasional Kemudahan konfigurasi Fleksibilitas Simpul campuran Ringkasan
Bare-metal Kubernetes Tinggi** Sulit** Tinggi** Ya Konfigurasi ground-up pada infrastruktur yang tersedia di lokasi dengan opsi untuk menggunakan Azure Arc untuk menambahkan kemampuan Azure.
K8s di Azure Stack Edge Pro Kurang Penting Mudah Kurang Penting Hanya Linux Kubernetes disebarkan pada alat Azure Stack Edge yang disebarkan di lokasi.
Hibrid AKS Kurang Penting Mudah Medium Ya AKS disebarkan di Azure Stack HCI atau Windows Server 2019.

*Platform tepi terkelola lainnya (OpenShift, Tanzu, dan sebagainya) tidak dalam lingkup untuk dokumen ini.

**Nilai-nilai ini didasarkan pada penggunaan kubeadm, demi kesederhanaan. Pilihan yang berbeda untuk menjalankan Kubernetes bare-metal di tepi akan mengubah peringkat dalam kategori ini.

Bare-metal Kubernetes

Konfigurasi ground-up Kubernetes menggunakan alat seperti kubeadm pada infrastruktur yang mendasarinya.

Kendala terbesar untuk Kubernetes bare-metal adalah seputar kebutuhan dan persyaratan spesifik organisasi. Kesempatan untuk menggunakan distribusi, antarmuka jaringan, dan plugin apa pun berarti kompleksitas dan biaya operasional yang lebih tinggi. Tetapi ini menawarkan opsi paling fleksibel untuk menyesuaikan kluster Anda.

Skenario

Seringkali, lokasi tepi memiliki persyaratan khusus untuk menjalankan kluster Kubernetes yang tidak dipenuhi dengan solusi Azure lainnya yang dijelaskan dalam dokumen ini. Artinya opsi ini biasanya yang terbaik bagi mereka yang tidak dapat menggunakan layanan terkelola karena infrastruktur yang ada yang tidak didukung, atau mereka yang berusaha memiliki kontrol maksimum atas kelompok mereka.

  • Opsi ini bisa sangat sulit bagi mereka yang baru mengenal Kubernetes. Ini tidak biasa bagi organisasi yang ingin menjalankan kluster tepi. Pilihan seperti MicroK8s atau k3s bertujuan untuk meratakan kurva belajar itu.

  • Sangat penting untuk memahami infrastruktur yang mendasari dan integrasi apa pun yang diharapkan akan terjadi di depan. Ini akan membantu mempersempit opsi yang layak dan mengidentifikasi kesenjangan dengan perkakas dan/atau plugin sumber terbuka.

  • Mengaktifkan kluster dengan Azure Arc menghadirkan cara sederhana untuk mengelola kluster Anda dari Azure bersama sumber daya lainnya. Ini juga membawa kemampuan Azure lainnya ke kluster Anda, termasuk Azure Policy, Azure Monitor, Microsoft Defender for Cloud, dan layanan lainnya.

  • Karena konfigurasi kluster tidak sepele, sangat penting untuk memperhatikan CI/CD. Melacak dan bertindak atas perubahan hulu berbagai plugin, dan memastikan perubahan tersebut tidak mempengaruhi kesehatan kluster Anda, menjadi tanggung jawab langsung. Sangat penting bagi Anda untuk memiliki solusi CI/CD yang kuat, pengujian yang kuat, dan pemantauan di tempat.

Opsi alat

Bootstrap kluster:

  • kubeadm: Alat Kubernetes untuk membuat kluster ground-up Kubernetes. Baik untuk sumber daya komputasi standar (Linux/Windows).

  • MicroK8s: Administrasi dan konfigurasi yang disederhanakan ("LowOps"), Kubernetes konforman oleh Canonical.

  • k3s: Distribusi Kubernetes bersertifikat yang dibangun untuk Internet of Things (IoT) dan komputasi tepi.

Penyimpanan:

  • Jelajahi driver CSI yang tersedia: Banyak opsi tersedia agar sesuai dengan kebutuhan Anda dari cloud ke berbagi file lokal.

Jaringan:

  • Daftar lengkap add-on yang tersedia dapat ditemukan di sini: Add-on jaringan. Beberapa opsi populer termasuk Flannel, jaringan overlay sederhana, dan Calico, yang menyediakan tumpukan jaringan penuh.

Pertimbangan

Biaya operasional:

  • Tanpa dukungan yang datang dengan layanan terkelola, terserah organisasi untuk memelihara dan mengoperasikan kluster secara keseluruhan (penyimpanan, jaringan, peningkatan, observability, manajemen aplikasi). Biaya operasional dianggap tinggi.

Kemudahan konfigurasi:

  • Mengevaluasi banyak opsi sumber terbuka di setiap tahap konfigurasi apakah opsi jaringan, penyimpanan, atau pemantauannya tidak dapat dihindari dan dapat menjadi kompleks. Memerlukan pertimbangan lebih untuk mengonfigurasi CI/CD untuk konfigurasi klaster. Karena kekhawatiran ini, kemudahan konfigurasi dianggap sulit.

Fleksibilitas:

  • Dengan kemampuan untuk menggunakan alat atau plugin sumber terbuka tanpa batasan penyedia, Kubernetes bare-metal sangat fleksibel.

Kubernetes di Azure Stack Edge

Kluster Kubernetes (master VM dan VM pekerja) dikonfigurasi dan disebarkan untuk Anda di perangkat Pro Azure Stack Edge Anda.

Perangkat Azure Stack Edge Pro Memberikan kemampuan Azure seperti menghitung, penyimpanan, jaringan, dan pembelajaran mesin (ML) menggunakan perangkat keras ke lokasi tepi mana pun. Kluster Kubernetes dapat dibuat setelah peran komputasi diaktifkan pada salah satu perangkat Pro-GPU, Pro-R, dan Mini-R. Mengelola upgrade kluster Kubernetes dapat dilakukan dengan menggunakan pembaruan standar yang tersedia untuk perangkat.

Skenario

Ideal bagi mereka yang memiliki beban kerja IoT (Linux) yang ada atau meningkatkan komputasi mereka untuk ML di tepi. Ini adalah pilihan yang baik ketika tidak perlu memiliki kontrol yang lebih terperinci atas kelompok.

  • Izin admin tidak diberikan secara default. Meskipun Anda dapat bekerja dengan kelompok produk untuk membuat pengecualian tertentu, ini membuat sulit untuk memiliki kontrol yang lebih baik dari kluster Anda.

  • Ada biaya tambahan jika belum ada perangkat Azure Stack Edge. Jelajahi perangkat Azure Stack Edge dan lihat apakah ada yang sesuai dengan persyaratan komputasi Anda.

  • Calico, MetalLB, dan CoreDNS diinstal untuk jaringan Kubernetes di perangkat.

  • Hanya beban kerja Linux yang didukung saat ini.

  • Selain Kubernetes, Azure Stack Edge juga dilengkapi dengan runtime IoT, yang berarti beban kerja juga dapat diterapkan ke kluster Azure Stack Edge Anda melalui IoT Edge.

  • Dukungan untuk dua kluster simpul saat ini tidak tersedia. Ini secara efektif berarti bahwa opsi ini bukan solusi yang sangat tersedia (HA).

Pertimbangan

Biaya operasional:

  • Dengan dukungan yang datang dengan perangkat, biaya operasional minimal dan ruang lingkup untuk manajemen beban kerja.

Kemudahan konfigurasi:

  • Penyebaran kluster Kubernetes yang telah dikonfigurasi sebelumnya dan terdokumentasi dengan baik menyederhanakan konfigurasi yang diperlukan dibandingkan dengan Kubernetes bare-metal.

Fleksibilitas:

  • Konfigurasi sudah diatur, dan izin Admin tidak diberikan secara default. Keterlibatan grup produk mungkin diperlukan di luar konfigurasi dasar, dan infrastruktur yang mendasarinya harus menjadi perangkat Pro Azure Stack Edge, menjadikannya opsi yang kurang fleksibel.

Hibrid AKS

Hibrid AKS adalah sekumpulan pengaturan dan konfigurasi yang telah ditentukan sebelumnya yang digunakan untuk menyebarkan satu atau beberapa kluster Kubernetes (dengan modul Windows Admin Center atau PowerShell) pada kluster multi-simpul yang menjalankan Windows Server atau Azure Stack HCI 20H2 atau yang lebih baru.

Skenario

Ideal bagi mereka yang menginginkan cara yang disederhanakan dan disederhanakan untuk mendapatkan kluster yang didukung Microsoft pada perangkat yang kompatibel (Azure Stack HCI atau Windows Server). Kompleksitas operasi dan konfigurasi dikurangi dengan mengorbankan fleksibilitas jika dibandingkan dengan opsi Kubernetes bare-metal.

Pertimbangan

Biaya operasional:

  • Kluster yang didukung Microsoft meminimalkan biaya operasional.

Kemudahan konfigurasi:

  • Penyebaran kluster Kubernetes yang telah dikonfigurasi sebelumnya dan terdokumentasi dengan baik menyederhanakan konfigurasi yang diperlukan dibandingkan dengan Kubernetes bare-metal.

Fleksibilitas:

  • Konfigurasi kluster itu sendiri diatur, tetapi izin Admin diberikan. Infrastruktur yang mendasar harus Azure Stack HCI atau Windows Server. 2019. Opsi ini lebih fleksibel daripada Kubernetes di Azure Stack Edge dan kurang fleksibel daripada Kubernetes bare-metal.

Kontributor

Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.

Langkah berikutnya

Untuk informasi lebih lanjut, baca artikel berikut: