Sumber daya untuk arsitek dan pengembang solusi multipenyewa
Arsitektur untuk aplikasi multipenyewa
Artikel berikut memberikan contoh arsitektur multipenyewa di Azure.
Sistem | Ringkasan | Fokus teknologi |
---|---|---|
SaaS Multi-penyewaan di Azure | Arsitektur referensi untuk skenario SaaS multipenyewa di Azure, yang disebarkan di beberapa wilayah | Web |
Menggunakan Pengontrol Ingress Application Gateway dengan Azure Kubernetes Service (AKS) multipenyewa | Contoh untuk menerapkan multipenyewaan dengan AKS dan AGIC | Kubernetes |
Semua arsitektur multipenyewa | Daftarkan semua arsitektur yang mencakup multipenyewaan | Beberapa |
Pola desain cloud
Pola rancangan cloud berikut sering digunakan dalam arsitektur multipenyewa.
Pola | Ringkasan |
---|---|
Pola Stempel Penyebaran | Menyebarkan beberapa salinan independen (unit skala) dari komponen aplikasi, termasuk penyimpanan data. |
Identitas Federasi | Delegasikan autentikasi ke IdP eksternal. |
Gatekeeper | Lindungi aplikasi dan layanan, dengan menggunakan instans host khusus yang berfungsi sebagai perantara antara klien dan aplikasi atau layanan, memvalidasi dan membersihkan permintaan, serta meneruskan permintaan dan data di antara mereka. |
Perataan Beban Berbasis Antrean | Gunakan antrean yang bertindak sebagai buffer antara tugas dan layanan yang dipanggil untuk memperlancar beban berat yang terputus-putus. |
Sharding | Membagi penyimpanan data menjadi sekumpulan pecahan atau partisi horizontal. |
Pembatasan | Kontrol penggunaan sumber daya yang digunakan oleh instans aplikasi, penyewa individu, atau seluruh layanan. |
{i>Antipattern
Pertimbangkan antipola Noisy Neighbor, tempat aktivitas satu penyewa dapat berdampak negatif pada penggunaan sistem penyewa lain.
Kerangka Kerja Microsoft Azure yang Terarsitektur dengan Baik
Meskipun keseluruhan Azure Well-Architected Framework penting untuk semua solusi, beri perhatian khusus pada pilar Keandalan. Sifat hosting cloud mengarah ke aplikasi yang biasanya multipenyewa, menggunakan layanan platform bersama, bersaing untuk sumber daya dan bandwidth, berkomunikasi melalui internet, serta berjalan pada perangkat keras komoditas. Hal ini meningkatkan kemungkinan bahwa kesalahan sementara dan yang lebih permanen akan muncul.
Panduan arsitektur multipenyewa
- Merancang solusi multipenyewa di Azure (video): Video ini membahas cara merancang, merancang, dan membangun solusi multipenyewa di Azure. Jika Anda membangun produk SaaS atau layanan multipenyewa lainnya, ada banyak hal yang perlu dipertimbangkan ketika Anda merencanakan performa tinggi, isolasi penyewa, dan untuk mengelola penyebaran. Sesi ini ditujukan untuk pengembang dan arsitek yang membangun aplikasi multipenyewa atau SaaS, termasuk startup dan ISV.
- Azure Friday - Merancang solusi multipenyewa di Azure (video): Video dari Azure Friday ini membahas cara merancang, merancang, dan membangun solusi perangkat lunak sebagai layanan (SaaS) multipenyewa di Azure.
- Mempercepat dan Mengurangi Risiko Perjalanan Anda ke SaaS (video): Video ini memberikan panduan untuk bertransisi ke model pengiriman perangkat lunak sebagai layanan (SaaS) - apakah Anda memulai dengan mengangkat dan menggeser solusi yang ada dari lokal ke Azure, mempertimbangkan arsitektur multipenyewa, atau ingin memodernisasi aplikasi web SaaS yang ada.
Sumber daya untuk layanan Azure
Tata kelola dan kepatuhan
- Mengatur dan mengelola beberapa langganan Azure: Penting untuk mempertimbangkan cara Anda mengelola langganan Azure, serta cara Anda mengalokasikan sumber daya penyewa ke langganan.
- Pengalaman manajemen lintas penyewa: Sebagai penyedia layanan, Anda dapat menggunakan Azure Lighthouse untuk mengelola sumber daya, untuk beberapa pelanggan dari dalam penyewa Microsoft Entra Anda sendiri. Banyak tugas dan layanan dapat dilakukan di seluruh penyewa terkelola, dengan menggunakan manajemen sumber daya yang didelegasikan Azure.
- Azure Managed Applications: Dalam aplikasi terkelola, sumber daya disebarkan ke grup sumber daya yang dikelola oleh penerbit aplikasi. Grup sumber daya hadir dalam langganan konsumen, tetapi identitas di penyewa penerbit memiliki akses ke grup sumber daya.
Compute
- Praktik terbaik untuk isolasi kluster di Azure Kubernetes Service (AKS): AKS memberikan fleksibilitas dalam cara Anda dapat menjalankan kluster multipenyewa dan dapat mengisolasi sumber daya. Untuk memaksimalkan investasi Anda di Kubernetes, pertama-tama pahami dan terapkan fitur multipenyewaan serta isolasi AKS. Artikel praktik terbaik ini berfokus pada isolasi untuk operator kluster.
- Praktik terbaik untuk keamanan dan peningkatan kluster di Azure Kubernetes Service: Saat Anda mengelola kluster di Azure Kubernetes Service (AKS), beban kerja dan keamanan data adalah pertimbangan utama. Saat Anda menjalankan kluster multipenyewaan menggunakan isolasi logis, Anda perlu mengamankan akses sumber daya dan beban kerja.
Jaringan
Private Link
- Penjelasan dan demo Layanan Azure Private Link dari penyedia (SaaS ISV) dan perspektif konsumen: Video yang melihat fitur layanan Azure Private Link yang memungkinkan penyedia layanan multipenyewa (seperti vendor perangkat lunak independen yang membangun produk SaaS). Solusi ini memungkinkan konsumen untuk mengakses layanan penyedia menggunakan alamat IP privat dari jaringan virtual Azure konsumen sendiri.
- Protokol Proksi TCP v2 dengan Azure Private Link Service—Deep Dive: Video yang menyajikan penyelaman mendalam tentang Protokol Proksi TCP v2, yang merupakan fitur lanjutan dari layanan Azure Private Link. Ini berguna dalam skenario multipenyewa dan SaaS. Video menunjukkan kepada Anda cara mengaktifkan Protokol Proksi v2 di layanan Azure Private Link. Ini juga menunjukkan kepada Anda cara mengonfigurasi layanan NGINX untuk membaca alamat IP privat sumber klien asli, bukan IP NAT, untuk mengakses layanan melalui titik akhir privat.
- Menggunakan NGINX Plus untuk mendekode TLV
linkIdentifier
Protokol Proksi dari layanan Azure Private Link: Video yang melihat cara menggunakan NGINX Plus untuk mendapatkan TCP Proxy Protocol v2 TLV dari layanan Azure Private Link. Video menunjukkan bagaimana Anda kemudian dapat mengekstrak dan mendekode numeriklinkIdentifier
, juga disebutLINKID
, dari koneksi titik akhir privat. Solusi ini berguna untuk penyedia multipenyewa yang perlu mengidentifikasi penyewa konsumen tertentu tempat koneksi dibuat. - Pola Konektivitas Privat SaaS: Contoh solusi yang mengilustrasikan satu pendekatan untuk mengotomatiskan persetujuan koneksi titik akhir privat, dengan menggunakan Azure Managed Applications.
Web
- Perutean berbasis klaim untuk solusi SaaS: Artikel ini membahas penggunaan proksi terbalik untuk memfasilitasi perutean penyewa dan pemetaan permintaan ke penyewa, meningkatkan manajemen layanan backend dalam solusi SaaS.
Penyimpanan dan data
- Merancang dan membangun aplikasi SaaS multipenyewa dalam skala besar dengan Azure Cosmos DB (video): Pelajari cara merancang dan mengoptimalkan aplikasi SaaS multipenyewa menggunakan Azure Cosmos DB. Sesi ini mengeksplorasi pertimbangan desain utama yang terkait dengan isolasi penyewa, pengoptimalan biaya, dan distribusi global. Konten sesi ini berlaku apakah Anda memiliki volume penyewa B2C kecil yang tinggi atau volume rendah penyewa B2B yang sangat condong.
- Azure Cosmos DB dan sistem multipenyewa: Posting blog yang membahas cara membangun sistem multipenyewa yang menggunakan Azure Cosmos DB.
- Kunci partisi hierarkis Azure Cosmos DB: Dengan menggunakan kunci partisi hierarkis, juga dikenal sebagai subpartisi, Anda dapat mempartisi kontainer Anda secara asli dengan beberapa tingkat kunci partisi. Hal ini memungkinkan strategi partisi yang lebih optimal untuk skenario multipenyewa atau beban kerja yang sebaliknya akan menggunakan kunci partisi sintetis.
- Pola penyewaan database SaaS multipenyewa Azure SQL Database: Serangkaian artikel yang menggambarkan berbagai model penyewaan yang tersedia untuk aplikasi SaaS multipenyewa, menggunakan Azure SQL Database.
- Menjalankan 1 juta database di Azure SQL untuk penyedia SaaS besar: Microsoft Dynamics 365 dan Power Platform: Posting blog yang menjelaskan bagaimana tim Dynamics 365 mengelola database dalam skala besar.
- Merancang database multipenyewa dengan menggunakan Azure Database for PostgreSQL Hyperscale
- Partisi data horizontal, vertikal, dan fungsional: Dalam banyak solusi skala besar dan multipenyewa, data dibagi menjadi partisi yang dapat dikelola dan diakses secara terpisah. Partisi dapat meningkatkan skalabilitas, mengurangi ketidakcocokan, dan mengoptimalkan performa. Partisi juga dapat memberikan mekanisme untuk pembagian data, menurut pola penggunaan dan penyewa.
- Strategi partisi data oleh layanan Azure: Artikel ini menjelaskan beberapa strategi untuk membuat partisi data di berbagai penyimpanan data Azure.
- Building multitenant applications with Azure Database for PostgreSQL Hyperscale Citus (video)
- Multitenant applications with Azure Cosmos DB (video)
- Building a multitenant SaaS with Azure Cosmos DB and Azure (video): Studi kasus dunia nyata tentang bagaimana Whally, startup SaaS multipenyewa, membangun platform modern dari awal di Azure Cosmos DB dan Azure. Whally menunjukkan keputusan rancangan dan implementasi yang mereka buat terkait dengan partisi, pemodelan data, multipenyewaan aman, performa, streaming real-time dari umpan perubahan ke SignalR, dan banyak lagi, semuanya menggunakan ASP.NET Core di Azure App Services.
- Multitenant design patterns for SaaS applications on Azure SQL Database (video)
Olahpesan
- Domain Azure Event Grid: Domain Azure Event Grid memungkinkan Anda mengelola arsitektur peristiwa multipenyewa, dalam skala besar.
- sampel Bus Layanan: Komunikasi lintas penyewa menggunakan Azure Bus Layanan: Contoh implementasi Azure Bus Layanan yang menunjukkan cara berkomunikasi antara penyedia pusat dan satu atau beberapa pelanggan (penyewa).
Identitas
- Penyewaan di MICROSOFT Entra ID: MICROSOFT Entra ID memiliki konsep multitenansi sendiri, yang mengacu pada pengoperasian di beberapa direktori Microsoft Entra. Saat pengembang bekerja dengan aplikasi Microsoft Entra, mereka dapat memilih untuk mengonfigurasi aplikasi mereka menjadi penyewa tunggal atau multipenyewa untuk mendukung skenario yang berbeda.
- Solusi identitas bermerek khusus dengan Azure AD B2C: Azure Active Directory B2C adalah solusi manajemen akses identitas pelanggan yang mampu mendukung jutaan pengguna dan miliaran autentikasi per hari.
- Bangun daemon multipenyewa dengan titik akhir platform identitas Microsoft: Aplikasi sampel ini menunjukkan cara menggunakan titik akhir platform identitas Microsoft untuk mengakses data pelanggan bisnis Microsoft dalam proses yang berjalan lama dan tidak interaktif. Ini menggunakan pemberian kredensial klien OAuth2 untuk memperoleh token akses, yang selanjutnya digunakan untuk memanggil Microsoft Graph dan mengakses data organisasi.
- Mengautentikasi dan mengotorisasi aplikasi multipenyewa menggunakan MICROSOFT Entra ID: Pelajari bagaimana MICROSOFT Entra ID memungkinkan Anda meningkatkan fungsionalitas aplikasi cloud-native dalam skenario multipenyewa.
- Panduan Arsitektur Azure: Membangun Arsitektur Azure multipenyewa untuk skenario B2C: menelusuri arsitektur di balik aplikasi seluler multipenyewa dengan Azure Active Directory B2C dan API Management.
- Tentukan dan terapkan izin, peran, dan cakupan dengan ID Microsoft Entra dalam solusi SaaS: Artikel ini mencakup tiga konsep utama yang terkait dengan autentikasi &otorisasi Microsoft Entra, yang dapat digunakan oleh penyedia SaaS. Ini mencakup fungsionalitas Peran Aplikasi, Izin yang Didelegasikan & Aplikasi, dan fungsionalitas Cakupan.
Analitik
- Solusi multipenyewaan dengan analitik Power BI embedded: Saat merancang aplikasi multipenyewa yang berisi Power BI Embedded, Anda harus memilih model sewa yang paling sesuai dengan kebutuhan Anda dengan hati-hati.
IoT
- Multitenancy di IoT Hub Device Provisioning Service: Solusi IoT multipenyewa umumnya menetapkan perangkat penyewa dengan menggunakan sekelompok hub IoT yang tersebar di seluruh wilayah.
AI/ML
- Pola rancangan untuk aplikasi SaaS multipenyewa dan Azure Cognitive Search: Dokumen ini membahas strategi isolasi penyewa untuk aplikasi multipenyewa yang dibangun dengan Azure Cognitive Search.
- Solusi untuk Alur ML dengan Cara Multipenyewa: Posting blog ini menjelaskan bagaimana alur Azure Pembelajaran Mesin dapat dirancang untuk mendukung beberapa penyewa dengan menggunakan ruang kerja Azure Pembelajaran Mesin.
Konten komunitas
Kubernetes
- Tiga Model Penyewaan untuk Kubernetes: Kluster Kubernetes biasanya digunakan oleh beberapa tim dalam suatu organisasi. Artikel ini menjelaskan tiga model penyewaan untuk Kubernetes.
- Memahami Kubernetes Multi Tenancy: Kubernetes bukanlah sistem multipenyewa di luar kotak, dan memerlukan konfigurasi kustom. Artikel ini menjelaskan jenis multitenansi Kubernetes.
- Multi-Penyewaan Kubernetes – Panduan Praktik Terbaik: Multitenansi Kubernetes adalah topik yang semakin diminati organisasi saat penggunaan Kubernetes mereka menyebar. Namun, karena Kubernetes tidak secara eksplisit merupakan sistem multipenyewa, mungkin sulit untuk merancang implementasi Kubernetes multipenyewa. Artikel ini menjelaskan tantangan ini dan cara mengatasinya, dan beberapa alat yang berguna untuk multitenansi Kubernetes.
- Kapsul: Multi-penyewaan Kubernetes dibuat sederhana: Kapsul membantu mengimplementasikan lingkungan berbasis multitenansi dan kebijakan di kluster Kubernetes Anda. Ini bukan penawaran platform as a service (PaaS), tetapi sebaliknya adalah ekosistem berbasis layanan mikro dengan pendekatan desain minimalis, hanya menggunakan Kubernetes upstream.
- Crossplane: Kerangka kerja sarana kontrol asli cloud: Crossplane memungkinkan Anda membangun sarana kontrol untuk solusi Anda sendiri, dengan menggunakan pendekatan berbasis Kubernetes.
Kontributor
Artikel ini dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.
Penulis utama:
- John Downs | Insinyur Perangkat Lunak Utama
- Paolo Salvatori | Teknisi Pelanggan Utama, FastTrack untuk Azure
- Arsen Vladimirskiy | Teknisi Pelanggan Utama, FastTrack untuk Azure
- LaBrina Mencintai | Manajer Teknik Pelanggan Utama, FastTrack untuk Azure
Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk