Memastikan aplikasi fungsi Azure Anda memiliki akses ke galeri PowerShell melibatkan beberapa langkah, terutama ketika berhadapan dengan modul besar atau sering diperbarui. Begini cara Anda mengelola ini:
1. Mengaktifkan dependensi yang dikelola: Secara default, fungsi Azure dapat secara otomatis mengunduh dan mengelola modul PowerShell yang ditentukan dalam file `persyaratan.psd1`. Ini nyaman tetapi dapat menyebabkan masalah jika Galeri PowerShell tidak dapat dijangkau atau jika modul terlalu besar untuk diunduh dalam periode batas waktu [3] [5].
2. Tentukan modul di `persyaratan.psd1`: Jika Anda memilih untuk menggunakan dependensi yang dikelola, daftar modul yang diperlukan dalam file` persyaratan.psd1`. Misalnya, untuk menggunakan modul AZ, Uncomment pada baris `'AZ' = '13.*'` Dalam file [9].
3. Preload Modul Besar: Untuk modul besar atau saat menggunakan rencana konsumsi, lebih baik untuk memuatnya ke dalam penyimpanan aplikasi fungsi Anda. Ini melibatkan mengunduh modul secara lokal, mengompresnya, dan mengunggahnya ke direktori `wwwroot \ modules` di aplikasi fungsi Anda [1] [3].
4. Konfigurasikan `host.json`: Pastikan` ManagedDependency` diatur ke `false` di` host.json` jika Anda mengunggah modul secara manual. Ini mencegah aplikasi fungsi dari mencoba mengunduh modul secara otomatis [1].
5. Perbarui `profile.ps1`: Ubah file` profile.ps1` untuk menyertakan jalur modul khusus di `$ env: psmodulepath`. Ini memastikan bahwa modul yang diunggah secara manual Anda terdeteksi oleh PowerShell [1].
6. Periksa Akses Jaringan: Pastikan aplikasi fungsi Anda memiliki akses ke Galeri PowerShell dengan memeriksa pengaturan jaringannya. Jika Anda membatasi akses publik, pastikan alamat IP aplikasi fungsi Anda dapat mencapai galeri [1].
Dengan mengikuti langkah -langkah ini, Anda dapat memastikan aplikasi fungsi Azure Anda memiliki akses yang andal ke Galeri PowerShell dan dapat mengelola modul besar atau kritis secara efektif.
Kutipan:
[1] https://digitalmaterial.ch/blog/azure-function-app-with-garge-powershell-modules/
[2] https://practical365.com/how-to-use-ternal-thowershell-gallery-app/
[3.
[4] https://learn.microsoft.com/en-us/azure/azure-functions/functions-app-settings
[5] https://about-powershell.com/blog/azure-functions-Fails-when-powershell-gallery-is-not-reachable-powershell-worker-runtime/
[6] https://pnp.github.io/powershell/articles/azurefunctions.html
[7] https://techCommunity.microsoft.com/blog/appsonazureblog/steps-to-anqualual-add-powershell-modules-in-function-app/4163463
[8] https://laurakokkarinen.com/how-to-use-pnp-powershell-on-azure-functions-with-application-permissions/
[9] https://dev.to/rokicool/azure-function-app-flex-consumption-powershell-modules-solution-1hfg