Nodrošināt, ka jūsu Azure funkcijas lietotnei ir piekļuve PowerShell galerijai, ir saistītas ar vairākām darbībām, it īpaši, ja nodarbojas ar lieliem vai bieži atjauninātiem moduļiem. Lūk, kā jūs varat to pārvaldīt:
1. Iespējot pārvaldītas atkarības: Pēc noklusējuma Azure funkcijas var automātiski lejupielādēt un pārvaldīt PowerShell moduļus, kas norādīti failā “Prases.PSD1”. Tas ir ērti, bet var radīt problēmas, ja PowerShell galerija nav sasniedzama vai ja moduļi ir pārāk lieli, lai lejupielādētu taimauta periodā [3] [5].
2. Norādiet moduļus `prasībās.PSD1`: ja izvēlaties izmantot pārvaldītas atkarības, uzskaitiet nepieciešamos moduļus failā` prasības.psd1`. Piemēram, lai izmantotu AZ moduli, atvienojiet līniju `'az' = '13.*'Failā [9].
3. Iepriekš ielādējiet lielus moduļus: lieliem moduļiem vai lietojot patēriņa plānu, labāk ir tos iepriekš ielādēt jūsu funkcijas lietotnes krātuvē. Tas ietver moduļa lejupielādi lokāli, to saspiešanu un augšupielādi jūsu funkciju lietotnē [1] [3] [3].
4. Konfigurējiet `host.json`: pārliecinieties, ka“ pārvaldītā atkarība ”ir iestatīta uz` viltus` host.json`, ja manuāli augšupielādējat moduļus. Tas neļauj funkcijai lietotnei mēģināt automātiski lejupielādēt moduļus [1].
5. Atjaunināt `profils.PS1`: modificējiet failu“ Profils.PS1`, lai iekļautu pielāgoto moduļa ceļu `$ env: psModulepath`. Tas nodrošina, ka PowerShell nosaka manuāli augšupielādētos moduļus [1].
6. Pārbaudiet tīkla piekļuvi: pārliecinieties, vai jūsu funkcijas lietotnei ir piekļuve PowerShell galerijai, pārbaudot tās tīkla iestatījumus. Ja ierobežojat publisko piekļuvi, pārliecinieties, vai jūsu funkcijas lietotnes IP adrese var sasniegt galeriju [1].
Veicot šīs darbības, jūs varat pārliecināties, ka jūsu Azure funkcijas lietotnei ir uzticama piekļuve PowerShell galerijai, un tā var efektīvi pārvaldīt lielus vai kritiskus moduļus.
Atsauces:
[1] https://digitalmaterial.ch/blog/azure-function-app-with-large-powershell-modules/
[2] https://practical365.com/how-to-use-internal-powershell-gallery-app/
[3] https://support.cloudradial.com/hc/en-us/articles/23642455028884-installing-powershell-modules-in-azure-funkcijas
[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-sachable-powershell-worker-runtime/
[6] https://pnp.github.io/powershell/articles/azurefunctions.html
[7] https://techcommunity.microsoft.com/blog/appsonazureblog/steps-to-manuall-add-powershell-modules-in-function-app/4163463
[8] https://laurakokkaren.com/how-to-use-pnp-powershell-on-azure-functions-with-application-permissions/
[9] https://dev.to/rokicool/azure-function-app-flex-constict-powershell-modules-solution-1hfg