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 menyediakan banyak cara untuk menghosting kode aplikasi Anda. Istilah komputasi mengacu pada model hosting untuk sumber daya yang dijalankan aplikasi Anda. Artikel ini membantu Anda memilih layanan komputasi untuk aplikasi Anda.
Architecture
Gunakan diagram alur berikut untuk memilih layanan komputasi kandidat.
Unduh file Visio dari arsitektur ini.
Diagram sebelumnya mengacu pada dua strategi migrasi:
Angkat dan geser: Strategi untuk memigrasikan beban kerja ke cloud tanpa mendesain ulang aplikasi atau membuat perubahan kode. Ini juga dikenal sebagai rehosting. Untuk informasi selengkapnya, lihat Pusat migrasi dan modernisasi cloud Azure.
Cloud dioptimalkan: Strategi untuk bermigrasi ke cloud dengan merefaktor aplikasi untuk memanfaatkan fitur dan kemampuan cloud-native.
Output dari diagram alur ini adalah titik awal Anda. Selanjutnya, evaluasi layanan untuk melihat apakah layanan tersebut memenuhi kebutuhan Anda.
Artikel ini menyertakan beberapa tabel yang dapat membantu Anda memilih layanan. Kandidat awal dari diagram alur mungkin tidak cocok untuk aplikasi atau beban kerja Anda. Dalam hal ini, perluas analisis Anda untuk menyertakan layanan komputasi lainnya.
Jika aplikasi Anda terdiri dari beberapa beban kerja, evaluasi setiap beban kerja secara terpisah. Solusi lengkap dapat menggabungkan dua atau beberapa layanan komputasi.
Memahami fitur dasar
Jika Anda tidak terbiasa dengan layanan Azure yang Anda pilih di bagian sebelumnya, lihat dokumentasi gambaran umum berikut ini:
Azure App Service adalah layanan terkelola untuk menghosting aplikasi web, back end aplikasi seluler, API RESTful, atau proses bisnis otomatis.
Azure Batch adalah layanan terkelola untuk menjalankan aplikasi komputasi paralel dan performa tinggi (HPC) skala besar.
Azure Container Apps adalah layanan terkelola yang dibangun di Kubernetes, yang menyederhanakan penyebaran aplikasi dalam kontainer di lingkungan tanpa server.
Azure Container Instances adalah layanan untuk menjalankan satu kontainer atau grup kontainer di Azure. Container Instances tidak menyediakan orkestrasi kontainer penuh, tetapi Anda dapat menerapkan kontainer tanpa harus menyediakan komputer virtual (VM) atau mengadopsi layanan tingkat yang lebih tinggi.
Azure Functions adalah layanan yang menyediakan fungsi terkelola yang berjalan berdasarkan berbagai jenis pemicu untuk aplikasi berbasis peristiwa.
Azure Kubernetes Service (AKS) adalah layanan Kubernetes terkelola untuk menjalankan aplikasi kontainer.
Azure Red Hat OpenShift adalah kluster OpenShift yang dikelola sepenuhnya untuk menjalankan kontainer dalam produksi dengan Kubernetes.
Azure Service Fabric adalah platform sistem terdistribusi yang dapat berjalan di banyak lingkungan, termasuk Azure atau lokal.
Azure VMware Solution adalah layanan terkelola untuk menjalankan beban kerja VMware secara asli di Azure.
Azure Virtual Machines adalah layanan tempat Anda menyebarkan dan mengelola VM di dalam jaringan virtual Azure.
Memahami model hosting
Untuk model hosting, layanan cloud termasuk dalam tiga kategori:
Infrastructure as a service (IaaS) memungkinkan Anda menyediakan VM bersama dengan komponen jaringan dan penyimpanan terkait. Kemudian Anda dapat menyebarkan perangkat lunak dan aplikasi apa pun pada VM tersebut. Model ini adalah yang paling dekat dengan lingkungan lokal tradisional. Microsoft mengelola infrastruktur, dan Anda mengelola VM.
Platform as a service (PaaS) menyediakan lingkungan hosting terkelola tempat Anda dapat menyebarkan aplikasi tanpa perlu mengelola VM atau sumber daya jaringan. App Service dan Aplikasi Kontainer adalah layanan PaaS.
Functions as a service (FaaS) memungkinkan Anda menyebarkan kode ke layanan, yang secara otomatis menjalankannya. Azure Functions adalah layanan FaaS.
Nota
Azure Functions adalah penawaran komputasi tanpa server Azure . Untuk melihat bagaimana layanan ini dibandingkan dengan penawaran tanpa server Azure lainnya, seperti Azure Logic Apps untuk alur kerja tanpa server, lihat Memilih layanan integrasi dan otomatisasi yang tepat di Azure.
Ada spektrum dari IaaS ke PaaS yang dikelola sepenuhnya. Misalnya, Azure VM dapat menskalakan secara otomatis dengan menggunakan set skala komputer virtual. Kemampuan ini tidak benar-benar PaaS, tetapi menyerupai fitur manajemen di PaaS.
Ada trade-off antara kontrol dan kemudahan manajemen. IaaS memberikan kontrol, fleksibilitas, dan portabilitas terbanyak. Namun, Anda harus menyediakan, mengonfigurasi, dan mengelola VM dan komponen jaringan yang Anda buat. Layanan FaaS secara otomatis mengelola hampir semua aspek dalam menjalankan aplikasi. PaaS menyediakan manajemen parsial sambil memerlukan beberapa konfigurasi pengguna.
| Pelayanan | Komposisi aplikasi | Kepadatan | Jumlah minimum simpul | Manajemen status | Hosting web |
|---|---|---|---|---|---|
| Virtual Machines | Agnostik | Agnostik | 12 | Stateless atau stateful | Agnostik |
| App Service | Aplikasi, kontainer | Beberapa aplikasi untuk setiap instans dengan menggunakan paket App Service | 1 | Tanpa Negara | Built-in |
| Azure Functions | Fungsi, kontainer | Tanpa server 1 | Tanpa server 1 | Stateless atau stateful 6 | Tidak berlaku |
| AKS | Containers | Beberapa kontainer untuk setiap simpul | 3 3 | Stateless atau stateful | Agnostik |
| Container Apps | Containers | Serverless | Serverless | Stateless atau stateful | Agnostik |
| Container Instances | Containers | Tidak ada instans khusus | Tidak ada simpul khusus | Tanpa Negara | Agnostik |
| Azure Red Hat OpenShift | Containers | Beberapa kontainer untuk setiap simpul | 6 5 | Stateless atau stateful | Agnostik |
| Service Fabric | Layanan, executable tamu, kontainer | Beberapa layanan untuk setiap VM | 5 3 | Stateless atau stateful | Agnostik |
| Batch | Pekerjaan terjadwal | Beberapa aplikasi untuk setiap VM | 14 | Tanpa Negara | Tidak. |
| Azure VMware Solution | Agnostik | Agnostik | 3 7 | Stateless atau stateful | Agnostik |
Catatan :
1Untuk Azure Functions, paket Konsumsi tanpa server. Untuk paket App Service, fungsi berjalan pada VM yang dialokasikan untuk paket tersebut. Pilih paket layanan yang benar untuk Azure Functions.
2Perjanjian tingkat layanan (SLA) yang lebih tinggi yang memiliki dua instans atau lebih.
3Direkomendasikan untuk lingkungan produksi.
4Dapat menurunkan skala menjadi nol setelah pekerjaan selesai.
5Tiga simpul utama dan tiga simpul pekerja.
6Ketika Anda menggunakan fungsi tahan lama.
7Lihat Host.
Jaringan
| Pelayanan | Integrasi jaringan virtual | Konektivitas hibrid |
|---|---|---|
| Virtual Machines | Didukung | Didukung |
| App Service | Didukung 1 | Didukung 2 |
| Azure Functions | Didukung 1 | Didukung 3 |
| AKS | Supported | Didukung |
| Container Apps | Didukung | Didukung |
| Container Instances | Supported | Supported |
| Azure Red Hat OpenShift | Supported | Didukung |
| Service Fabric | Didukung | Didukung |
| Batch | Didukung | Didukung |
| Azure VMware Solution | Supported | Supported |
Catatan :
1Memerlukan Lingkungan App Service atau tingkat harga komputasi khusus.
2Gunakan Koneksi Hibrid App Service.
3Memerlukan paket App Service atau paket Azure Functions Premium.
DevOps
| Pelayanan | Penelusuran kesalahan lokal | Model pemrograman | Pembaruan aplikasi |
|---|---|---|---|
| Virtual Machines | Agnostik | Agnostik | Tidak ada dukungan bawaan |
| App Service | IIS Express, lainnya 1 | Aplikasi Web dan API, WebJobs untuk tugas latar belakang | Slot penyebaran |
| Azure Functions | Visual Studio atau Azure Functions CLI | Tanpa server, berbasis peristiwa | Slot penyebaran |
| AKS | Minikube, Docker, lainnya | Agnostik | Pembaruan bergulir |
| Container Apps | Runtime kontainer lokal | Agnostik | Manajemen revisi |
| Container Instances | Runtime kontainer lokal | Agnostik | Tidak berlaku |
| Azure Red Hat OpenShift | Minikube, Docker, lainnya | Agnostik | Pembaruan bergulir |
| Service Fabric | Kluster node lokal | Dapat dieksekusi tamu, Model layanan, Model aktor, kontainer | Peningkatan bergulir untuk setiap layanan |
| Batch | Tidak didukung | Aplikasi baris perintah | Tidak berlaku |
| Azure VMware Solution | Agnostik | Agnostik | Tidak ada dukungan bawaan |
Nota:
1Opsi termasuk IIS Express untuk ASP.NET atau node.js (iisnode), server web PHP, Azure Toolkit untuk IntelliJ, dan Azure Toolkit untuk Eclipse. App Service juga mendukung penelusuran kesalahan jarak jauh aplikasi web yang disebarkan.
Skalabilitas
| Pelayanan | Autoscaling | Penyeimbang beban | Batas skala3 |
|---|---|---|---|
| Virtual Machines | Kumpulan skala komputer virtual | Azure Load Balancer | Gambar platform: 1.000 simpul untuk setiap set skala. Gambar kustom: 600 simpul untuk setiap set skala. |
| App Service | Layanan bawaan | Terintegrasi | 30 instans, 100 dengan Lingkungan App Service |
| Azure Functions | Layanan bawaan | Terintegrasi | 200 instans untuk setiap aplikasi fungsi |
| AKS | Autoscaling Pod1, penskalakan otomatis kluster2 | Load Balancer atau Azure Application Gateway | 5.000 simpul saat Anda menggunakan SLA waktu aktif |
| Container Apps | Aturan penskalakan4 | Terintegrasi | 15 lingkungan untuk setiap wilayah (batas default), aplikasi kontainer tak terbatas untuk setiap lingkungan dan replika untuk setiap aplikasi kontainer (tergantung pada inti yang tersedia) |
| Container Instances | Tidak didukung | Tidak ada dukungan bawaan | 100 grup kontainer untuk setiap langganan (batas default) |
| Azure Red Hat OpenShift | Autoscaling Pod, penskalakan otomatis kluster | Load Balancer atau Application Gateway | 250 simpul untuk setiap kluster (batas default) |
| Service Fabric | Kumpulan skala komputer virtual | Load Balancer | 100 simpul untuk setiap set skala komputer virtual |
| Batch | Tidak berlaku | Load Balancer | Batas inti 900 khusus dan 100 prioritas rendah (batas default) |
| Azure VMware Solution | Layanan bawaan5 | Terintegrasi6 | 3 hingga 16 host VMware ESXi per VMware vCenter Server |
Catatan :
1Lihat Pod skala otomatis.
2Lihat Menskalakan kluster secara otomatis untuk memenuhi permintaan aplikasi di AKS.
3Lihat Batas, kuota, dan batasan langganan dan layanan Azure
4Lihat Mengatur aturan penskalakan di Aplikasi Kontainer
5Lihat Menskalakan Azure VMware Solution
6Lihat VMware NSX
Availability
| Pelayanan | Opsi failover multiregion |
|---|---|
| Virtual Machines | Azure Traffic Manager, Azure Front Door, dan Load Balancer lintas wilayah |
| App Service | Traffic Manager dan Azure Front Door |
| Azure Functions | Traffic Manager dan Azure Front Door |
| AKS | Traffic Manager, Azure Front Door, dan Kluster Multiregion |
| Container Apps | Traffic Manager dan Azure Front Door |
| Container Instances | Traffic Manager dan Azure Front Door |
| Azure Red Hat OpenShift | Traffic Manager dan Azure Front Door |
| Service Fabric | Traffic Manager, Azure Front Door, dan Load Balancer lintas wilayah |
| Batch | Tidak berlaku |
| Azure VMware Solution | Tidak berlaku |
Untuk pembelajaran terpandu tentang jaminan layanan, lihat Arsitektur Azure dan jaminan layanan.
Keamanan
Tinjau dan pahami kontrol dan visibilitas keamanan yang tersedia untuk setiap layanan berikut:
- AKS
- Layanan Aplikasi
- Fungsi Azure
- Komputer Virtual untuk Linux
- Azure VMware Solution
- Komputer Virtual untuk Windows
- Batch
- Aplikasi Kontainer
- Kontainer Instance
- Service Fabric
Kriteria lain
| Pelayanan | TLS | Biaya | Gaya arsitektur yang sesuai |
|---|---|---|---|
| Virtual Machines | Dikonfigurasi dalam VM | Windows, Linux | N-tingkat, komputasi besar (HPC) |
| App Service | Didukung | Harga App Service | Web-queue-worker |
| Azure Functions | Didukung | Harga Azure Functions | Layanan mikro, arsitektur berbasis peristiwa |
| AKS | Pengontrol Ingress | Harga AKS | Layanan mikro, arsitektur berbasis peristiwa |
| Container Apps | Pengontrol Ingress | Harga Container Apps | Layanan mikro, arsitektur berbasis peristiwa |
| Container Instances | Menggunakan kontainer sespan | Harga Container Instances | Layanan mikro, otomatisasi tugas, pekerjaan batch |
| Azure Red Hat OpenShift | Didukung | Harga Azure Red Hat OpenShift | Layanan mikro, arsitektur berbasis peristiwa |
| Service Fabric | Didukung | Harga Service Fabric | Layanan mikro, arsitektur berbasis peristiwa |
| Batch | Didukung | Harga batch | Komputasi besar (HPC) |
| Azure VMware Solution | Dikonfigurasi dalam VM | Harga Azure VMware Solution | Beban kerja VM berdasarkan format VMware |
Pertimbangkan batas dan biaya
Bersama dengan tabel perbandingan sebelumnya, lakukan evaluasi yang lebih rinci tentang aspek-aspek berikut dari layanan kandidat:
Kontributor
Microsoft mempertahankan artikel ini. Kontributor berikut menulis artikel ini.
- Ayobami Ayodeji | Manajer Program Senior
- Jelle Druyts | Teknisi Layanan Utama
- Martin Gjoshevski | Insinyur Layanan Senior
- Phil Huang | Arsitek Solusi Cloud Senior
- Julie Ng | Insinyur Layanan Senior
- Paolo Salvatori | Teknisi Layanan Utama
Untuk melihat profil LinkedIn nonpublik, masuk ke LinkedIn.