Azure Functions – folyamatos üzembe helyezés

Az Azure Functions használatával folyamatosan üzembe helyezheti a kódot a forráskövetési integrációval. A forrásvezérlési integráció lehetővé teszi a munkafolyamatot, amelyben egy kódfrissítés aktiválja a buildelést, a csomagolást és az üzembe helyezést a projektből az Azure-ba.

A folyamatos üzembe helyezés jó választás olyan projektekhez, ahol több és gyakori közreműködést is integrálhat. Ha folyamatos üzembe helyezést használ, egyetlen igazságforrást tart fenn a kódhoz, amely lehetővé teszi a csapatok számára a könnyű együttműködést.

A cikk lépései bemutatják, hogyan konfigurálhat folyamatos kódtelepítéseket az Azure-beli függvényalkalmazásban az Azure Portal Üzembe helyezési központjának használatával. A folyamatos integrációt az Azure CLI használatával is konfigurálhatja.

A Functions ezeket a forrásokat támogatja az alkalmazás folyamatos üzembe helyezéséhez:

A projektkód karbantartása az Azure Reposban, az Azure DevOps egyik szolgáltatásában. A Git és a Team Foundation verziókövetését is támogatja. Az Azure Pipelines buildszolgáltatónál használatos). További információ: Mi az Azure-adattár?

A függvényalkalmazást külső Git-adattárhoz is csatlakoztathatja, de ehhez manuális szinkronizálásra van szükség. Az üzembe helyezési lehetőségekről további információt az Azure Functions üzembehelyezési technológiáiban talál.

Feljegyzés

A cikkben tárgyalt folyamatos üzembe helyezési lehetőségek kizárólag kódalapú üzemelő példányokra vonatkoznak. A tárolóalapú függvényalkalmazások üzembe helyezéséről lásd: Tárolók folyamatos üzembe helyezésének engedélyezése az Azure-ban.

Követelmények

A folyamatos üzembe helyezés sikerességéhez a címtárstruktúrának kompatibilisnek kell lennie az Azure Functions által elvárt alapszintű mappastruktúrával.

Egy adott függvényalkalmazás összes függvényének kódja egy gazdagépkonfigurációs fájlt tartalmazó gyökérprojekt-mappában található. A host.json fájl futásidejű konfigurációkat tartalmaz, és a függvényalkalmazás gyökérmappájában található. A bin mappa a függvényalkalmazás által igényelt csomagokat és egyéb kódtárfájlokat tartalmazza. A függvényalkalmazás által megkövetelt mappastruktúrák a nyelvtől függnek:

A függvényalkalmazás minden függvényének ugyanazt a nyelvi vermet kell tartalmaznia.

Szolgáltatók létrehozása

A kódprojekt létrehozása az üzembe helyezési folyamat része. Az adott összeállítási folyamat az adott nyelvi veremtől, operációs rendszertől és üzemeltetési tervtől függ. A buildek helyileg vagy távolról is elvégezhetők, az adott üzemeltetéstől függően. További információ: Távoli build.

A Functions az alábbi buildszolgáltatókat támogatja:

Az Azure Pipelines az Azure DevOps egyik szolgáltatása, és az Azure Repos-projektek alapértelmezett buildszolgáltatója. A Pipelines használatával projekteket is készíthet a GitHubról. A Pipelinesban van egy AzureFunctionApp feladat, amelyet kifejezetten az Azure Functionsben való üzembe helyezéshez terveztek. Ezzel a feladattal szabályozhatja a projekt felépítését, csomagolását és üzembe helyezését.

A buildszolgáltatók közül melyiket használhatja, az adott kódterjesztési forrástól függ.

Üzembehelyezési központ

Az Azure Portal egy üzembehelyezési központot biztosít a függvényalkalmazások számára, amely megkönnyíti a folyamatos üzembe helyezés konfigurálását. A folyamatos üzembe helyezés konfigurálásának módja attól függ, hogy melyik forrásvezérlőben található a kód, és hogy melyik buildszolgáltatót választja.

Az Azure Portalon keresse meg a függvényalkalmazás lapját, és válassza az Üzembe helyezési központ lehetőséget a bal oldali panelEn az Üzembe helyezés csoportban.

Képernyőkép a Függvényalkalmazás üzembe helyezési központjáról az Azure Portalon, ahol kiválasztja a forrásadattárat.

Válassza ki azt a forrásadattártípust , amelynél a projektkód karbantartása folyamatban van a támogatott lehetőségek közül:

Az Azure Pipelinest használó Azure-adattárak üzembe helyezései az Azure DevOps portálon vannak definiálva, és nem a függvényalkalmazásból. A pipelines-alapú üzembe helyezés Azure-adattárakból való létrehozásának részletes útmutatója: Folyamatos teljesítés az Azure Pipelines szolgáltatással.

Az üzembe helyezés befejezése után a megadott forrásból származó összes kód üzembe lesz helyezve az alkalmazásban. Ezen a ponton az üzembehelyezési forrás változásai aktiválják a módosítások üzembe helyezését a függvényalkalmazásban az Azure-ban.

Megfontolások

A folyamatos üzembe helyezési stratégia tervezésekor tartsa szem előtt ezeket a szempontokat:

  • A GitHub az egyetlen olyan forrás, amely jelenleg támogatja a használatalapú csomagon futó Linux-alkalmazások folyamatos üzembe helyezését, ami a Python-alkalmazások népszerű üzemeltetési lehetősége.

  • Az Azure-beli függvények üzembehelyezési egysége a függvényalkalmazás. A függvényalkalmazások összes függvénye ugyanabban az időben és ugyanabban a csomagban lesz üzembe helyezve.

  • A folyamatos üzembe helyezés engedélyezése után a függvénykódhoz való hozzáférés az Azure Portalon írásvédettként van konfigurálva, mert az igazság forrása ismert, hogy máshol található.

  • Mindig konfigurálja a folyamatos üzembe helyezést egy átmeneti ponthoz, nem pedig az éles ponthoz. Az éles pont használata esetén a kódfrissítések közvetlenül éles környezetbe kerülnek anélkül, hogy ellenőrizték őket az Azure-ban. Ehelyett engedélyezze a folyamatos üzembe helyezést egy átmeneti ponton, ellenőrizze az előkészítési ponton lévő frissítéseket, és miután minden megfelelően fut, felcserélheti az előkészítési pont kódját az éles környezetbe.

  • Az Üzembe helyezési központ nem támogatja a folyamatos üzembe helyezés engedélyezését bejövő hálózati korlátozásokkal rendelkező függvényalkalmazások esetében. Ehelyett közvetlenül a GitHubon vagy az Azure Pipelinesban kell konfigurálnia a buildszolgáltatói munkafolyamatot. Ezek a munkafolyamatok azt is megkövetelik, hogy a függvényalkalmazással azonos virtuális hálózatban lévő virtuális gépet használjon, mint egy saját üzemeltetésű ügynök (Pipelines) vagy egy saját üzemeltetésű futó (GitHub).

Folyamatos üzembe helyezés az alkalmazás létrehozása során

Jelenleg a GitHubról konfigurálhatja a folyamatos üzembe helyezést a GitHub Actions használatával, amikor a függvényalkalmazást az Azure Portalon hozza létre. Ezt a Függvényalkalmazás létrehozása lapon, az Üzembe helyezés lapon teheti meg.

Ha egy másik központi telepítési forrást vagy buildszolgáltatót szeretne használni a folyamatos integrációhoz, először hozza létre a függvényalkalmazást, majd térjen vissza a portálra, és állítsa be a folyamatos integrációt a Központi telepítési központban.

Alapszintű hitelesítés engedélyezése központi telepítésekhez

Alapértelmezés szerint a függvényalkalmazás alapszintű hitelesítési hozzáféréssel jön létre a scm végponthoz letiltva. Ez blokkolja a közzétételt minden olyan metódussal, amely nem tud felügyelt identitásokat használni a scm végpont eléréséhez. A végpont letiltásának közzétételi hatásait az scm üzembe helyezés alapszintű hitelesítés nélkül részletezi.

Fontos

Alapszintű hitelesítés használata esetén a hitelesítő adatok világos szövegben lesznek elküldve. A hitelesítő adatok védelméhez csak titkosított kapcsolaton (HTTPS) keresztül érheti el a scm végpontot, ha alapszintű hitelesítést használ. További információ: Biztonságos üzembe helyezés.

Alapszintű hitelesítés engedélyezése a scm végponton:

  1. Az Azure Portalon keresse meg a függvényalkalmazást.

  2. Az alkalmazás bal oldali menüjében válassza az Általános konfigurációs>beállítások lehetőséget.

  3. Állítsa be az SCM alapszintű hitelesítési hitelesítő adatait, majd válassza a Mentés lehetőséget.

Következő lépések