Mengelola aplikasi fungsi Anda
Di Azure Functions, aplikasi fungsi menyediakan konteks eksekusi untuk fungsi individual Anda. Perilaku aplikasi fungsi berlaku untuk semua fungsi yang dihosting oleh aplikasi fungsi tertentu. Semua fungsi dalam aplikasi fungsi harus menggunakan bahasa yang sama.
Fungsi individual dalam aplikasi fungsi disebarkan bersama-sama dan diskalakan bersama-sama. Semua fungsi dalam aplikasi fungsi yang sama berbagi sumber daya, per instans, saat aplikasi fungsi diskalakan.
String koneksi, variabel lingkungan, dan pengaturan aplikasi lainnya didefinisikan secara terpisah untuk setiap aplikasi fungsi. Data apa pun yang harus dibagikan di antara aplikasi fungsi harus disimpan secara eksternal di penyimpanan persisten.
Memulai di portal Azure
Catatan
Karena keterbatasan mengedit kode fungsi di portal Azure, Anda harus mengembangkan fungsi Anda secara lokal dan menerbitkan proyek kode Anda ke aplikasi fungsi di Azure. Untuk informasi selengkapnya, lihat Batasan pengembangan di portal Azure
Untuk melihat pengaturan aplikasi di aplikasi fungsi Anda, ikuti langkah-langkah berikut:
Masuk ke portal Microsoft Azure menggunakan akun Azure Anda. Cari aplikasi fungsi Anda dan pilih aplikasi tersebut.
Di panel kiri aplikasi fungsi Anda, perluas Pengaturan, pilih Variabel lingkungan, lalu pilih tab Pengaturan aplikasi.
Bekerja dengan pengaturan aplikasi
Selain pengaturan aplikasi yang telah ditentukan sebelumnya yang digunakan oleh Azure Functions, Anda dapat membuat sejumlah pengaturan aplikasi, seperti yang diperlukan oleh kode fungsi Anda. Untuk informasi selengkapnya, lihat Referensi pengaturan aplikasi untuk Azure Functions.
Pengaturan ini disimpan terenkripsi. Untuk informasi selengkapnya, lihat Keamanan pengaturan aplikasi.
Anda dapat mengelola pengaturan aplikasi dari portal Azure, dan dengan menggunakan Azure CLI dan Azure PowerShell. Anda juga dapat mengelola pengaturan aplikasi dari Visual Studio Code dan dari Visual Studio.
Untuk melihat pengaturan aplikasi Anda, lihat Mulai di portal Azure.
Tab Pengaturan aplikasi mempertahankan pengaturan yang digunakan oleh aplikasi fungsi Anda:
Menggunakan Pengaturan Aplikasi
Nilai pengaturan aplikasi fungsi juga dapat dibaca dalam kode Anda sebagai variabel lingkungan. Untuk informasi selengkapnya, lihat bagian Variabel lingkungan dari artikel referensi khusus bahasa ini:
Saat mengembangkan aplikasi fungsi secara lokal, Anda harus mempertahankan salinan lokal nilai-nilai ini dalam file proyek local.settings.json . Untuk informasi selengkapnya, lihat File pengaturan lokal.
Pengaturan penyebaran FTPS
Azure Functions mendukung penyebaran kode proyek ke aplikasi fungsi Anda dengan menggunakan FTPS. Karena metode penyebaran ini mengharuskan Anda menyinkronkan pemicu, tidak disarankan. Untuk mentransfer file proyek dengan aman, selalu gunakan FTPS dan bukan FTP.
Untuk mendapatkan kredensial yang diperlukan untuk penyebaran FTPS, gunakan salah satu metode berikut:
Anda bisa mendapatkan kredensial penerbitan FTPS di portal Azure dengan mengunduh profil penerbitan untuk aplikasi fungsi Anda.
Penting
Profil penerbitan berisi kredensial keamanan penting. Selalu amankan file yang diunduh di komputer lokal Anda.
Cara mengunduh profil penerbitan dari aplikasi fungsi Anda:
Di portal Azure, temukan halaman untuk aplikasi fungsi Anda, perluas Konfigurasi Pengaturan>di kolom kiri.
Di halaman Konfigurasi, pilih tab Pengaturan umum dan pastikan bahwa Kredensial Penerbitan Autentikasi Dasar SCM diaktifkan. Saat pengaturan ini Nonaktif, Anda tidak dapat menggunakan profil penerbitan, jadi pilih Aktif lalu Simpan.
Kembali ke halaman Gambaran Umum aplikasi fungsi, lalu pilih Dapatkan profil publikasi.
Pilih dan salin konten file.
- Dalam file, temukan
publishProfile
elemen dengan atributpublishMethod="FTP"
. Dalam elemen ini,publishUrl
atribut ,userName
, danuserPWD
berisi URL target dan kredensial untuk penerbitan FTPS.
Jenis paket Hosting
Saat membuat aplikasi fungsi, Anda juga membuat paket hosting tempat aplikasi berjalan. Paket dapat memiliki satu atau beberapa aplikasi fungsi. Fungsionalitas, penskalaan, dan harga fungsi Anda tergantung pada jenis paket. Untuk informasi selengkapnya, lihat opsi hosting Azure Functions.
Anda dapat menentukan jenis paket yang digunakan oleh aplikasi fungsi Anda dari portal Microsoft Azure, atau dengan menggunakan Azure CLI atau Azure PowerShell API.
Nilai berikut menunjukkan jenis paket:
Jenis paket | Portal Azure | Azure CLI/PowerShell |
---|---|---|
Consumption | Consumption | Dynamic |
Premium | ElasticPremium | ElasticPremium |
Khusus (App Service) | Bermacam-macam | Bermacam-macam |
Untuk menentukan jenis paket yang digunakan oleh aplikasi fungsi Anda, lihat Paket App Service di halaman Gambaran Umum aplikasi fungsi di portal Azure.
Untuk melihat tingkat harga, pilih nama Paket App Service, lalu pilih Properti Pengaturan > dari panel kiri.
Merencanakan migrasi
Anda dapat memigrasikan aplikasi fungsi antara paket Konsumsi dan paket Premium di Windows. Saat bermigrasi antar paket, perlu diingat pertimbangan berikut:
- Migrasi langsung ke paket Khusus (App Service) tidak didukung.
- Migrasi tidak didukung di Linux.
- Rencana sumber dan rencana target harus berada di grup sumber daya dan wilayah geografis yang sama. Untuk informasi selengkapnya, lihat Memindahkan aplikasi ke paket App Service lainnya.
- Perintah CLI tertentu bergantung pada arah migrasi.
- Waktu henti dalam eksekusi fungsi Anda terjadi saat aplikasi fungsi dimigrasikan antar paket.
- Status dan konten khusus aplikasi lainnya dipertahankan, karena berbagi Azure Files yang sama digunakan oleh aplikasi baik sebelum dan sesudah migrasi.
Anda dapat memigrasikan paket menggunakan alat-alat ini:
Anda dapat menggunakan portal Azure untuk beralih ke paket lain.
Pilih arah migrasi untuk aplikasi Anda di Windows.
Batasan pengembangan dalam portal Azure
Pertimbangkan batasan ini saat Anda mengembangkan fungsi Anda di portal Azure:
- Pengeditan dalam portal hanya didukung untuk fungsi yang dibuat atau terakhir dimodifikasi dalam portal Azure.
- Pengeditan dalam portal hanya didukung untuk fungsi JavaScript, PowerShell, Python, dan C# Script.
- Pengeditan dalam portal tidak didukung dalam rilis pratinjau paket Konsumsi Flex.
- Saat menyebarkan kode ke aplikasi fungsi dari luar portal Azure, Anda tidak dapat lagi mengedit kode apa pun untuk aplikasi fungsi tersebut di portal. Dalam hal ini, lanjutkan menggunakan pengembangan lokal.
- Untuk Python, pengembangan dengan modul kustom saat ini tidak didukung di portal. Untuk menambahkan modul kustom ke aplikasi fungsi, Anda harus mengembangkan aplikasi secara lokal.
- Untuk fungsi C# yang dikompilasi dan fungsi Java, Anda dapat membuat aplikasi fungsi dan sumber daya terkait di portal. Namun, Anda harus membuat proyek kode fungsi secara lokal lalu menerbitkannya ke Azure.
Jika memungkinkan, kembangkan fungsi Anda secara lokal dan terbitkan proyek kode Anda ke aplikasi fungsi di Azure. Untuk informasi selengkapnya, lihat Membuat kode dan menguji Azure Functions secara lokal.
Menginstal ekstensi secara manual
Fungsi pustaka kelas C# dapat mencakup paket NuGet untuk mengikat ekstensi secara langsung di proyek pustaka kelas. Untuk bahasa non-.NET lain dan skrip C#, Anda harus menggunakan bundel ekstensi. Jika Anda harus menginstal ekstensi secara manual, Anda dapat melakukannya dengan menggunakan Azure Functions Core Tools secara lokal. Jika Anda tidak dapat menggunakan bundel ekstensi dan hanya dapat bekerja di portal, Anda perlu menggunakan Advanced Tools (Kudu) untuk membuat file extensions.csproj secara manual langsung di situs. Pastikan untuk terlebih dahulu menghapus extensionBundle
elemen dari file host.json .
Proses yang sama ini berfungsi untuk file lain yang perlu Anda tambahkan ke aplikasi Anda.
Penting
Jika memungkinkan, jangan mengedit file secara langsung di aplikasi fungsi Anda di Azure. Sebaiknya unduh file aplikasi Anda secara lokal, menggunakan Core Tools untuk menginstal ekstensi dan paket lainnya, memvalidasi perubahan Anda, lalu menerbitkan ulang aplikasi Anda menggunakan Core Tools atau salah satu metode penyebaran lain yang didukung.
Editor Functions yang disertakan dalam portal Azure memungkinkan Anda memperbarui kode fungsi dan file konfigurasi langsung di portal:
Pilih aplikasi fungsi Anda, lalu di bawah Fungsi, pilih Fungsi.
Pilih fungsi Anda dan pilih Kode + uji di bawah Pengembang.
Pilih file Anda untuk diedit dan pilih Simpan saat Anda selesai.
File di akar aplikasi, seperti function.proj atau extensions.csproj perlu dibuat dan diedit dengan menggunakan Advanced Tools (Kudu):
Pilih aplikasi fungsi Anda, perluas alat Pengembangan, lalu pilih Alat>tingkat lanjut Buka.
Jika diminta, masuk ke situs Source Control Manager (SCM) dengan kredensial Azure Anda.
Dari menu Konsol debug, pilih CMD.
Navigasi ke
.\site\wwwroot
, pilih tombol plus (+) di bagian atas, dan pilih File baru.Beri nama file, seperti
extensions.csproj
, lalu tekan Enter.Pilih tombol edit di samping file baru, tambahkan atau perbarui kode dalam file, lalu pilih Simpan.
Untuk file proyek seperti extensions.csproj, jalankan perintah berikut untuk membangun kembali proyek ekstensi:
dotnet build extensions.csproj
Fitur platform
Aplikasi fungsi berjalan di platform Azure App Service, yang mempertahankannya. Dengan demikian, aplikasi fungsi Anda memiliki akses ke sebagian besar fitur platform hosting web inti Azure. Saat Anda menggunakan portal Azure, panel kiri adalah tempat Anda mengakses banyak fitur platform App Service yang dapat Anda gunakan di aplikasi fungsi Anda.
Matriks berikut menunjukkan dukungan fitur portal Azure oleh paket hosting dan sistem operasi:
Fitur | Paket Konsumsi | Paket Konsumsi Flex | Paket premium | Paket khusus |
---|---|---|---|---|
Alat canggih (Kudu) | Windows: ✔ Linux: X |
X | ✔ | ✔ |
Editor App Service | Windows: ✔ Linux: X |
X | Windows: ✔ Linux: X |
Windows: ✔ Linux: X |
Pencadangan | X | X | X | ✔ |
Konsol | Windows: baris perintah Linux: X |
X | Windows: baris perintah Linux: SSH |
Windows: baris perintah Linux: SSH |
Isi selanjutnya dari artikel ini berfokus pada fitur App Service berikut di portal yang berguna untuk aplikasi fungsi:
Untuk informasi selengkapnya tentang cara bekerja dengan pengaturan App Service, lihat Mengonfigurasi Pengaturan Azure App Service.
Editor App Service
Editor App Service adalah editor di portal tingkat lanjut yang dapat Anda gunakan untuk memodifikasi file konfigurasi JSON dan file kode. Memilih opsi ini meluncurkan tab browser terpisah dengan editor dasar. Editor ini memungkinkan Anda untuk berintegrasi dengan repositori Git, menjalankan dan men-debug kode, dan memodifikasi pengaturan aplikasi fungsi. Editor ini menyediakan lingkungan pengembangan yang lebih canggih untuk fungsi Anda dibandingkan dengan editor fungsi bawaan.
Kami menyarankan agar Anda mempertimbangkan untuk mengembangkan fungsi Anda di komputer lokal Anda. Saat Anda mengembangkan secara lokal dan menerbitkan ke Azure, file proyek Anda bersifat baca-saja di portal Azure. Untuk informasi selengkapnya, lihat Membuat kode dan menguji Azure Functions secara lokal.
Konsol
Konsol dalam portal adalah alat pengembang yang ideal ketika Anda lebih suka berinteraksi dengan aplikasi fungsi Anda dari baris perintah. Perintah umum termasuk direktori dan pembuatan file dan navigasi, serta mengeksekusi file batch dan skrip.
Saat mengembangkan secara lokal, sebaiknya Anda gunakan Azure Functions Core Tools dan Azure CLI.
Alat canggih (Kudu)
Alat canggih untuk App Service (juga dikenal sebagai Kudu) menyediakan akses ke fitur administratif canggih dari aplikasi fungsi Anda. Dari Kudu, Anda mengelola informasi sistem, pengaturan aplikasi, variabel lingkungan, ekstensi situs, header HTTP, dan variabel server. Anda juga dapat meluncurkan Kudu dengan menelusuri titik akhir SCM untuk aplikasi fungsi Anda, misalnya: https://<myfunctionapp>.scm.azurewebsites.net/
.
Pusat Penyebaran
Saat Anda menggunakan solusi kontrol sumber untuk mengembangkan dan memelihara kode fungsi, Pusat Penyebaran memungkinkan Anda membangun dan menyebarkan dari kontrol sumber. Proyek Anda dibangun dan disebarkan ke Azure saat Anda melakukan pembaruan. Untuk informasi selengkapnya, lihat Teknologi penyebaran di Azure Functions.
Berbagi sumber daya lintas asal
Untuk mencegah eksekusi kode berbahaya pada klien, browser modern memblokir permintaan dari aplikasi web ke sumber daya yang berjalan di domain terpisah. Berbagi sumber daya lintas asal (CORS) memungkinkan header Access-Control-Allow-Origin
mendeklarasikan asal mana yang diizinkan untuk memanggil titik akhir pada aplikasi fungsi Anda.
Saat Anda mengonfigurasi daftar Asal yang diperbolehkan untuk aplikasi fungsi Anda, header Access-Control-Allow-Origin
secara otomatis ditambahkan ke semua respons dari titik akhir HTTP di aplikasi fungsi Anda.
Jika ada entri domain lain, kartubebas (*) diabaikan.
Autentikasi
Ketika fungsi menggunakan pemicu HTTP, Anda dapat meminta panggilan untuk diautentikasi terlebih dahulu. App Service mendukung autentikasi dan masuk Microsoft Entra dengan penyedia sosial, seperti Facebook, Microsoft, dan X. Untuk informasi tentang mengonfigurasi penyedia autentikasi tertentu, lihat Gambaran umum autentikasi Azure App Service.