A Python használatának első lépései az Azure-ban

Ezt a dokumentumot ellenőrzőlistaként és útmutatóként használhatja, amikor elkezdi fejleszteni a felhőben üzemeltetett vagy felhőszolgáltatásokat használó Python-alkalmazásokat. Ha a dokumentumban található hivatkozásokat és utasításokat követi, a következőket fogja követni:

  • alapvető ismeretekkel rendelkezik arról, hogy mi a felhő, és hogyan tervezheti meg az alkalmazást a felhővel.
  • a helyi fejlesztési környezet beállítása, beleértve a felhőalapú alkalmazások létrehozásához szükséges eszközöket és kódtárakat.
  • megismerheti a munkafolyamatot a felhőalapú alkalmazások fejlesztésekor.

1. fázis: Alapfogalmak megismerés

Ha még nem fejleszt alkalmazásokat a felhőhöz, ez a rövid videós cikksorozat segít a gyors gyors használatban.

Miután megismerte a felhőbeli alkalmazások fejlesztésének alapjait, be kell állítania a fejlesztési környezetet, és egy rövid útmutatót vagy oktatóanyagot kell követnie az első alkalmazás létrehozásához.

2. fázis: A helyi Python-környezet konfigurálása az Azure-fejlesztéshez

Python-alkalmazások Azure-nal történő fejlesztéséhez először konfigurálnia kell a helyi fejlesztési környezetet. A konfiguráció magában foglalja egy Azure-fiók létrehozását, az Azure-fejlesztési eszközök telepítését és az eszközök Azure-fiókhoz való csatlakoztatását.

Az Azure-ban való fejlesztéshez Python 3.8-at vagy újabb verziót kell telepíteni. A Python verziójának ellenőrzéséhez a konzolablakban írja be a macOS/Linux vagy py --version Windows parancsotpython3 --version.

Azure-fiók létrehozása

A Python-alkalmazások Azure-ral való fejlesztéséhez Azure-fiókra van szükség. Az Azure-fiókja az Azure-ba való bejelentkezéshez használt hitelesítő adatok, valamint az Azure-erőforrások létrehozásához használt adatok.

Ha az Azure-t használja a munkahelyén, forduljon a cég felhő rendszergazdájához, hogy lekérje az Azure-ba való bejelentkezéshez használt hitelesítő adatait.

Ellenkező esetben ingyenesen létrehozhat egy Azure-fiókot, és 12 hónapos népszerű szolgáltatásokat kaphat ingyenesen, és 200 dollár értékű kreditet is kaphat az Azure 30 napos felfedezéséhez.

Use the Azure portal

Miután megkapta a hitelesítő adatait, bejelentkezhet az Azure Portalra a következő címenhttps://portal.azure.com: . Az Azure Portal általában a legegyszerűbb módja az Azure használatának, különösen akkor, ha még nem ismerkedik az Azure-ral és a felhőfejlesztéssel. Az Azure Portalon különféle felügyeleti feladatokat végezhet, például erőforrásokat hozhat létre és törölhet.

Ha már jártos az Azure és a felhőfejlesztés terén, valószínűleg olyan eszközökkel fog kezdeni, mint a Visual Studio Code és az Azure CLI. A Python fejlesztői központban található cikkek bemutatják, hogyan használható az Azure Portal, a Visual Studio Code és az Azure CLI.

A Visual Studio Code használata

Az Azure-hoz való fejlesztés során bármilyen szerkesztőt vagy IDE-t használhat Python-kód írásához. Érdemes lehet azonban megfontolni a Visual Studio Code azure-ra és Python-fejlesztésre való használatát. A Visual Studio Code számos bővítményt és testreszabást biztosít az Azure-hoz és a Pythonhoz, amelyek megkönnyítik a fejlesztési ciklust és az üzembe helyezést egy helyi környezetből az Azure-ba.

A Visual Studio Code-ot használó Python-fejlesztéshez telepítse a következőt:

  • Python-bővítmény. Ez a bővítmény tartalmazza az IntelliSense (Pylance), a linting, a hibakeresés (többszálas, távoli), a Jupyter Notebooks, a kódformázás, az újrabontás, az egységtesztek stb.

  • Azure Tools bővítménycsomag. A bővítménycsomag bővítményeket tartalmaz a Azure-alkalmazás Service, az Azure Functions, az Azure Storage, az Azure Cosmos DB és az Azure Virtual Machines használatához egy kényelmes csomagban. Az Azure-bővítmények megkönnyítik az Azure felderítését és használatát.

Bővítmények telepítése a Visual Studio Code-ból:

  1. Nyomja le a Ctrl+Shift+X billentyűkombinációt a Bővítmények ablak megnyitásához.
  2. Keresse meg az Azure Tools bővítményt.
  3. Válassza a Telepítés gombot.

Screenshot of the Visual Studio Code showing extensions panel searching for the Azure Tools extension pack.

Ha többet szeretne megtudni a bővítmények Visual Studio Code-ban való telepítéséről, tekintse meg a Bővítmény marketplace dokumentumát a Visual Studio Code webhelyén.

Az Azure Tools bővítmény telepítése után jelentkezzen be az Azure-fiókjával. A bal oldali panelen megjelenik egy Azure-ikon. Válassza ezt az ikont, és megjelenik az Azure-szolgáltatások vezérlőpultja. Válassza a Bejelentkezés az Azure-ba... lehetőséget a hitelesítési folyamat befejezéséhez.

Screenshot of the Visual Studio Code showing how to sign-in the Azure tools to Azure.

Megjegyzés:

Ha a következő hibaüzenet jelenik meg: "Nem található előfizetés [előfizetés-azonosító]" hibaüzenet jelenik meg, ennek az lehet az oka, hogy proxy mögött van, és nem tudja elérni az Azure API-t. Konfiguráljon HTTP_PROXY és HTTPS_PROXY környezeti változókat a proxyadatokkal a terminálban:

# Windows
set HTTPS_PROXY=https://username:password@proxy:8080
set HTTP_PROXY=http://username:password@proxy:8080
# macOS/Linux
export HTTPS_PROXY=https://username:password@proxy:8080
export HTTP_PROXY=http://username:password@proxy:8080

Az Azure parancssori felületének használata

Az Azure Portal és a Visual Studio Code mellett az Azure CLI parancssori eszközét is kínálja az Azure-erőforrások létrehozásához és kezeléséhez. Az Azure CLI a hatékonyság, az ismételhetőség és az ismétlődő feladatok szkriptelhetőségének előnyeit kínálja. A gyakorlatban a legtöbb fejlesztő az Azure Portalt és az Azure CLI-t is használja.

Az Azure CLI telepítése után jelentkezzen be az Azure-fiókjába az Azure CLI-ből úgy, hogy beírja a parancsot az login egy terminálablakba a munkaállomáson.

az login

Az Azure CLI megnyitja az alapértelmezett böngészőt a bejelentkezési folyamat befejezéséhez.

Python virtuális környezet konfigurálása

Az Azure-hoz készült Python-alkalmazások létrehozásakor javasoljuk, hogy minden alkalmazáshoz hozzon létre egy virtuális környezetet . A virtuális környezet egy önálló könyvtár a Python adott verziójához, valamint az alkalmazáshoz szükséges többi csomaghoz.

Virtuális környezet létrehozásához kövesse az alábbi lépéseket.

  1. Nyisson meg egy terminált vagy egy parancssort.

  2. Hozzon létre egy mappát a projekthez.

  3. Hozza létre a virtuális környezetet:

    # py -3 uses the global python interpreter. You can also use python3 -m venv .venv.
    py -3 -m venv .venv
    

    Ez a parancs futtatja a Python-modult venv , és létrehoz egy virtuális környezetet egy ".venv" mappában. A .gitignore-fájlok általában ".venv" bejegyzéssel rendelkeznek, így a virtuális környezet nem lesz bejelentkezve a kódellenőrzésekkel.

  4. A virtuális környezet aktiválása:

    .venv\Scripts\activate
    

    Megjegyzés:

    Ha Windows Command shellt használ, aktiválja a virtuális környezetet a következővel .venv\Scripts\activate: . Ha Git Bash-t használ Windowson a Visual Studio Code-ban , használja inkább a parancsot source .venv/Scripts/activate .

Miután aktiválta ezt a környezetet (amelyet a Visual Studio Code automatikusan végez), a futtatás pip install csak ebbe a környezetbe telepíti a kódtárat. A virtuális környezetben futó Python-kód az adott virtuális környezetbe telepített csomagverziókat használja. A különböző virtuális környezetek használata lehetővé teszi, hogy a különböző alkalmazások különböző csomagverziókat használjanak, ami néha szükséges. A virtuális környezetekről további információt a Python-dokumentumokban található virtuális környezetek és csomagok című témakörben talál.

Ha például a követelmények egy requirements.txt fájlban találhatók, akkor az aktivált virtuális környezetben telepítheti őket a következőkkel:

pip install -r requirements.txt

3. fázis: Az Azure fejlesztési munkafolyamatának ismertetése

Előző cikk: Erőforrások kiépítése, elérése és kezelése

Most, hogy megismerte az Azure szolgáltatás- és erőforrásmodelljét, megismerheti a felhőalkalmazások Azure-ral való fejlesztésének általános folyamatát: üzembe helyezés, kód, tesztelés, üzembe helyezés és kezelés.

Lépés Elsődleges eszközök Tevékenységek
Üzembe helyezés Azure CLI, Azure Portal, VS Code Azure Tools-bővítmények, Cloud Shell, Azure SDK felügyeleti kódtárakat használó Python-szkriptek Erőforráscsoportok létrehozása és erőforrások létrehozása ezekben a csoportokban; úgy konfigurálja az erőforrásokat, hogy használatra készek legyenek az alkalmazáskódból, és/vagy készen állnak a Python-kód fogadására az üzemelő példányokban.
Kód Kódszerkesztő (például Visual Studio Code és PyCharm), Azure SDK-ügyfélkódtárak, referenciadokumentáció Python-kód írása az Azure SDK-ügyfélkódtárakkal a kiépített erőforrások használatához.
Test Python-futtatókörnyezet, hibakereső Python-kódot helyileg futtathat aktív felhőbeli erőforrásokon (általában nem éles erőforrásokon, hanem fejlesztési vagy tesztelési erőforrásokon). Maga a kód még nincs üzemeltetve az Azure-ban, ami segít a gyors hibakeresésben és az iterációban.
Üzembe helyezés VS Code, Azure CLI, GitHub Actions, Azure Pipelines A kód helyi tesztelése után helyezze üzembe egy megfelelő Azure-üzemeltetési szolgáltatásban, ahol maga a kód futtatható a felhőben. Az üzembe helyezett kód általában átmeneti vagy éles erőforrásokon fut.
Kezelés Azure CLI, Azure Portal, VS Code, Python-szkriptek, Azure Monitor Az alkalmazások teljesítményének és válaszkészségének monitorozása, az éles környezetben történő módosítások végrehajtása, a fejlesztési környezetek fejlesztéseinek migrálása a kiépítés és fejlesztés következő fordulójához.

1. lépés: Erőforrások kiépítése és konfigurálása

A sorozat előző cikkében leírtak szerint az alkalmazások fejlesztésének első lépése az alkalmazás célkörnyezetét alkotó erőforrások kiépítése és konfigurálása.

A kiépítés egy erőforráscsoport megfelelő Azure-régióban való létrehozásával kezdődik. Létrehozhat egy erőforráscsoportot az Azure Portalon, a VS Code-ot Azure Tools-bővítményekkel, az Azure CLI-vel vagy egy egyéni szkripttel, amely az Azure SDK felügyeleti kódtárait (vagy REST API-t) használja.

Az erőforráscsoporton belül kiépíteni és konfigurálni kell a szükséges erőforrásokat a portál, a VS Code, a parancssori felület vagy az Azure SDK használatával. (Ismét tekintse át a Az Azure fejlesztői útmutatója az elérhető erőforrástípusok áttekintéséhez.)

A konfiguráció olyan hozzáférési szabályzatokat tartalmaz, amelyek szabályozzák, hogy mely identitások (szolgáltatásnevek és/vagy alkalmazásazonosítók) férhetnek hozzá ezekhez az erőforrásokhoz. A hozzáférési szabályzatok kezelése az Azure szerepköralapú hozzáférés-vezérlésével (RBAC) történik, egyes szolgáltatások pedig speciálisabb hozzáférés-vezérléssel is rendelkeznek. Az Azure-ral együttműködő felhőfejlesztőként mindenképpen ismerkedjen meg az Azure RBAC-vel, mert nagyjából minden olyan erőforrással használja, amelynek biztonsági problémái vannak.

A legtöbb alkalmazásforgatókönyv esetében általában az Azure CLI és/vagy Python-kód használatával hoz létre kiépítési szkripteket az Azure SDK felügyeleti kódtáraival. Az ilyen szkriptek az alkalmazás erőforrásigényeinek teljességét írják le (lényegében azt az egyéni felhőszámítógépet határozzák meg, amelyre az alkalmazást telepíti). A szkriptek segítségével egyszerűen létrehozhatja ugyanazt az erőforráskészletet a különböző környezetekben, például a fejlesztésben, a tesztelésben, az előkészítésben és az éles környezetben. Automatizálva elkerülheti, hogy az Azure Portalon vagy a VS Code-ban számos ismétlődő lépést manuálisan hajt végre. Az ilyen szkriptek megkönnyítik egy környezet kiépítését egy másik régióban, vagy különböző erőforráscsoportokat is használhatnak. Ha ezeket a szkripteket a forrásvezérlő-adattárakban is fenntartja, teljes naplózási és változási előzményekkel is rendelkezik.

2. lépés: Alkalmazáskód írása erőforrások használatához

Miután kiépítette az alkalmazáshoz szükséges erőforrásokat, meg kell írnia az alkalmazáskódot az erőforrások futásidejének szempontjaival való együttműködéshez.

A kiépítési lépésben például létrehozhatott egy Azure Storage-fiókot, létrehozott egy blobtárolót a fiókon belül, és hozzáférési szabályzatokat állíthat be az adott tárolóban lévő alkalmazáshoz. Ezt a kiépítési folyamatot az Azure Storage üzembe helyezése című példában mutatjuk be. A kódból ezután hitelesítheti magát a tárfiókkal, majd blobokat hozhat létre, frissíthet vagy törölhet a tárolóban. Ezt a futási időt bemutató folyamatot az Azure Storage használata című példában mutatjuk be. Hasonlóképpen, előfordulhat, hogy kiépített egy adatbázist egy sémával és megfelelő engedélyekkel (ahogy azt a Példa – Adatbázis kiépítése című példában is bemutattuk), hogy az alkalmazáskód kapcsolódhasson az adatbázishoz, és végrehajthassa a szokásos create-read-update-delete lekérdezéseket.

Az alkalmazáskód általában környezeti változókkal azonosítja a használni kívánt erőforrások nevét és URL-címét. A környezeti változók lehetővé teszik a felhőkörnyezetek (fejlesztés, tesztelés, előkészítés és éles környezet) közötti váltást a kód módosítása nélkül. A különböző Azure-szolgáltatások, amelyek az alkalmazáskódot üzemeltetik, lehetővé teszik a szükséges változók meghatározását. Például a Azure-alkalmazás Szolgáltatásban (webalkalmazások üzemeltetéséhez) és az Azure Functionsben (az Azure kiszolgáló nélküli számításaiban) az Azure Portalon, a VS Code-on vagy az Azure CLI-n keresztül határozhatja meg az alkalmazásbeállításokat, amelyek környezeti változókként jelennek meg a kódban.

Python-fejlesztőként valószínűleg pythonos alkalmazáskódot fog írni a Pythonhoz készült Azure SDK-ügyfélkódtárak használatával. Ennek ellenére a felhőalkalmazások bármely független része bármilyen támogatott nyelven írható. Ha több programozási nyelvet használó csapaton dolgozik, előfordulhat, hogy az alkalmazás egyes részei Pythont, néhány JavaScriptet, néhány Java-t és más C#-ot használnak.

Az alkalmazáskód az Azure SDK felügyeleti kódtárait használhatja a kiépítési és felügyeleti műveletek szükség szerinti végrehajtásához. A szkriptek üzembe helyezése az SDK-ügyfélkódtárak használatával inicializálhatja az erőforrásokat adott adatokkal, vagy házhoz viteli feladatokat hajthat végre a felhőbeli erőforrásokon még akkor is, ha ezek a szkriptek helyileg futnak.

3. lépés: Az alkalmazáskód helyi tesztelése és hibakeresése

A fejlesztők általában szeretnék tesztelni az alkalmazáskódot a helyi munkaállomásaikon, mielőtt üzembe helyeznék a kódot a felhőben. Az alkalmazáskód helyi tesztelése azt jelenti, hogy általában más, a felhőben már kiépített erőforrásokhoz, például tárolókhoz, adatbázisokhoz stb. fér hozzá. A különbség az, hogy még nem futtatja magát az alkalmazáskódot egy felhőszolgáltatásban.

A kód helyi futtatásával teljes mértékben kihasználhatja az olyan eszközök által kínált hibakeresési funkciókat, mint a Visual Studio Code, és kezelheti a kódot egy forrásvezérlő adattárban.

A helyi teszteléshez egyáltalán nem kell módosítania a kódot: az Azure teljes mértékben támogatja a helyi fejlesztést és hibakeresést ugyanazzal a kóddal, amelyet a felhőben üzembe helyez. A környezeti változók ismét a kulcs: a felhőben a kód környezeti változókként férhet hozzá az üzemeltetési erőforrás beállításaihoz. Amikor helyileg hozza létre ugyanazokat a környezeti változókat, ugyanaz a kód módosítás nélkül fut. Ez a minta hitelesítési hitelesítő adatokra, erőforrás-URL-címekre, kapcsolati sztring és számos egyéb beállításra használható, így a kód helyi és éles környezetben való futtatásakor könnyen használható erőforrások a kód felhőben való üzembe helyezése után.

4. lépés: Alkalmazáskód üzembe helyezése az Azure-ban

Miután helyileg tesztelte a kódot, készen áll a kód üzembe helyezésére a kiépített Azure-erőforrásban. Ha például Egy Django-webalkalmazást ír, a kódot üzembe helyezheti egy virtuális gépen (ahol saját webkiszolgálót biztosít), vagy Azure-alkalmazás szolgáltatásban (amely a webkiszolgálót biztosítja). Az üzembe helyezés után a kód nem a helyi gépen, hanem a kiszolgálón fut, és hozzáférhet az összes Olyan Azure-erőforráshoz, amelyhez engedélyezve van.

Ahogy az előző szakaszban is említettük, a tipikus fejlesztési folyamatokban először a kódot a fejlesztési környezetben kiépített erőforrásokra helyezik üzembe. A tesztelési kör után üzembe helyezheti a kódot egy átmeneti környezetben lévő erőforrásokon, így az alkalmazást elérhetővé teszi a tesztcsapat számára, és akár előzetes verzióban is használhatja az ügyfeleket. Ha elégedett az alkalmazás teljesítményével, üzembe helyezheti a kódot az éles környezetben. Ezek az üzembe helyezések az Azure Pipelines és a GitHub Actions használatával történő folyamatos integrációval és folyamatos üzembe helyezéssel is automatizálhatók.

Ha mégis megteszi, a kód felhőben való üzembe helyezése után az valóban felhőalkalmazássá válik, amely teljes egészében az Azure-adatközpontok kiszolgálószámítógépein fut.

5. lépés: Kezelés, figyelés és felülvizsgálat

Az üzembe helyezés után győződjön meg arról, hogy az alkalmazás a kívánt módon teljesít, válaszol az ügyfélkérésekre, és hatékonyan használja az erőforrásokat (és a legalacsonyabb költséggel). Kezelheti, hogy az Azure szükség szerint automatikusan skálázza az üzembe helyezést, és teljesítményadatokat gyűjthet és monitorozhat az Azure Portal, a VS Code, az Azure CLI vagy az Azure SDK-kódtárakkal írt egyéni szkriptek használatával. Ezután valós idejű módosításokat végezhet a kiépített erőforrásokon a teljesítmény optimalizálása érdekében, ismét ugyanazon eszközök bármelyikével.

A monitorozás betekintést nyújt a felhőalkalmazás átstrukturálásának módjába. Előfordulhat például, hogy egy webalkalmazás bizonyos részeit (például API-végpontok egy csoportját) csak alkalmanként használják az elsődleges részekhez képest. Ezután dönthet úgy, hogy ezeket az API-kat külön helyezi üzembe kiszolgáló nélküli Azure Functionsként. Függvényként saját háttérbeli számítási erőforrásokkal rendelkeznek, amelyek nem versenyeznek a fő alkalmazással, de havonta csak fillérekbe kerülnek. A fő alkalmazás ezután rugalmasabbá válik több ügyfél számára anélkül, hogy magasabb költségű szintre kellene skáláznia.

További lépések

Most már ismeri az Azure alapvető struktúráját és az általános fejlesztési folyamatot: erőforrásokat építhet ki, írhat és tesztelhet kódot, üzembe helyezheti a kódot az Azure-ban, majd figyelheti és kezelheti ezeket az erőforrásokat.