Sdílet prostřednictvím


Správa aplikace funkcí

V Azure Functions poskytuje aplikace funkcí kontext spuštění jednotlivých funkcí. Chování aplikace funkcí se vztahuje na všechny funkce hostované danou aplikací funkcí. Všechny funkce v aplikaci funkcí musí být ve stejném jazyce.

Jednotlivé funkce v aplikaci funkcí se nasazují společně a škálují se společně. Všechny funkce ve stejné aplikaci funkcí sdílejí prostředky na instanci, jak se aplikace funkcí škáluje.

Připojovací řetězce, proměnné prostředí a další nastavení aplikace se definují samostatně pro každou aplikaci funkcí. Všechna data, která musí být sdílená mezi aplikacemi funkcí, by se měla ukládat externě v trvalém úložišti.

Začínáme na webu Azure Portal

Poznámka:

Vzhledem k omezením úprav kódu funkce na webu Azure Portal byste měli vyvíjet funkce místně a publikovat projekt kódu do aplikace funkcí v Azure. Další informace najdete v tématu Omezení vývoje na webu Azure Portal.

Pokud chcete zobrazit nastavení aplikace v aplikaci funkcí, postupujte takto:

  1. Přihlaste se pomocí svého účtu Azure k webu Azure Portal. Vyhledejte aplikaci funkcí a vyberte ji.

  2. V levém podokně aplikace funkcí rozbalte Nastavení, vyberte Proměnné prostředí a pak vyberte kartu Nastavení aplikace.

    Snímek obrazovky znázorňuje, jak vybrat stránku nastavení aplikace v aplikaci funkcí.

Práce s nastavením aplikace

Kromě předdefinovaných nastavení aplikací používaných službou Azure Functions můžete vytvořit libovolný počet nastavení aplikace podle potřeby kódu funkce. Další informace najdete v referenčních informacích k nastavení aplikace pro Azure Functions.

Tato nastavení jsou uložena zašifrovaná. Další informace najdete v tématu Zabezpečení nastavení aplikace.

Nastavení aplikace můžete spravovat z webu Azure Portal a pomocí Azure CLI a Azure PowerShellu. Nastavení aplikace můžete spravovat také ze sady Visual Studio Code a ze sady Visual Studio.

Pokud chcete zobrazit nastavení aplikace, přečtěte si téma Začínáme na webu Azure Portal.

Karta Nastavení aplikace udržuje nastavení, která používá vaše aplikace funkcí:

  1. Pokud chcete zobrazit hodnoty nastavení aplikace, vyberte Zobrazit hodnoty.

  2. Pokud chcete přidat nastavení, vyberte + Přidat a zadejte název a hodnotu nového páru klíč-hodnota .

    Snímek obrazovky znázorňující stránku nastavení aplikace v aplikaci funkcí

Použití nastavení aplikace

Hodnoty nastavení aplikace funkcí je možné v kódu číst také jako proměnné prostředí. Další informace najdete v části Proměnné prostředí v těchto referenčních článcích specifických pro jazyk:

Při místním vývoji aplikace funkcí je nutné udržovat místní kopie těchto hodnot v souboru projektu local.settings.json . Další informace naleznete v tématu Místní soubor nastavení.

Nastavení nasazení FTPS

Azure Functions podporuje nasazení kódu projektu do aplikace funkcí pomocí FTPS. Vzhledem k tomu, že tato metoda nasazení vyžaduje synchronizaci triggerů, nedoporučuje se. K bezpečnému přenosu souborů projektu vždy používejte FTPS, nikoli FTP.

K získání přihlašovacích údajů požadovaných pro nasazení FTPS použijte jednu z těchto metod:

Přihlašovací údaje pro publikování FTPS můžete získat na webu Azure Portal stažením profilu publikování pro vaši aplikaci funkcí.

Důležité

Profil publikování obsahuje důležité přihlašovací údaje zabezpečení. Stažený soubor vždy zabezpečte na místním počítači.

Stažení profilu publikování aplikace funkcí:

  1. Vyberte stránku Přehled aplikace funkcí a pak vyberte Získat profil publikování.

    Stáhnout profil publikování

  2. Uložte a zkopírujte obsah souboru.

  1. V souboru vyhledejte publishProfile prvek s atributem publishMethod="FTP". V tomto elementu publishUrluserName, a userPWD atributy obsahují cílovou adresu URL a přihlašovací údaje pro publikování FTPS.

Typ plánu hostování

Když vytvoříte aplikaci funkcí, vytvoříte také plán hostování, ve kterém se aplikace spouští. Plán může mít jednu nebo více aplikací funkcí. Funkce, škálování a ceny vašich funkcí závisí na typu plánu. Další informace najdete v tématu Možnosti hostování služby Azure Functions.

Typ plánu, který vaše aplikace funkcí používá, můžete určit na webu Azure Portal nebo pomocí Rozhraní příkazového řádku Azure nebo rozhraní API Azure PowerShellu.

Následující hodnoty označují typ plánu:

Typ plánu portál Azure Azure CLI / PowerShell
Využití Využití Dynamic
Premium ElasticPremium ElasticPremium
Dedicated (App Service) Různé Různé
  1. Pokud chcete určit typ plánu používaného vaší aplikací funkcí, podívejte se na plán služby App Service na stránce Přehled aplikace funkcí na webu Azure Portal.

    Snímek obrazovky s odkazem Na plán služby App Service na stránce Přehled aplikace funkcí

  2. Pokud chcete zobrazit cenovou úroveň, vyberte název plánu služby App Service a pak v levém podokně vyberte Vlastnosti nastavení>.

Plánování migrace

Aplikaci funkcí můžete migrovat mezi plánem Consumption a plánem Premium ve Windows. Při migraci mezi plány mějte na paměti následující aspekty:

  • Přímá migrace do plánu Dedicated (App Service) se nepodporuje.
  • Migrace není v Linuxu podporovaná.
  • Zdrojový plán a cílový plán musí být ve stejné skupině prostředků a geografické oblasti. Další informace najdete v tématu Přesunutí aplikace do jiného plánu služby App Service.
  • Konkrétní příkazy rozhraní příkazového řádku závisí na směru migrace.
  • Při migraci aplikace funkcí mezi plány dochází k výpadkům při provádění funkcí.
  • Stav a další obsah specifický pro aplikaci se udržuje, protože stejnou sdílenou složku Azure používá aplikace před migrací i po migraci.

Svůj plán můžete migrovat pomocí těchto nástrojů:

K přechodu na jiný plán můžete použít Azure Portal .

Zvolte směr migrace aplikace ve Windows.

  1. Na webu Azure Portal přejděte do aplikace plánu Consumption a v části Plán služby App Service zvolte Změnit plán služby App Service.

  2. V části Typ plánu vyberte Premium, vytvořte nový plán Premium a vyberte OK.

Další informace najdete v tématu Přesunutí aplikace do jiného plánu služby App Service.

Získání přístupových klíčů funkce

Funkce aktivované protokolem HTTP lze obecně volat pomocí adresy URL ve formátu: https://<APP_NAME>.azurewebsites.net/api/<FUNCTION_NAME>. Při autorizaci funkce je nastavena jiná hodnota než anonymous, musíte také zadat přístupový klíč v požadavku. Přístupový klíč je možné zadat buď v adrese URL pomocí ?code= řetězce dotazu, nebo v hlavičce požadavku. Další informace najdete v tématu Přístupové klíče funkce. Přístupové klíče můžete získat několika způsoby.

  1. Přihlaste se k webu Azure Portal a vyhledejte a vyberte Function App.

  2. Vyberte funkci, kterou chcete ověřit.

  3. V levém podokně rozbalte funkce a pak vyberte Klíče aplikace.

    Zobrazí se stránka Klíče aplikace. Na této stránce se zobrazí klíče hostitele, které se dají použít pro přístup k libovolné funkci v aplikaci. Zobrazí se také systémový klíč, který každému správci dává přístup ke všem rozhraním API aplikací funkcí.

Minimální oprávnění můžete využít také pomocí klíče pro konkrétní funkci. Uděláte to tak, že v části Vývojář ve funkci aktivované protokolem HTTP vyberete funkční klávesy.

Omezení vývoje na webu Azure Portal

Při vývoji funkcí na webu Azure Portal zvažte tato omezení:

  • Úpravy na portálu se podporují jenom u funkcí vytvořených nebo naposledy upravených na webu Azure Portal.
  • Úpravy na portálu se podporují jenom pro funkce javascriptu, PowerShellu, Pythonu a skriptu jazyka C#.
  • Úpravy na portálu nejsou ve verzi Preview plánu Flex Consumption podporované.
  • Když nasadíte kód do aplikace funkcí mimo web Azure Portal, nebudete už moct upravovat žádný kód pro tuto aplikaci funkcí na portálu. V tomto případě pokračujte v používání místního vývoje.
  • Pro zkompilované funkce jazyka C# a funkce v Javě můžete vytvořit aplikaci funkcí a související prostředky na portálu. Projekt kódu funkcí ale musíte vytvořit místně a pak ho publikovat do Azure.

Pokud je to možné, vyvíjejte funkce místně a publikujte projekt kódu do aplikace funkcí v Azure. Další informace najdete v tématu Místní kód a otestování azure Functions.

Ruční instalace rozšíření

Funkce knihovny tříd jazyka C# mohou zahrnovat balíčky NuGet pro rozšíření vazeb přímo v projektu knihovny tříd. V případě jiných jazyků non-.NET a skriptů jazyka C# byste měli použít sady rozšíření. Pokud ručně instalujete rozšíření, můžete to provést pomocí nástrojů Azure Functions Core Tools místně. Pokud nemůžete použít sady rozšíření a můžete pracovat jenom na portálu, musíte k ručnímu vytvoření souboru extensions.csproj přímo na webu použít Rozšířené nástroje (Kudu ). Nejprve odeberte extensionBundle prvek ze souboru host.json .

Stejný postup funguje pro jakýkoli jiný soubor, který potřebujete přidat do aplikace.

Důležité

Pokud je to možné, neupravujte soubory přímo v aplikaci funkcí v Azure. Soubory aplikací doporučujeme stáhnout místně pomocí nástrojů Core Tools k instalaci rozšíření a dalších balíčků, ověření změn a následné opětovné publikování aplikace pomocí nástrojů Core Tools nebo jedné z dalších podporovaných metod nasazení.

Editor functions integrovaný na webu Azure Portal umožňuje aktualizovat kód funkce a konfigurační soubory přímo na portálu:

  1. Vyberte svou aplikaci funkcí a pak v části Funkce vyberte Funkce.

  2. Zvolte svoji funkci a v části Vývojář vyberte Kód + test.

  3. Zvolte soubor, který chcete upravit, a po dokončení vyberte Uložit .

Soubory v kořenovém adresáři aplikace, jako je function.proj nebo extensions.csproj, je potřeba vytvořit a upravit pomocí rozšířených nástrojů (Kudu):

  1. Vyberte svou aplikaci funkcí, rozbalte vývojové nástroje a pak vyberte Pokročilé nástroje>Go.

  2. Pokud se zobrazí výzva, přihlaste se k webu Správce správy zdrojového kódu (SCM) pomocí svých přihlašovacích údajů Azure.

  3. V nabídce konzoly Ladění zvolte CMD.

  4. Přejděte na .\site\wwwroottlačítko plus (+) v horní části a vyberte Nový soubor.

  5. Pojmenujte soubor, například extensions.csproj, a stiskněte Enter.

  6. Vyberte tlačítko upravit vedle nového souboru, přidejte nebo aktualizujte kód v souboru a pak vyberte Uložit.

  7. V případě souboru projektu, jako jsou extensions.csproj, spusťte následující příkaz a znovu sestavte projekt rozšíření:

    dotnet build extensions.csproj
    

Funkce platformy

Aplikace funkcí běží na platformě Aplikace Azure Service, která je udržuje. Aplikace funkcí tak mají přístup k většině funkcí základní platformy pro hostování webů Azure. Když používáte Azure Portal, v levém podokně se dostanete k mnoha funkcím platformy App Service, které můžete použít ve svých aplikacích funkcí.

Následující matice označuje podporu funkcí webu Azure Portal prostřednictvím plánu hostování a operačního systému:

Funkce Plán Consumption Plán Premium Plán Dedicated
Pokročilé nástroje (Kudu) Windows: ✔
Linux: X
Editor služby App Service Windows: ✔
Linux: X
Windows: ✔
Linux: X
Windows: ✔
Linux: X
Zálohování X X
Konzola Windows: příkazový řádek
Linux: X
Windows: příkazový řádek
Linux: SSH
Windows: příkazový řádek
Linux: SSH

Zbytek tohoto článku se zaměřuje na následující funkce na portálu, které jsou užitečné pro vaše aplikace funkcí:

Další informace o tom, jak pracovat s nastavením služby App Service, najdete v tématu Konfigurace nastavení služby Aplikace Azure Service.

Editor služby App Service

Editor služby App Service je pokročilý editor na portálu, který můžete použít k úpravě konfiguračních souborů JSON a souborů kódu stejně. Při výběru této možnosti se spustí samostatná karta prohlížeče se základním editorem. Tento editor umožňuje integraci s úložištěm Git, spuštěním a laděním kódu a úpravou nastavení aplikace funkcí. Tento editor poskytuje vylepšené vývojové prostředí pro vaše funkce v porovnání s integrovaným editorem funkcí.

Snímek obrazovky znázorňující editor služby App Service

Doporučujeme zvážit vývoj funkcí na místním počítači. Při vývoji místně a publikování do Azure jsou soubory projektu jen pro čtení na webu Azure Portal. Další informace najdete v tématu Místní kód a otestování azure Functions.

Konzola

Konzola na portálu je ideální vývojářský nástroj, když dáváte přednost interakci s aplikací funkcí z příkazového řádku. Mezi běžné příkazy patří vytváření adresářů a souborů a navigace a spouštění dávkových souborů a skriptů.

Snímek obrazovky znázorňující konzolu aplikace funkcí

Při místním vývoji doporučujeme používat nástroje Azure Functions Core Tools a Azure CLI.

Rozšířené nástroje (Kudu)

Pokročilé nástroje služby App Service (označované také jako Kudu) poskytují přístup k pokročilým funkcím správy vaší aplikace funkcí. V Kudu spravujete systémové informace, nastavení aplikace, proměnné prostředí, rozšíření webu, hlavičky HTTP a proměnné serveru. Kudu můžete spustit také tak, že přejdete do koncového bodu SCM pro vaši aplikaci funkcí, například: https://<myfunctionapp>.scm.azurewebsites.net/.

Snímek obrazovky znázorňující pokročilé nástroje pro App Service (Kudo)

Deployment Center

Když používáte řešení správy zdrojového kódu k vývoji a údržbě kódu funkcí, deployment Center umožňuje sestavovat a nasazovat ze správy zdrojového kódu. Projekt se sestaví a nasadí do Azure při provádění aktualizací. Další informace najdete v tématu Technologie nasazení ve službě Azure Functions.

Sdílení prostředků různého původu

Aby se zabránilo spuštění škodlivého kódu na klientovi, moderní prohlížeče blokují požadavky z webových aplikací na prostředky spuštěné v samostatné doméně. Sdílení prostředků mezi zdroji (CORS) umožňuje Access-Control-Allow-Origin deklarovat, které zdroje můžou volat koncové body ve vaší aplikaci funkcí.

Když nakonfigurujete seznam Povolený původ pro vaši aplikaci funkcí, Access-Control-Allow-Origin záhlaví se automaticky přidá do všech odpovědí z koncových bodů HTTP ve vaší aplikaci funkcí.

Snímek obrazovky, který ukazuje, jak nakonfigurovat seznam CORS vaší aplikace funkcí

Pokud existuje jiná položka domény, zástupný znak (*) se ignoruje.

Ověřování

Pokud funkce používají trigger HTTP, můžete vyžadovat, aby se nejprve ověřila volání. App Service podporuje ověřování Microsoft Entra a přihlašování s poskytovateli sociálních sítí, jako jsou Facebook, Microsoft a Twitter. Informace o konfiguraci konkrétních zprostředkovatelů ověřování najdete v tématu Aplikace Azure Přehled ověřování služby.

Snímek obrazovky, který ukazuje, jak nakonfigurovat ověřování pro aplikaci funkcí