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.
Ketersediaan tinggi dan toleransi kesalahan adalah komponen utama dari solusi yang dirancang dengan baik. Konfigurasi yang kuat mencakup rencana darurat untuk kegagalan tak terduga, untuk mengurangi waktu henti dan menjaga sistem tetap berjalan secara otomatis.
Saat menyebarkan aplikasi ke cloud, Anda memilih wilayah di cloud tersebut untuk basis infrastruktur aplikasi. Jika Anda hanya menyebarkan aplikasi ke satu wilayah, dan wilayah tersebut menjadi tidak tersedia, aplikasi juga tidak tersedia. Kurangnya ketersediaan mungkin tidak dapat diterima berdasarkan ketentuan perjanjian tingkat layanan (SLA) aplikasi. Untuk memastikan ketersediaan, sebarkan aplikasi dan layanannya di beberapa wilayah di cloud.
Tutorial ini menjelaskan cara menyebarkan aplikasi web multi-region yang berketersediaan tinggi. Prosedur ini menerapkan skenario sederhana yang terdiri dari aplikasi web dan Azure Front Door. Anda dapat memperluas konsep untuk mendukung pola infrastruktur lainnya. Misalnya, jika aplikasi Anda tersambung ke penawaran database Azure atau akun penyimpanan, lihat replikasi geografis Aktif untuk database SQL dan Azure Storage redundansi. Untuk arsitektur referensi untuk skenario yang lebih rinci, lihat pola aplikasi web Reliable untuk .NET.
Di tutorial ini, Anda akan:
- Membuat aplikasi App Service yang identik di wilayah terpisah
- Membuat Azure Front Door dengan pembatasan akses untuk memblokir akses publik ke App Service
Prasyarat
Jika Anda tidak memiliki akun Azure, buat akun free sebelum Memulai.
Untuk menyelesaikan tutorial ini:
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai dengan Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, install Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi selengkapnya, lihat Cara menjalankan Azure CLI dalam kontainer Docker.
Jika Anda menggunakan penginstalan lokal, masuk ke Azure CLI dengan menggunakan perintah az. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Authenticate untuk Azure menggunakan Azure CLI.
Saat diminta, instal ekstensi Azure CLI pada penggunaan pertama. Untuk informasi selengkapnya tentang ekstensi, lihat Gunakan dan kelola ekstensi dengan Azure CLI.
Jalankan versi az untuk menemukan versi dan pustaka dependen yang diinstal. Untuk meningkatkan ke versi terbaru, jalankan az upgrade.
Tinjau arsitektur skenario
Diagram arsitektur berikut menunjukkan infrastruktur yang Anda buat dalam tutorial ini. Ini terdiri dari dua aplikasi App Service yang identik di wilayah terpisah. Aplikasi web pertama berada di wilayah aktif. Ini adalah aplikasi utama yang bertanggung jawab untuk memproses lalu lintas masuk. Aplikasi kedua berada di wilayah siaga dan menunggu ketersediaan aplikasi utama. Azure Front Door mencoba merutekan lalu lintas ke aplikasi web utama. Ketika wilayah utama tidak tersedia, lalu lintas akan dialihkan ke web siaga. Dalam diagram, garis putus-putus mewakili perutean lalu lintas berdasarkan status wilayah. Pembatasan akses dikonfigurasi sehingga blokir akses langsung ke aplikasi dari internet.
Azure menyediakan berbagai opsi untuk penyeimbangan beban dan perutean lalu lintas. Azure Front Door dipilih untuk tutorial ini karena melibatkan aplikasi web yang terhubung ke internet yang dihosting di Azure App Service disebarkan di beberapa wilayah. Jika konfigurasi Anda berbeda dari contoh dalam tutorial ini, lihat Memilih solusi penyeimbangan beban untuk skenario Anda.
Skenario dalam tutorial ini menyediakan perilaku berikut:
- Aplikasi App Service yang identik disebarkan di dua wilayah terpisah.
- Lalu lintas publik yang dikirim langsung ke aplikasi web diblokir.
- Azure Front Door mengalihkan lalu lintas ke aplikasi aktif di wilayah primer.
- Aplikasi siaga di wilayah sekunder tersedia untuk melayani lalu lintas, sesuai kebutuhan.
Buat grup sumber daya
Anda memerlukan dua instans aplikasi web yang berjalan di wilayah Azure yang berbeda untuk tutorial ini.
Tinjau pasangan wilayah yang tersedia dan pilih dua wilayah berpasangan untuk aplikasi web Anda.
Dalam tutorial ini, dua wilayah disebut sebagai
<primary-region>(eastus) dan<standby-region>(westus).Buat grup sumber daya untuk semua sumber daya yang Anda konfigurasi dalam tutorial ini. Tutorial ini membuat grup sumber daya di
<primary-region>lokasi.az group create --name <resource-group> --location <primary-region>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --name<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--location<primary-region>Lokasi wilayah untuk grup sumber daya. Tutorial ini menggunakan lokasi wilayah yang sama untuk grup sumber daya dan aplikasi web utama. eastusDalam implementasi aktual, gunakan grup sumber daya terpisah untuk setiap wilayah/sumber daya. Pemisahan memungkinkan isolasi sumber daya dalam situasi pemulihan bencana.
Untuk informasi selengkapnya, lihat referensi perintah az group create .
Buat dua paket App Service
Buat dua paket App Service, satu untuk setiap aplikasi web. Buat setiap rencana di lokasi wilayah tempat Anda berharap untuk membuat aplikasi yang sesuai.
Untuk perintah ini, Anda menggunakan pasangan wilayah yang Anda pilih sebelumnya. Gunakan wilayah aktif untuk aplikasi web utama dan wilayah pasif untuk aplikasi web siaga.
Jalankan perintah berikut untuk membuat paket App Service untuk aplikasi web utama, dan jalankan perintah lagi untuk membuat paket untuk aplikasi siaga.
az appservice plan create --name <app-service-plan> --resource-group <resource-group> --is-linux --location `<region>`
Ganti nilai parameter berikut <placeholder> dengan informasi untuk sumber daya Anda sendiri:
| Pengaturan | Nilai | Deskripsi | Example |
|---|---|---|---|
--name |
<app-service-plan> |
Nama paket layanan aplikasi untuk aplikasi web. Setiap instans rencana harus memiliki nama yang unik. | zava-primary-planzava-standby-plan |
--resource-group |
<resource-group> |
Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. | zava-resource-group |
--location |
<region> |
Lokasi wilayah untuk aplikasi web. | - Aplikasi web utama, wilayah aktif eastus - Aplikasi web siaga, wilayah pasif westus |
Untuk informasi selengkapnya, lihat referensi perintah az appservice plan create .
Membuat dua aplikasi
Buat dua aplikasi web App Service. Tempatkan setiap aplikasi di paket App Service dan lokasi wilayah yang sesuai.
--runtimeIdentifikasi versi bahasa untuk aplikasi web.Anda dapat menjalankan perintah berikut untuk daftar runtime yang tersedia:
az webapp list-runtimesJika Anda berencana menggunakan contoh aplikasi Node.js yang dijelaskan dalam tutorial ini, atur nilainya
<language-version>keNODE:24-lts.Buat dua aplikasi web. Jalankan perintah berikut untuk membuat aplikasi web utama, dan jalankan perintah lagi untuk membuat aplikasi siaga.
az webapp create --name <web-app-name> --resource-group <resource-group> --plan <app-service-plan> --runtime <language-version>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --name<web-app-name>Nama aplikasi web. Setiap aplikasi harus memiliki nama yang unik secara global. Karakter yang valid adalah a-z,0-9, dan-.zava-primary-appzava-standby-app--resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--name<app-service-plan>Nama paket layanan aplikasi untuk aplikasi web. zava-primary-planzava-standby-plan--runtime<language-version>Versi bahasa runtime untuk aplikasi web. NODE:24-ltsUntuk informasi selengkapnya, lihat referensi perintah az webapp create .
Identifikasi nilai
defaultHostNameuntuk setiap aplikasi web. Format nama host adalah<web-app-name>.azurewebsites.net.Pindai output perintah untuk setiap aplikasi web dan temukan nilainya, atau jalankan perintah berikut untuk setiap aplikasi web:
az webapp show --name <web-app-name> --resource-group <resource-group> --query "hostNames"Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --name<web-app-name>Nama aplikasi web. zava-primary-appzava-standby-app--resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-groupDi portal Azure, nama host untuk setiap aplikasi terlihat di halaman aplikasi web Overview.
Rekam nilai nama host untuk nanti. Anda menggunakan nama host untuk menentukan alamat backend untuk penyebaran Azure Front Door.
Konfirmasikan bahwa Anda dapat mengakses aplikasi web baru.
Di browser, masukkan nama host untuk aplikasi web utama, seperti
zava-primary-app.azurewebsites.net.Saat koneksi berhasil, Anda akan melihat pesan berikut:
Ulangi pengujian dengan nama host untuk aplikasi web siaga Anda.
Mengonfigurasi Azure Front Door
Penyebaran multi-wilayah dapat menggunakan konfigurasi aktif-aktif atau aktif-pasif. Wilayah utama aktif dan wilayah siaga pasif.
- Konfigurasi aktif-aktif membagi permintaan ke beberapa wilayah aktif.
- Konfigurasi aktif-pasif terus menjalankan instans di wilayah siaga (pasif), tetapi tidak mengirim lalu lintas ke sana kecuali wilayah utama (aktif) gagal.
Azure Front Door memungkinkan Anda mengaktifkan kedua konfigurasi. Untuk informasi selengkapnya tentang merancang aplikasi untuk ketersediaan tinggi dan toleransi kesalahan, lihat Daftar periksa tinjauan desain untuk keandalan.
Membuat profil
Buat instans Azure Front Door Premium untuk merutekan lalu lintas ke aplikasi web Anda.
Tinjau perbandingan tingkat Azure Front Door dan pilih tingkat untuk penyebaran Anda.
Tutorial ini menggunakan Azure Front Door Premium (
Premium_AzureFrontDoor).Jika Anda lebih suka menyebarkan Azure Front Door Standard, perlu diingat bahwa tingkat Standar tidak mendukung penyebaran aturan terkelola dengan Kebijakan WAF.
Jalankan perintah berikut untuk membuat profil:
az afd profile create --profile-name <front-door-profile> --resource-group <resource-group> --sku <front-door-tier>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --profile-name<front-door-profile>Nama untuk profil dari Azure Front Door. Nama harus unik dalam grup sumber daya. zava-profile--resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--sku<front-door-tier>Tingkat SKU Azure Front Door untuk penyebaran. Premium_AzureFrontDoor(disarankan)
Standard_AzureFrontDoorUntuk informasi selengkapnya, lihat referensi perintah az afd profile create .
Tambahkan titik akhir
Buat titik akhir di profil Anda. Setelah membuat titik akhir pertama, Anda dapat membuat beberapa titik akhir di profil Anda.
az afd endpoint create --resource-group <resource-group> --endpoint-name <front-door-endpoint> --profile-name <front-door-profile> --enabled-state Enabled
Ganti nilai parameter berikut <placeholder> dengan informasi untuk sumber daya Anda sendiri:
| Pengaturan | Nilai | Deskripsi | Example |
|---|---|---|---|
--resource-group |
<resource-group> |
Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. | zava-resource-group |
--endpoint-name |
<front-door-endpoint> |
Nama titik akhir di bawah profil Azure Front Door. Nama harus unik secara global. | zava-endpoint |
--profile-name |
<front-door-profile> |
Nama profil Azure Front Door Anda. | zava-profile |
Untuk informasi selengkapnya, lihat referensi perintah az afd endpoint create .
Membuat grup asal
Saat Anda menyebarkan ke Azure Front Door, Anda memerlukan server asal untuk digunakan sebagai titik akhir backend aplikasi web Anda. Untuk informasi selengkapnya, lihat Origins dan grup asal di Azure Front Door. Asal-usul disimpan dalam grup asal.
Buat grup asal di profil Azure Front Door Anda untuk berisi asal untuk dua aplikasi web Anda.
az afd origin-group create --resource-group <resource-group> --origin-group-name <front-door-origin-group> --profile-name <front-door-profile> \
--probe-request-type <probe-request> \
--probe-protocol <probe-protocol> \
--probe-interval-in-seconds <probe-interval> \
--probe-path <probe-path> \
--sample-size <sample-size> \
--successful-samples-required <required-samples> \
--additional-latency-in-milliseconds <extra-latency>
Ganti nilai parameter berikut <placeholder> dengan informasi untuk sumber daya Anda sendiri:
| Pengaturan | Nilai | Deskripsi | Example |
|---|---|---|---|
--resource-group |
<resource-group> |
Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. | zava-resource-group |
--origin-group-name |
<front-door-origin-group> |
Nama grup sumber Azure Front Door. Nama harus unik secara global. | zava-origin-group |
--profile-name |
<front-door-profile> |
Nama profil Azure Front Door Anda. | zava-profile |
--probe-request-type |
<probe-request> |
Jenis permintaan pemeriksaan kesehatan. | GET |
--probe-protocol |
<probe-protocol> |
Protokol yang digunakan untuk pemeriksaan kesehatan. | Http |
--probe-interval-in-seconds |
<probe-interval> |
Jumlah detik antara pemeriksaan kesehatan. | 60 |
--probe-path |
<probe-path> |
Jalur relatif terhadap server asal, yang digunakan untuk menentukan status kesehatan server asal. |
/ (garis miring terbelakang) |
--sample-size |
<sample-size> |
Jumlah sampel yang perlu dipertimbangkan untuk keputusan penyeimbangan beban. | 4 |
--successful-samples-required |
<required-samples> |
Jumlah sampel dalam periode sampel yang harus berhasil. | 3 |
--additional-latency-in-milliseconds |
<extra-latency> |
Tambahan latensi dalam milidetik untuk mengukur ketika probe jatuh ke dalam kategori latensi terendah. | 50 |
Untuk informasi selengkapnya, lihat referensi perintah az afd origin-group create .
Tambahkan asal ke kelompok asal
Tambahkan asal untuk setiap aplikasi web Anda ke grup asal Azure Front Door Anda.
Tambahkan asal untuk aplikasi web utama. Atur parameter
--priorityke1, yang menginformasikan Azure Front Door bahwa aplikasi ini adalah penerima utama untuk lalu lintas.az afd origin create --resource-group <resource-group> --host-name <web-app-name>.azurewebsites.net --profile-name <front-door-profile> \ --origin-group-name <front-door-origin-group> \ --origin-name <web-app-origin-name> \ --origin-host-header <web-app-name>.azurewebsites.net \ --priority <origin-priority> --weight <origin-weight> --enabled-state <origin-state> \ --http-port <origin-port> --https-port <origin-secure-port>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--host-name<web-app-name>.azurewebsites.netNama host untuk aplikasi web utama Anda. Nama host menggabungkan nama aplikasi web, seperti zava-primary-appdengan pengidentifikasi host,azurewebsites.net.zava-primary-app.azurewebsites.net--profile-name<front-door-profile>Nama profil Azure Front Door Anda. zava-profile--origin-group-name<front-door-origin-group>Nama grup sumber Azure Front Door. zava-origin-group--origin-name<web-app-origin-name>Nama asal mula dari aplikasi web utama. Nama harus unik dalam grup asal. primary-origin--origin-host-header<web-app-name>.azurewebsites.netHeader host yang akan dikirim untuk permintaan ke asal aplikasi web primer. Jika Anda tidak menentukan nilai, nama host permintaan menentukan nilai ini. Azure CDN asal, seperti Web Apps, Blob Storage, dan Cloud Services memerlukan nilai header host ini agar sesuai dengan nama host asal secara default. zava-primary-app.azurewebsites.net--priority<origin-priority>Prioritas untuk asal ini dalam grup asal. Untuk aplikasi web utama , atur prioritas ke 1. Azure Front Door menggunakan nilai prioritas untuk penyeimbangan beban antara server asal dan wilayah aktif. Nilai harus antara 1 dan 5. 1 --weight<origin-weight>Berat asal dalam kelompok asal untuk penyeimbangan beban. Nilai harus antara 1 dan 1000. 1000 --enabled-state<origin-state>Tentukan apakah akan mengizinkan sumber ini menerima lalu lintas. Enabled--http-port<origin-port>Port yang digunakan untuk permintaan HTTP ke asal. 80 --https-port<origin-secure-port>Port yang digunakan untuk permintaan HTTPS aman ke server asal. 443 Untuk informasi selengkapnya, lihat referensi perintah az afd origin create .
Jalankan kembali perintah tersebut dan tambahkan sumber untuk aplikasi web siaga. Perintah menggunakan parameter yang sama, tetapi dengan nilai parameter unik berikut:
Pengaturan Nilai Deskripsi Example --host-name<web-app-name>.azurewebsites.netNama host untuk aplikasi web siaga Anda. zava-standby-app.azurewebsites.net--origin-name<web-app-origin-name>Nama asal untuk aplikasi web siaga . standby-origin--origin-host-header<web-app-name>.azurewebsites.netHeader host untuk mengirim permintaan ke asal aplikasi web siaga . zava-standby-app.azurewebsites.net--priority<origin-priority>Prioritas untuk asal ini dalam grup asal. Untuk aplikasi web siaga , atur prioritas ke 2. Azure Front Door mencoba mengarahkan semua lalu lintas ke asal utama. Ketika asal utama tidak tersedia, rute dialihkan ke asal siaga. 2
Menambahkan aturan rute
Tambahkan aturan pemetaan untuk memetakan titik akhir Azure Front Door ke kelompok sumber. Rute meneruskan permintaan dari titik akhir ke grup asal Anda.
Buat aturan rute untuk memetakan titik akhir Azure Front Door ke grup asal:
az afd route create --resource-group <resource-group> --profile-name <front-door-profile> --endpoint-name <front-door-endpoint> ` --forwarding-protocol <protocol-type> --route-name <route-rule-name> --https-redirect <secure-redirect> ` --origin-group <front-door-origin-group> --supported-protocols <protocol-list> --link-to-default-domain <domain-link>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--profile-name<front-door-profile>Nama profil Azure Front Door Anda. zava-profile--endpoint-name<front-door-endpoint>Nama titik akhir di bawah profil Azure Front Door Anda. zava-endpoint--forwarding-protocol<protocol-type>Protokol yang digunakan oleh aturan rute ini saat meneruskan lalu lintas ke aplikasi backend. MatchRequest--route-name<route-rule-name>Nama dari aturan rute. Harus unik dalam profil Azure Front Door. zava-route-rule--https-redirect<secure-redirect>Menunjukkan apakah akan mengalihkan lalu lintas HTTP secara otomatis ke lalu lintas HTTPS. Enabled--origin-group-name<front-door-origin-group>Nama grup sumber Azure Front Door. zava-origin-group--supported-protocols<protocol-list>Daftar protokol yang didukung untuk aturan rute ini. Gunakan spasi untuk memisahkan jenis protokol. Http Https--link-to-default-domain<domain-link>Menunjukkan apakah rute ini ditautkan ke domain titik akhir default. EnabledUntuk informasi selengkapnya, lihat referensi perintah az afd route create .
Izinkan sekitar 15 menit agar penyebaran selesai. Diperlukan beberapa waktu agar perubahan disebarluaskan secara global.
Membatasi akses hanya melalui Azure Front Door
Saat ini Anda dapat mengakses aplikasi web Anda secara langsung dengan memasukkan nama host mereka di browser. Jika Anda menetapkan pembatasan akses pada aplikasi, Anda dapat memastikan lalu lintas mencapai aplikasi hanya melalui Azure Front Door.
Fitur Azure Front Door berfungsi paling baik ketika lalu lintas hanya mengalir melalui layanan. Ini adalah praktik terbaik untuk mengonfigurasi asal aplikasi web Anda untuk memblokir lalu lintas yang tidak dikirim melalui Azure Front Door. Jika tidak, lalu lintas mungkin melewati firewall aplikasi web Azure Front Door, perlindungan DDoS, dan fitur keamanan lainnya.
Lalu lintas dari Azure Front Door ke aplikasi Anda berasal dari serangkaian rentang IP terkenal yang ditentukan dalam tag layanan AzureFrontDoor.Backend. Dengan menggunakan aturan pembatasan tag layanan, Anda dapat membatasi lalu lintas agar hanya berasal dari Azure Front Door.
Dapatkan pengenal untuk profil Azure Front Door Anda.
Anda memerlukan ID profil untuk memastikan lalu lintas hanya berasal dari instans Azure Front Door spesifik Anda. Pembatasan akses selanjutnya memfilter permintaan masuk berdasarkan header HTTP unik yang dikirim dari profil Azure Front Door Anda.
az afd profile show --resource-group <resource-group> --profile-name <front-door-profile> --query "frontDoorId"Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--profile-name<front-door-profile>Nama profil Azure Front Door Anda. zava-profileOutput perintah menampilkan ID profil (32 digit nilai alfanumerik):
"0000aaaa-1b1b-2c2c-3d3d-444444eeeeee"Pada langkah berikutnya, Anda menggunakan ID profil untuk nilai tersebut
<profile-identifier>.Jalankan perintah berikut untuk mengatur pembatasan akses di aplikasi web utama Anda, dan jalankan perintah lagi untuk mengatur pembatasan pada aplikasi siaga.
az webapp config access-restriction add --resource-group <resource-group> --name <web-app-name> ` --priority <access-priority> --service-tag <tag-name> --http-header x-azure-fdid=<front-door-id>Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--name<web-app-name>Nama aplikasi web tempat Anda mengatur pembatasan akses. zava-primary-appzava-standby-app--priority<access-priority>Tentukan prioritas aturan pembatasan akses di semua aturan yang ditentukan untuk profil. Nilai yang lebih rendah sama dengan prioritas yang lebih tinggi. 100 --service-tag<tag-name>Nama tag layanan yang dikenali oleh Azure Front Door. Pembatasan akses berlaku untuk rentang IP yang ditunjukkan oleh tag layanan. AzureFrontDoor.Backend--http-headerx-azure-fdid=<profile-identifier>Tentukan satu atau beberapa header HTTP unik untuk pemfilteran ekstra lalu lintas masuk. Pembatasan akses memfilter permintaan masuk berdasarkan header HTTP unik yang dikirim dari profil Azure Front Door Anda. Header menggabungkan awalan Azure Front Door dan pengidentifikasi profil untuk instans Azure Front Door Anda. x-azure-fdid=0000aaaa-1b1b-2c2c-3d3d-444444eeeeeeUntuk informasi selengkapnya, lihat referensi untuk perintah az webapp config access-restriction add.
Menguji pembatasan akses
Konfirmasikan pembatasan akses Anda mencegah akses langsung ke aplikasi Anda.
Di browser, masukkan nama host untuk aplikasi web utama, seperti
zava-primary-app.azurewebsites.net.Koneksi harus gagal dengan pesan berikut:
Ulangi pengujian dengan nama host untuk aplikasi web siaga Anda, seperti
zava-standby-app.azurewebsites.net.
Uji penerapan Azure Front Door
Saat Anda membuat profil Azure Front Door Standar atau Premium, mungkin perlu waktu beberapa saat bagi konfigurasi untuk disebarkan secara global. Setelah penyebaran selesai, Anda dapat mengakses host frontend.
Dapatkan nama host endpoint Azure Front Door Anda.
az afd endpoint show --resource-group <resource-group> --profile-name <front-door-profile> --endpoint-name <front-door-endpoint> --query "hostName"Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:Pengaturan Nilai Deskripsi Example --resource-group<resource-group>Grup sumber daya yang berisi sumber daya yang dibuat dalam tutorial ini. zava-resource-group--profile-name<front-door-profile>Nama profil Azure Front Door Anda. zava-profile--endpoint-name<front-door-endpoint>Nama titik akhir di bawah profil Azure Front Door Anda. zava-endpointOutput perintah menampilkan nama host titik akhir:
"zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net"Nama host terdiri dari nama titik akhir, hash alfanumerik yang unik, sebuah pengidentifikasi, dan akhiran Azure Front Door. Pada langkah berikutnya, Anda akan menggunakan hostname dari titik akhir.
Untuk informasi selengkapnya, lihat referensi perintah az afd endpoint show .
Pada browser, masukkan nama host endpoint, seperti
zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net.Permintaan Anda seharusnya secara otomatis diarahkan ke aplikasi utama Anda di region aktif.
Saat koneksi berhasil, Anda akan melihat pesan berikut:
Uji failover global seketika antara aplikasi di wilayah yang telah dipasangkan.
Pada browser, masukkan nama host endpoint, seperti
zava-endpoint-0a1b2c3d4e5f6g78.z00.azurefd.net.Hentikan aplikasi utama dengan menjalankan perintah az webapp stop .
Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:az webapp stop --name <primary-web-app> --resource-group <resource-group>Segarkan peramban Anda.
Jika lalu lintas dialihkan dengan benar ke aplikasi siaga di wilayah lain, Anda akan melihat halaman dan pesan yang sama.
Petunjuk / Saran
Anda mungkin perlu me-refresh halaman beberapa kali agar failover selesai.
Anda dapat mengonfirmasi bahwa Azure Front Door mengalihkan ke aplikasi siaga dengan memeriksa status dari aplikasi web di portal Azure. Pada halaman Gambaran Umum untuk aplikasi web utama, opsi Mulai harus tersedia (tidak berwarna abu-abu). Pada halaman Gambaran Umum untuk aplikasi web siaga, opsi Mulai tidak boleh tersedia (berwarna abu-abu).
Jalankan
az webapp stopperintah lagi dan hentikan aplikasi siaga Anda.Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:az webapp stop --name <standby-web-app> --resource-group <resource-group>Refresh browser Anda lagi.
Jika aplikasi siaga juga berhenti, semua pengalihan lalu lintas harus berhenti. Kali ini, Anda akan melihat pesan kesalahan:
Jalankan
az webapp startperintah dan mulai ulang aplikasi siaga Anda.Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri:az webapp start --name <standby-web-app> --resource-group <resource-group>Refresh browser Anda dan Anda akan melihat koneksi aplikasi yang berhasil.
Validasi mengonfirmasi bahwa Anda sekarang dapat mengakses aplikasi melalui fungsi Azure Front Door dan failover seperti yang dimaksudkan.
Jika Anda sudah selesai dengan pengujian failover, mulai ulang aplikasi utama Anda.
Membersihkan sumber daya
Pada langkah-langkah sebelumnya, Anda membuat sumber daya Azure dalam kelompok sumber daya. Jika Anda tidak mengharapkan untuk membutuhkan sumber daya ini di masa mendatang, hapus grup sumber daya dengan menjalankan perintah berikut di Cloud Shell.
<placeholder> Ganti nilai parameter dengan informasi untuk sumber daya Anda sendiri:
az group delete --name <resource-group>
Perintah ini mungkin perlu waktu beberapa menit untuk dijalankan.
Mengimplementasikan dari ARM atau Bicep
Sumber daya yang Anda buat dalam tutorial ini dapat disebarkan dengan menggunakan templat Azure Resource Manager (templat ARM) atau templat Bicep. Anda dapat memulai dengan file Bicep aplikasi web multi-wilayah yang sangat tersedia di GitHub. Templat ini membantu Anda membuat solusi end-to-end multi-wilayah yang aman, sangat tersedia dengan dua aplikasi web di berbagai wilayah di belakang Azure Front Door.
Untuk mempelajari cara menyebarkan templat ARM dan Bicep, lihat Deploy Bicep files with the Azure CLI.
Tanya jawab umum
Dalam tutorial ini, Anda menyebarkan infrastruktur dasar untuk mengaktifkan aplikasi web multi-wilayah. App Service menyediakan fitur yang dapat membantu Anda memastikan Anda menjalankan aplikasi yang mengikuti praktik dan rekomendasi terbaik keamanan.
Bagian ini berisi jawaban atas pertanyaan yang sering diajukan yang dapat membantu Anda mengamankan aplikasi lebih lanjut dan menyebarkan dan mengelola sumber daya Anda sesuai dengan praktik terbaik.
Mengelola dan menyebarkan infrastruktur dan sumber daya Azure
Untuk tutorial ini, Anda menggunakan Azure CLI untuk menyebarkan sumber daya infrastruktur Anda. Pertimbangkan untuk mengonfigurasi mekanisme penyebaran berkelanjutan untuk mengelola infrastruktur aplikasi Anda. Karena Anda menyebarkan sumber daya di berbagai wilayah, Anda perlu mengelola sumber daya tersebut secara independen di seluruh wilayah. Untuk memastikan sumber daya identik di setiap wilayah, infrastruktur sebagai kode (IaC) seperti templat ARM atau Terraform harus digunakan dengan alur penyebaran seperti Azure Pipelines atau GitHub Actions. Saat Anda menyiapkan konfigurasi ini dengan tepat, setiap perubahan pada sumber daya akan memicu pembaruan di semua wilayah penyebaran. Untuk informasi selengkapnya, lihat Konfigurasi penyebaran berkelanjutan ke Azure App Service.
Menggunakan slot penahapan untuk penyebaran yang aman ke produksi
Menyebarkan kode aplikasi langsung ke aplikasi dan slot produksi tidak disarankan. Penting untuk memiliki tempat yang aman untuk menguji aplikasi Anda dan memvalidasi perubahan sebelum mendorong ke produksi. Gunakan kombinasi slot penahapan dan pertukaran slot untuk memindahkan kode dari lingkungan pengujian ke produksi.
Dalam tutorial ini, Anda membuat infrastruktur dasar yang mendukung penggunaan slot penahapan. Anda dapat membuat slot penyebaran untuk setiap instans aplikasi web Anda dan mengonfigurasi penyebaran berkelanjutan ke slot penahapan ini dengan GitHub Actions. Seperti halnya manajemen infrastruktur, mengonfigurasi penyebaran berkelanjutan untuk kode sumber aplikasi Anda juga disarankan untuk memastikan perubahan di seluruh wilayah tetap sinkron. Jika Anda tidak mengonfigurasi penyebaran berkelanjutan, Anda perlu memperbarui setiap aplikasi secara manual di setiap wilayah setiap kali ada perubahan kode.
Untuk menggunakan slot penahapan, ikuti prosedur ini:
Untuk prosedur ini, Anda memerlukan aplikasi yang siap disebarkan ke aplikasi App Service Anda.
Jika Anda menyelesaikan tutorial, Anda dapat menggunakan aplikasi web utama dan aplikasi web siaga. Namun, Anda memerlukan paket App Service yang mendukung slot penyebaran yang memadai. Untuk informasi selengkapnya, lihat Azure batas langganan dan layanan, kuota, dan batasan.
Jika Anda tidak memiliki aplikasi, Anda dapat memulai dengan aplikasi sampel Node.js Halo Dunia. Fork repositori GitHub sehingga Anda memiliki salinan Anda sendiri untuk membuat perubahan.
Konfigurasikan pengaturan stack App Service untuk aplikasi web Anda.
Pengaturan tumpukan mengacu pada versi bahasa atau runtime yang digunakan untuk aplikasi Anda.
Anda dapat mengonfigurasi pengaturan di portal Azure atau menggunakan perintah
az webapp config set. Jika Anda menggunakan sampel Node.js, atur pengaturan tumpukan keNode 24 LTS.Di portal Azure, buka aplikasi web primary Anda.
Di menu sebelah kiri, pilih >.
Di tab Pengaturan tumpukan , konfigurasikan pengaturan berikut:
Pilih nilai Tumpukan , seperti Simpul.
Pilih nilai Versi , seperti Node 24 LTS.
Pilih Terapkan.
Ulangi proses untuk mengonfigurasi pengaturan tumpukan App Service untuk aplikasi web siaga Anda.
Siapkan penyebaran berkelanjutan di portal Azure. Untuk panduan terperinci tentang cara mengonfigurasi penyebaran berkelanjutan dengan penyedia seperti GitHub Actions, lihat Konfigurasi penyebaran berkelanjutan ke Azure App Service.
Jalankan perintah berikut untuk membuat slot penahapan bernama
stageuntuk aplikasi web utama Anda.az webapp deployment slot create --resource-group <resource-group> --name <web-app-name> --slot stage --configuration-source <web-app-name>Jalankan perintah
az webapp deployment slot createsekali lagi dan buat slot pemanggungan bernamastageuntuk aplikasi web siaga.Konfigurasikan penyebaran berkelanjutan dengan GitHub Actions untuk setiap slot staging.
Di portal Azure, buka aplikasi web primary Anda.
Di menu sebelah kiri, pilih Penyebaran>Slot Penyebaran.
Temukan slot tahap dalam daftar, dan pilih slot untuk membuka panel detail.
Di menu sebelah kiri, pilihPusat Penyebaran>.
Di tab Settings, atur opsi Source ke GitHub:
Jika Anda menyebarkan dari GitHub untuk pertama kalinya, pilih Authorize dan ikuti perintah otorisasi. Jika Anda ingin menyebar dari repositori pengguna yang berbeda, pilih Ubah Akun.
Setelah Anda mengotorisasi akun Azure Anda dengan GitHub, pilih Organization, Repository, dan Branch untuk mengonfigurasi CI/CD. Jika Anda tidak dapat menemukan organisasi atau repositori, Anda mungkin perlu mengaktifkan lebih banyak izin pada GitHub. Untuk informasi selengkapnya, lihat Mengelola akses pengguna ke repositori organisasi Anda.
Jika Anda menggunakan aplikasi sampel Node.js, gunakan pengaturan berikut.
Pengaturan Nilai Organisasi <your-GitHub-organization>Repositori nodejs-docs-hello-world Cabang utama Pilih Simpan.
Penerapan baru di repositori dan cabang yang dipilih sekarang disebarkan terus-menerus ke slot aplikasi App Service Anda. Anda dapat melacak penerapan dan penyebaran pada tab Log.
File alur kerja default yang menggunakan profil penerbitan untuk mengautentikasi ke App Service ditambahkan ke repositori GitHub Anda. Anda dapat melihat file ini dengan masuk ke <repo-name>/.github/workflows/ direktori.
Menonaktifkan autentikasi dasar di App Service
Anda dapat membatasi akses ke titik akhir FTP dan SCM kepada pengguna yang didukung oleh Microsoft Entra ID dengan menonaktifkan autentikasi dasar.
Jika Anda menggunakan alat penyebaran berkelanjutan untuk menyebarkan kode sumber aplikasi, menonaktifkan autentikasi dasar memerlukan langkah tambahan untuk mengonfigurasi penyebaran berkelanjutan. Misalnya, Anda tidak dapat menggunakan profil publikasi karena tidak menggunakan kredensial Microsoft Entra. Sebagai gantinya, Anda perlu menggunakan service principal atau kredensial OpenID Connect.
Perintah berikut menonaktifkan autentikasi dasar untuk aplikasi web utama dan slot penahapan App Service, serta aplikasi web siaga dan slot penahapan. Ganti nilai parameter berikut <placeholder> dengan informasi untuk sumber daya Anda sendiri.
Nonaktifkan akses FTP untuk situs produksi dan slot staging untuk aplikasi web utama Anda.
az resource update --resource-group <resource-group> --name ftp --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<web-app-name> --set properties.allow=false az resource update --resource-group <resource-group> --name ftp --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<web-app-name>/slots/stage --set properties.allow=falseJalankan perintah lagi untuk aplikasi web siaga Anda.
Nonaktifkan akses autentikasi dasar ke port WebDeploy dan situs SCM untuk situs produksi dan slot penahapan untuk aplikasi web utama Anda:
az resource update --resource-group <resource-group> --name scm --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<primary-web-app> --set properties.allow=false az resource update --resource-group <resource-group> --name scm --namespace Microsoft.Web --resource-type basicPublishingCredentialsPolicies \ --parent sites/<primary-web-app>/slots/stage --set properties.allow=falseJalankan perintah lagi untuk aplikasi web siaga Anda.
Untuk informasi selengkapnya tentang menonaktifkan autentikasi dasar, termasuk cara menguji dan memantau rincian masuk, lihat Menonaktifkan autentikasi dasar dalam penyebaran App Service.
Gunakan penyebaran berkelanjutan saat autentikasi dasar dinonaktifkan
Jika Anda memilih untuk mengizinkan autentikasi dasar di aplikasi App Service, Anda dapat menggunakan salah satu metode penyebaran yang tersedia di App Service. Misalnya, Anda dapat menggunakan konfigurasi profil penerbitan di bagian slot penahapan.
Jika Anda menonaktifkan autentikasi dasar untuk aplikasi App Service, penyebaran berkelanjutan memerlukan perwakilan layanan atau OpenID Connect untuk autentikasi. Jika Anda menggunakan GitHub Actions sebagai repositori kode, lihat Deploy untuk Azure App Service dengan menggunakan GitHub Actions. Tutorial ini menyediakan instruksi langkah demi langkah untuk membuat prinsipal layanan atau OpenID Connect guna dideploy ke App Service dengan menggunakan GitHub Actions. Anda juga dapat menyelesaikan proses dengan mengikuti prosedur di bagian berikutnya.
Membuat entitas layanan dan data kredensial dengan GitHub Actions
Konfigurasikan penyebaran berkelanjutan dengan GitHub Actions dan perwakilan layanan:
Buat perwakilan layanan untuk aplikasi web utama dan aplikasi web siaga Anda:
Ganti nilai parameter berikut
<placeholder>dengan informasi untuk sumber daya Anda sendiri.az ad sp create-for-rbac --name <service-principal-name> --role contributor --scopes \ /subscriptions/<subscription-ID>/resourceGroups/<resource-group>/providers/Microsoft.Web/sites/<primary-web-app> \ /subscriptions/<subscription-ID>/resourceGroups/<resource-group>/providers/Microsoft.Web/sites/<standby-web-app>Output adalah objek JSON dengan kredensial penetapan peran yang menyediakan akses ke aplikasi App Service Anda.
{ "clientId": "00001111-aaaa-2222-bbbb-3333cccc4444", "clientSecret": "ffffffff-5a5a-6b6b-7c7c-888888888888", "subscriptionId": "cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a", "tenantId": "aaaabbbb-6666-cccc-7777-dddd8888eeee", "activeDirectoryEndpointUrl": "https://login.microsoftonline.com", "resourceManagerEndpointUrl": "https://management.azure.com/", "activeDirectoryGraphResourceId": "https://graph.windows.net/", "sqlManagementEndpointUrl": "https://management.core.windows.net:8443/", "galleryEndpointUrl": "https://gallery.azure.com/", "managementEndpointUrl": "https://management.core.windows.net/" }JSON menyertakan rahasia klien Anda, yang hanya terlihat saat ini.
Petunjuk / Saran
Ini adalah praktik yang baik untuk memberikan akses minimum. Dalam contoh ini, cakupan terbatas hanya pada aplikasi, bukan seluruh grup sumber daya.
Salin objek JSON sehingga Anda memiliki catatan rahasia klien Anda.
Berikan kredensial perwakilan layanan Anda ke operasi Masuk Azure sebagai bagian dari alur kerja GitHub Actions Anda.
Anda dapat memberikan nilai langsung dalam alur kerja atau menyimpannya sebagai rahasia GitHub yang direferensikan dalam alur kerja Anda. Menyimpan nilai sebagai rahasia GitHub adalah opsi yang lebih aman.
Buka repositori GitHub untuk aplikasi Anda.
Buka Pengaturan> RahasiaKeamanan> danTindakan>.
Pilih Rahasia repositori baru dan buat rahasia untuk setiap pengaturan berikut. Gunakan nilai dari output JSON Anda.
Pengaturan Nilai Example AZURE_APP_ID <application/client-id>00001111-aaaa-2222-bbbb-3333cccc4444AZURE_PASSWORD <client-secret>ffffffff-5a5a-6b6b-7c7c-888888888888AZURE_TENANT_ID <tenant-id>aaaabbbb-6666-cccc-7777-dddd8888eeeeAZURE_SUBSCRIPTION_ID <subscription-id>cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a
Membuat alur kerja GitHub Actions
Setelah Anda memiliki perwakilan layanan yang dapat mengakses aplikasi App Service Anda, edit alur kerja default untuk aplikasi Anda. Alur kerja ini dibuat secara otomatis saat Anda mengonfigurasi penyebaran berkelanjutan.
Autentikasi harus dilakukan dengan menggunakan perwakilan layanan Anda alih-alih profil penerbitan. Untuk contoh alur kerja, lihat tab Service principal di Tambahkan file alur kerja ke repositori GitHub Anda. Contoh alur kerja berikut dapat digunakan untuk aplikasi sampelNode.js.
Buka repositori GitHub untuk aplikasi Anda.
<repo-name>/.github/workflows/Buka direktori. Anda akan melihat alur kerja yang dibuat secara otomatis.Untuk setiap file alur kerja, pilih Edit (pensil).
Ganti konten file alur kerja dengan konten berikut. Kode mengasumsikan Anda sudah membuat rahasia GitHub untuk kredensial Anda.
Pada bagian
env, konfigurasikan pengaturan berikut:-
AZURE_WEBAPP_NAME: Ganti<web-app-name>placeholder dengan nama aplikasi web Anda. -
NODE_VERSION: Tentukan versi node yang akan digunakan. Untuk sampel Node.js, nilainya adalah'24.x'. -
AZURE_WEBAPP_PACKAGE_PATH: Tentukan jalur ke proyek aplikasi web Anda. Defaultnya adalah akar repositori,'.'. -
AZURE_WEBAPP_SLOT_NAME: Tentukan nama slot aplikasi Anda. Nama umumnya adalahstage.
name: Build and deploy Node.js app to Azure Web App on: push: branches: - main workflow_dispatch: env: AZURE_WEBAPP_NAME: <web-app-name> # Your application name NODE_VERSION: '24.x' # Node version to use AZURE_WEBAPP_PACKAGE_PATH: '.' # Path to your web app project AZURE_WEBAPP_SLOT_NAME: stage # Application slot name jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Set up Node.js version uses: actions/setup-node@v4 with: node-version: ${{ env.NODE_VERSION }} - name: npm install, build run: | npm install npm run build --if-present - name: Upload artifact for deployment job uses: actions/upload-artifact@v4 with: name: node-app path: . deploy: runs-on: ubuntu-latest needs: build environment: name: 'stage' url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} steps: - name: Download artifact from build job uses: actions/download-artifact@v4 with: name: node-app - uses: azure/login@v2 with: creds: | { "clientId": "${{ secrets.AZURE_APP_ID }}", "clientSecret": "${{ secrets.AZURE_PASSWORD }}", "subscriptionId": "${{ secrets.AZURE_SUBSCRIPTION_ID }}", "tenantId": "${{ secrets.AZURE_TENANT_ID }}" } - name: 'Deploy to Azure Web App' id: deploy-to-webapp uses: azure/webapps-deploy@v3 with: app-name: ${{ env.AZURE_WEBAPP_NAME }} slot-name: ${{ env.AZURE_WEBAPP_SLOT_NAME }} package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} - name: logout run: | az logout-
Simpan dan terapkan perubahan file alur kerja langsung ke cabang utama repositori Anda.
Commit memicu GitHub Action untuk berjalan lagi dan menerapkan kode Anda. Kali ini, perwakilan layanan digunakan untuk mengautentikasi.
Menguji pembaruan aplikasi dengan menggunakan perutean lalu lintas slot
Perutean lalu lintas dengan slot memungkinkan Anda mengarahkan sebagian lalu lintas pengguna yang telah ditentukan sebelumnya ke setiap slot. Awalnya, 100% lalu lintas diarahkan ke situs produksi. Namun, Anda dapat mengirim 10% lalu lintas ke slot pengujian Anda. Pendekatan perutean lalu lintas slot ini secara otomatis mengirim 10% pengguna yang mencoba mengakses slot penahapan. Pendekatan ini tidak memerlukan perubahan pada instans Azure Front Door Anda. Untuk mempelajari selengkapnya tentang pertukaran slot dan lingkungan penahapan di App Service, lihat Siapkan lingkungan penahapan di Azure App Service.
Memindahkan kode dari slot penahapan ke slot produksi
Setelah selesai menguji dan memvalidasi di slot penahapan, Anda dapat melakukan pertukaran slot dari slot penahapan ke situs produksi Anda. Anda menyelesaikan pertukaran untuk semua instans aplikasi Anda di setiap wilayah. Selama pertukaran slot, platform App Service memastikan slot target tidak mengalami gangguan.
Lakukan pertukaran untuk aplikasi web utama Anda:
az webapp deployment slot swap --resource-group <resource-group> -name <primary-web-app-name> --slot stage --target-slot productionLakukan pertukaran untuk aplikasi web siaga Anda:
az webapp deployment slot swap --resource-group <resource-group> -name <standby-web-app-name> --slot stage --target-slot productionSetelah beberapa menit, buka titik akhir Azure Front Door Anda di portal Azure, dan validasi pertukaran slot berhasil.
Pada titik ini, aplikasi Anda sudah aktif dan berjalan lancar, dan setiap perubahan yang Anda buat pada kode sumber aplikasi Anda secara otomatis memicu pembaruan pada kedua slot penahapan Anda. Anda kemudian dapat mengulangi proses pertukaran slot ketika Anda siap untuk memindahkan kode tersebut ke dalam produksi.
Hindari gangguan dan masalah kelangsungan dengan menggunakan penyebaran multi-wilayah
Anda dapat menghindari potensi gangguan atau masalah dengan kelangsungan di seluruh wilayah dengan menghapus situs yang sedang menjalani pertukaran slot dari grup asal Azure Front Door Anda untuk sementara waktu. Tindakan ini membantu mencegah pelanggan melihat berbagai versi aplikasi Anda secara bersamaan. Ini juga berguna saat Anda membuat perubahan signifikan pada aplikasi Anda. Penghapusan sementara menyebabkan semua lalu lintas dialihkan ke server asal lain.
Di portal Azure, buka instans Azure Front Door Anda.
Di menu sebelah kiri, pilih Pengaturan>Grup asal.
Dalam daftar grup asal, pilih grup asal yang berisi slot yang ingin Anda hapus sementara.
Di panel Perbarui grup asal , temukan slot untuk dihapus di daftar Nama host asal .
Pilih Tindakan lainnya (...) >Hapus, lalu pilih Perbarui.
Dibutuhkan beberapa menit untuk menerapkan perubahan.
Saat Anda siap untuk mengizinkan lalu lintas ke slot yang dihapus, kembali ke panel Perbarui grup asal .
Di bagian atas, pilih + Tambahkan asal untuk membaca slot asal kembali ke grup asal.
Membuat grup asal tambahan dan mengubah asosiasi rute
Jika Anda lebih suka tidak menghapus dan membaca asal, Anda dapat membuat grup asal tambahan untuk instans Azure Front Door Anda. Anda kemudian dapat mengaitkan rute dengan kelompok asal yang mengarah ke sumber yang dimaksudkan.
Misalnya, Anda dapat membuat dua grup asal tambahan, satu untuk wilayah utama (aktif), dan satu untuk wilayah siaga (pasif) Anda. Jika wilayah utama Anda mengalami perubahan, kaitkan rute dengan wilayah siaga Anda. Jika wilayah siaga Anda mengalami perubahan, kaitkan rute dengan wilayah utama Anda. Setelah semua perubahan selesai, Anda dapat mengaitkan rute dengan grup asal asli Anda yang berisi kedua wilayah. Metode ini berfungsi karena rute hanya dapat dikaitkan dengan satu grup asal pada satu waktu.
Pertimbangkan konfigurasi dengan tiga grup asal:
- Grup
Main-Originberisi aplikasi web utama dan aplikasi siaga, masing-masing ditempatkan di wilayahnya sendiri. - Grup
Primary-Originhanya berisi aplikasi web utama di wilayah aktif. - Grup
Standby-Originhanya berisi aplikasi web siaga di wilayah pasif.
Misalkan aplikasi web utama mengalami perubahan. Sebelum perubahan dimulai, asosiasi rute untuk grup Main-Origin diubah menjadi grup Secondary-Origin. Tindakan ini memastikan semua rute lalu lintas ke aplikasi web siaga di wilayahnya masing-masing saat aplikasi web utama di wilayahnya masing-masing mengalami perubahan.
Ikuti langkah-langkah ini untuk mengubah asosiasi rute untuk grup asal:
Di portal Azure, buka instans Azure Front Door Anda.
Di menu sebelah kiri, pilih Pengaturan>Grup asal.
Dalam daftar grup asal, temukan grup asal yang memperlihatkan indikator Tidak Terkait di kolom Rute .
Pilih Tindakan lainnya (...) >Kaitkan titik akhir dan rute.
Di panel Kaitkan rute , pilih satu atau beberapa rute untuk dikaitkan dengan grup asal, lalu pilih Kaitkan.
Membatasi akses ke situs alat tingkat lanjut
Dengan layanan Azure App, situs ALAT SCM/tingkat lanjut digunakan untuk mengelola aplikasi Anda dan menyebarkan kode sumber aplikasi. Pertimbangkan untuk mengamankan situs SCM atau alat tingkat lanjut karena kemungkinan besar situs ini tidak perlu diakses melalui Front Door. Misalnya, Anda dapat menyiapkan pembatasan akses yang hanya memungkinkan Anda melakukan pengujian dan mengaktifkan penyebaran berkelanjutan dari alat pilihan Anda. Jika Anda menggunakan slot penyebaran, khusus untuk slot produksi, Anda dapat membatasi hampir semua akses ke situs SCM karena pengujian dan validasi dilakukan dengan slot penahapan.