Membuat dan menggunakan Lingkungan App Service Internal Load Balancer

Catatan

Artikel ini berisi tentang App Service Environment v2 yang digunakan dengan paket Layanan Aplikasi Terisolasi

Lingkungan Azure App Service adalah penyebaran Azure App Service ke dalam subnet di Azure Virtual Network (VNet). Ada dua cara untuk menyebarkan Lingkungan App Service (ASE):

  • Dengan VIP di alamat IP eksternal, yang sering disebut ASE Eksternal.
  • Dengan VIP pada alamat IP internal, yang sering disebut ILB ASE karena titik akhir internalnya adalah penyeimbang muatan internal (ILB).

Artikel ini menunjukkan cara membuat ILB ASE. Untuk gambaran umum tentang ASE, lihat Pengantar Lingkungan App Service. Untuk mempelajari cara membuat ASE Eksternal, lihat Membuat ASE Eksternal.

Gambaran Umum

Anda dapat menyebarkan ASE dengan titik akhir yang dapat diakses internet atau dengan alamat IP di VNet Anda. Untuk menyetel alamat IP ke alamat VNet, ASE harus digunakan dengan ILB. Ketika Anda menyebarkan ASE Anda dengan ILB, Anda harus memberikan nama ASE Anda. Nama ASE Anda digunakan dalam akhiran domain untuk aplikasi di ASE Anda. Akhiran domain untuk ILB ASE Anda adalah <nama ASE>.appserviceenvironment.net. Aplikasi yang dibuat di ILB ASE tidak dimasukkan ke dalam DNS publik.

Versi ILB ASE yang lebih lama mengharuskan Anda memberikan akhiran domain dan sertifikat default untuk koneksi HTTPS. Akhiran domain tidak lagi dikumpulkan di pembuatan ILB ASE dan sertifikat default juga tidak lagi dikumpulkan. Saat Anda membuat ILB ASE sekarang, sertifikat default disediakan oleh Microsoft dan dipercaya oleh browser. Anda masih dapat mengatur nama domain kustom pada aplikasi di ASE Anda dan menetapkan sertifikat pada nama domain kustom tersebut.

Dengan ILB ASE, Anda dapat melakukan hal-hal seperti:

  • Menghosting aplikasi intranet dengan aman di cloud, yang Anda akses melalui situs ke situs atau ExpressRoute.
  • Melindungi aplikasi dengan perangkat WAF
  • Menghosting aplikasi di cloud yang tidak tercantum di server DNS publik.
  • Membuat aplikasi ujung-belakang yang terisolasi internet, yang dapat diintegrasikan dengan aman oleh aplikasi ujung-depan Anda.

Fungsionalitas yang dinonaktifkan

Ada beberapa hal yang tidak dapat Anda lakukan ketika Anda menggunakan ILB ASE:

  • Gunakan pengikatan TLS/SSL berbasis IP.
  • Menetapkan alamat IP ke aplikasi tertentu.
  • Membeli dan menggunakan sertifikat dengan aplikasi melalui portal Microsoft Azure. Anda dapat memperoleh sertifikat langsung dari otoritas sertifikat dan menggunakannya dengan aplikasi Anda. Anda tidak dapat memperolehnya melalui portal Microsoft Azure.

Membuat ILB ASE

Untuk membuat ILB ASE:

  1. Di portal Microsoft Azure, pilih Buat sumber daya > Web > Lingkungan App Service.

  2. Pilih langganan Anda.

  3. Pilih atau buat grup sumber daya.

  4. Masukkan nama Lingkungan App Service Anda.

  5. Pilih jenis IP virtual Internal.

    Pembuatan ASE

Catatan

Nama Lingkungan App Service tidak boleh lebih dari 37 karakter.

  1. Pilih Jaringan

  2. Pilih atau buat Virtual Network. Jika Anda membuat VNet baru di sini, VNet akan ditentukan dengan rentang alamat 192.168.250.0/23. Untuk membuat VNet dengan rentang alamat yang berbeda atau di grup sumber daya yang berbeda dari ASE, gunakan portal pembuatan Azure Virtual Network.

  3. Pilih atau buat subnet kosong. Jika Anda ingin memilih subnet, subnet harus kosong dan tidak didelegasikan. Ukuran subnet tidak bisa diubah setelah ASE dibuat. Sebaiknya gunakan ukuran /24, yang memiliki 256 alamat dan dapat menangani ASE berukuran maksimum dan kebutuhan penskalaan apa pun.

    Jaringan ASE

  4. Pilih Tinjau dan Buat, lalu pilih Buat.

Membuat aplikasi di ILB ASE

Anda membuat aplikasi di ILB ASE dengan cara yang sama seperti Anda membuat aplikasi di ASE secara normal.

  1. Di portal Microsoft Azure, pilih Buat sumber daya > Web > Aplikasi Web.

  2. Masukkan nama aplikasi.

  3. Pilih langganan.

  4. Pilih atau buat grup sumber daya.

  5. Pilih Terbitkan, Tumpukan Runtime, dan Sistem Operasi Anda.

  6. Pilih lokasi tempat di mana lokasi adalah ILB ASE yang ada. Anda juga dapat membuat ASE baru selama pembuatan aplikasi dengan memilih paket App Service Terisolasi. Jika Anda ingin membuat ASE baru, pilih wilayah tempat Anda ingin membuat ASE.

  7. Pilih atau buat paket App Service.

  8. Pilih Tinjau dan Buat lalu pilih Buat saat Anda siap.

Pekerjaan web, Fungsi, dan ILB ASE

Baik Fungsi dan pekerjaan web didukung pada ILB ASE. Namun, agar portal dapat berfungsi dengan keduanya, Anda harus memiliki akses jaringan ke situs SCM. Ini berarti browser Anda harus berada di host yang berada di atau tersambung ke jaringan virtual. Jika ILB ASE memiliki nama domain yang tidak berakhir dengan appserviceenvironment.net, Anda harus membuat browser memercayai sertifikat HTTPS yang digunakan oleh situs scm Anda.

Konfigurasi DNS

Saat Anda menggunakan ASE Eksternal, aplikasi yang dibuat di ASE Anda akan terdaftar di Azure DNS. Tidak ada langkah tambahan di ASE Eksternal agar aplikasi Anda tersedia untuk publik. Dengan ILB ASE, Anda harus mengelola DNS Anda sendiri. Anda dapat melakukannya dengan server DNS Anda sendiri atau dengan zona privat Azure DNS.

Untuk mengonfigurasi DNS di server DNS Anda sendiri dengan ILB ASE Anda:

  1. buat zona untuk <nama ASE>.appserviceenvironment.net
  2. buat rekaman A di zona yang mengarahkan * ke alamat IP ILB
  3. buat rekaman A di zona yang mengarahkan @ ke alamat IP ILB
  4. buat zona di scm bernama <nama ASE>.appserviceenvironment.net
  5. membuat rekaman A di zona scm yang mengarahkan * ke alamat IP ILB

Untuk mengonfigurasi DNS di zona Privat Azure DNS:

  1. buat zona privat Azure DNS bernama <nama ASE>.appserviceenvironment.net
  2. buat rekaman A di zona yang mengarahkan * ke alamat IP ILB
  3. buat rekaman A di zona yang mengarahkan @ ke alamat IP ILB
  4. buat rekaman A di zona yang mengarahkan *.scm ke alamat IP ILB

Pengaturan DNS untuk akhiran domain default ASE Anda tidak membatasi aplikasi untuk dapat diakses hanya dari nama tersebut. Anda dapat mengatur nama domain kustom tanpa validasi apa pun pada aplikasi Anda di ILB ASE. Jika Anda kemudian ingin membuat zona bernama contoso.net, Anda bisa melakukannya dan mengarahkannya ke alamat IP ILB. Nama domain kustom berfungsi untuk permintaan aplikasi tetapi tidak untuk situs scm. Situs scm hanya tersedia di <appname>.scm.<asename>.appserviceenvironment.net.

Zona bernama .<asename>.appserviceenvironment.net secara global unik. Sebelum Mei 2019, pelanggan dapat menentukan akhiran domain dari ILB ASE. Jika Anda ingin menggunakan .contoso.com untuk akhiran domain, Anda dapat melakukannya dan itu akan menyertakan situs scm. Ada tantangan dengan model tersebut, termasuk; mengelola sertifikat TLS/SSL default, kurangnya akses menyeluruh dengan situs scm, dan persyaratan untuk menggunakan sertifikat kartubebas. Proses peningkatan sertifikat default ILB ASE juga dapat mengganggu dan menyebabkan aplikasi dihidupkan ulang. Untuk mengatasi masalah ini, perilaku ILB ASE diubah untuk menggunakan akhiran domain berdasarkan nama ASE dan dengan akhiran milik Microsoft. Perubahan perilaku ILB ASE hanya memengaruhi ILB ASE yang dibuat setelah Mei 2019. ILB ASE yang sudah ada sebelumnya masih harus mengelola sertifikat default ASE dan konfigurasi DNS-nya.

Menerbitkan dengan ILB ASE

Untuk setiap aplikasi yang dibuat, ada dua titik akhir. Dalam ILB ASE, Anda memiliki <nama aplikasi>.<Domain ILB ASE> dan <nama aplikasi>.scm.<Domain ILB ASE> .

Nama situs SCM membawa Anda ke konsol Kudu, yang disebut portal Tingkat Lanjut, dalam portal Microsoft Azure. Dengan konsol Kudu, Anda dapat melihat variabel lingkungan, menjelajahi disk, menggunakan konsol, dan banyak lagi. Untuk mengetahui informasi selengkapnya, lihat konsol Kudu untuk Azure App Service.

Sistem CI berbasis internet, seperti GitHub dan Azure DevOps, masih akan berfungsi dengan ILB ASE jika agen build dapat diakses internet dan berada di jaringan yang sama dengan ILB ASE. Jadi dalam kasus Azure DevOps, jika agen build dibuat pada VNET yang sama dengan ILB ASE (boleh subnet yang berbeda), kode akan dapat ditarik dari Azure DevOps git dan disebarkan ke ILB ASE. Jika Anda tidak ingin membuat build agent Anda sendiri, Anda perlu menggunakan sistem CI yang menggunakan model penarikan, seperti Dropbox.

Titik akhir penerbitan untuk aplikasi di ILB ASE menggunakan domain tempat ILB ASE dibuat. Domain ini muncul di profil penerbitan aplikasi dan di bilah portal aplikasi (Gambaran Umum > Penting dan juga Properti). Jika Anda memiliki ILB ASE dengan akhiran domain <nama ASE>.appserviceenvironment.net, dan aplikasi bernama mytest, gunakan mytest.<nama ASE>.appserviceenvironment.net untuk FTP dan mytest.scm.contoso.net untuk penyebaran MSDeploy.

Mengonfigurasi ILB ASE dengan perangkat WAF

Anda dapat menggabungkan perangkat firewall aplikasi web (WAF) dengan ILB ASE Anda untuk hanya mengekspos aplikasi yang Anda inginkan ke internet dan menjaga sisanya hanya dapat diakses dari di VNet. Hal ini memungkinkan Anda membangun aplikasi multi-tingkat yang aman.

Untuk mempelajari lebih lanjut cara mengonfigurasi ILB ASE Anda dengan perangkat WAF, lihat Mengonfigurasi firewall aplikasi web dengan lingkungan App Service Anda. Artikel ini menunjukkan cara menggunakan appliance virtual Barracuda dengan ASE Anda. Opsi lainnya adalah dengan menggunakan Azure Application Gateway. Application Gateway menggunakan aturan inti OWASP untuk mengamankan aplikasi apa pun yang ditempatkan di belakangnya. Untuk mengetahui informasi selengkapnya tentang Application Gateway, lihat Pengantar firewall aplikasi web Azure.

ILB ASE dibuat sebelum Mei 2019

ILB ASE yang dibuat sebelum Mei 2019 mengharuskan Anda untuk mengatur akhiran domain selama pembuatan ASE. ILB ASE juga mengharuskan Anda untuk mengunggah sertifikat default yang didasarkan pada akhiran domain tersebut. Selain itu, dengan ILB ASE yang lebih lama, Anda tidak dapat melakukan akses menyeluruh ke konsol Kudu dengan aplikasi di ILB ASE tersebut. Saat mengonfigurasi DNS untuk ILB ASE yang lebih lama, Anda perlu mengatur rekaman A kartubebas di zona yang cocok dengan akhiran domain Anda.

Mulai