Folyamatos integráció és teljesítés az Azure Data Factory-ban
A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics
Tipp.
Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!
A folyamatos integráció az a gyakorlat, hogy a kódbázison végrehajtott minden módosítást automatikusan és a lehető leghamarabb tesztel. A folyamatos teljesítés a folyamatos integráció során zajló tesztelést követi, és egy előkészítési vagy éles rendszerbe küldi le a módosításokat.
Az Azure Data Factoryben a folyamatos integráció és teljesítés (CI/CD) a Data Factory-folyamatoknak az egyik (fejlesztési, tesztelési, éles) környezetből egy másikba történő áthelyezését jelenti. Az Azure Data Factory Azure Resource Manager-sablonokkal tárolja a különböző ADF-entitások (folyamatok, adathalmazok, adatfolyamok stb.) konfigurációját. Az adat-előállítók egy másik környezetbe való előléptetéséhez két javasolt módszer létezik:
- Automatizált üzembe helyezés a Data Factory És az Azure Pipelines integrációjával
- Manuálisan töltsön fel egy Resource Manager-sablont a Data Factory UX-integrációjával az Azure Resource Managerrel.
Feljegyzés
Javasoljuk, hogy az Azure Az PowerShell modult használja az Azure-ral való interakcióhoz. Az első lépésekhez tekintse meg Az Azure PowerShell telepítése témakört. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.
CI/CD életciklusa
Feljegyzés
További információ: Folyamatos üzembe helyezési fejlesztések.
Az alábbiakban az Azure Repos Gittel konfigurált Azure Data Factory CI/CD-életciklusának áttekintését tekintjük át. A Git-adattár konfigurálásáról további információt az Azure Data Factory forrásvezérlőjében talál.
Létrejön és konfigurál egy fejlesztői adat-előállítót az Azure Repos Gittel. Minden fejlesztőnek rendelkeznie kell engedéllyel Data Factory-erőforrások, például folyamatok és adathalmazok létrehozásához.
A fejlesztő létrehoz egy funkcióágat a módosításhoz. A legutóbbi módosításokkal hibakeresést hajtanak végre a folyamatfuttatásaikban. A folyamatfuttatások hibakeresésével kapcsolatos további információkért tekintse meg az Iteratív fejlesztés és hibakeresés az Azure Data Factoryvel című témakört.
Miután a fejlesztő elégedett a módosításokkal, létrehoz egy lekéréses kérelmet a szolgáltatáságból a fő vagy együttműködési ágba, hogy a módosításokat a társviszonyok felülvizsgálják.
A lekéréses kérelem jóváhagyása és a módosítások a főágban való egyesítése után a módosítások közzé lesznek téve a fejlesztői gyárban.
Ha a csapat készen áll a módosítások tesztelési vagy felhasználói elfogadási tesztüzemben való üzembe helyezésére, a csapat az Azure Pipelines kiadására lép, és üzembe helyezi a fejlesztői gyár kívánt verzióját a UAT-ben. Ez az üzembe helyezés egy Azure Pipelines-feladat részeként történik, és Resource Manager-sablonparaméterekkel alkalmazza a megfelelő konfigurációt.
Miután ellenőrizte a módosításokat a teszt-előállítóban, helyezze üzembe az éles üzemben a folyamatok kiadásának következő feladatával.
Feljegyzés
Csak a fejlesztői gyár van hozzárendelve egy git-adattárhoz. A teszt- és éles üzemeket nem szabad git-adattárral társítani, és csak Azure DevOps-folyamaton vagy erőforrás-kezelési sablonon keresztül kell frissíteni.
Az alábbi kép az életciklus különböző lépéseit emeli ki.
Ajánlott eljárások a CI/CD-hez
Ha Git-integrációt használ az adat-előállítóval, és rendelkezik egy CI/CD-folyamattal, amely a fejlesztésről a tesztelésre, majd az éles környezetbe helyezi át a módosításokat, az alábbi ajánlott eljárásokat javasoljuk:
Git-integráció. Csak a fejlesztői adat-előállítót konfigurálja Git-integrációval. A teszteléshez és az éles környezethez szükséges módosítások CI/CD-n keresztül lesznek üzembe helyezve, és nincs szükség Git-integrációra.
Üzembe helyezés előtti és utáni szkript. A Ci/CD Resource Manager üzembe helyezési lépése előtt el kell végeznie bizonyos feladatokat, például az eseményindítók leállítását és újraindítását, valamint a törlést. Javasoljuk, hogy az üzembe helyezési feladat előtt és után használjon PowerShell-szkripteket. További információ: Aktív eseményindítók frissítése. A data factory csapata adott meg egy szkriptet , amelyet a lap alján használhat.
Feljegyzés
Használja a PrePostDeploymentScript.Ver2.ps1 parancsot, ha csak azokat az eseményindítókat szeretné kikapcsolni/ bekapcsolni, amelyeket módosítottak a CI/CD alatt.
Figyelmeztetés
A szkript futtatásához mindenképpen használja a PowerShell Core-t az ADO-feladatban.
Figyelmeztetés
Ha nem a PowerShell és a Data Factory modul legújabb verzióit használja, deszerializálási hibákba ütközhet a parancsok futtatása közben.
Integrációs futtatókörnyezetek és megosztás. Az integrációs futtatókörnyezetek nem változnak gyakran, és a CI/CD minden szakaszában hasonlóak. A Data Factory tehát azt várja, hogy a CI/CD minden szakaszában ugyanazzal a névvel, típussal és altípussal rendelkezzen az integrációs futtatókörnyezethez. Ha minden fázisban meg szeretné osztani az integrációs futtatókörnyezeteket, fontolja meg, hogy csak a megosztott integrációs futtatókörnyezeteket tartalmazza egy ternáris gyár használatával. Ezt a megosztott gyárat az összes környezetben használhatja csatolt integrációs modultípusként.
Feljegyzés
Az integrációs modul megosztása csak saját üzemeltetésű integrációs futtatókörnyezetekhez érhető el. Az Azure-SSIS integrációs futtatókörnyezetek nem támogatják a megosztást.
Felügyelt privát végpont üzembe helyezése. Ha egy privát végpont már létezik egy gyárban, és olyan ARM-sablont próbál üzembe helyezni, amely azonos nevű, de módosított tulajdonságokkal rendelkező privát végpontot tartalmaz, az üzembe helyezés sikertelen lesz. Vagyis sikeresen üzembe helyezhet egy privát végpontot, feltéve, hogy ugyanazokkal a tulajdonságokkal rendelkezik, mint az előállítóban meglévő végpont. Ha bármelyik tulajdonság eltér a környezetek között, felülbírálhatja a tulajdonság paraméterezésével és a megfelelő érték megadásával az üzembe helyezés során.
Key Vault. Ha olyan társított szolgáltatásokat használ, amelyek kapcsolati adatait az Azure Key Vault tárolja, ajánlott külön kulcstartókat tartani a különböző környezetekhez. Az egyes kulcstartókhoz külön engedélyszinteket is konfigurálhat. Előfordulhat például, hogy nem szeretné, hogy a csapattagok rendelkezzenek engedélyekkel az éles titkos kulcsokhoz. Ha ezt a megközelítést követi, javasoljuk, hogy minden fázisban tartsa meg ugyanazokat a titkos neveket. Ha megtartja ugyanazokat a titkos kódneveket, nem kell minden kapcsolati sztring paramétereznie a CI/CD-környezetekben, mert csak a kulcstartó neve változik, amely egy külön paraméter.
Erőforrás elnevezése. Az ARM-sablon korlátai miatt az üzembe helyezés során problémák léphetnek fel, ha az erőforrások szóközöket tartalmaznak a névben. Az Azure Data Factory csapata "_" vagy "-" karakterek használatát javasolja az erőforrások szóközei helyett. A "Pipeline_1" például előnyösebb név lenne az 1. folyamatnál.
Az adattár módosítása. Az ADF automatikusan kezeli a GIT-adattár tartalmát. Ha manuálisan nem kapcsolódó fájlokat vagy mappákat módosít vagy vesz fel az ADF Git-adattár adatmappájában, az erőforrás-betöltési hibákat okozhat. A .bak fájlok jelenléte például ADF CI/CD-hibát okozhat, ezért el kell távolítani őket, hogy az ADF betöltse őket.
Expozíció-vezérlés és funkciójelzők. Ha csapatban dolgozik, vannak olyan példányok, ahol egyesítheti a módosításokat, de nem szeretné, hogy emelt szintű környezetekben, például PROD-ben és minőségbiztosítási környezetben fussanak. A forgatókönyv kezeléséhez az ADF csapata javasolja a DevOps szolgáltatásjelzők használatának fogalmát. Az ADF-ben kombinálhatja a globális paramétereket és az if condition tevékenységet , hogy elrejtse a logikai csoportokat ezen környezeti jelzők alapján.
A funkciójelző beállításáról az alábbi oktatóvideóból tájékozódhat:
Nem támogatott szolgáltatások
A Data Factory nem teszi lehetővé a véglegesítések kiválasztását vagy az erőforrások szelektív közzétételét. A közzétételek tartalmazzák az adat-előállítóban végrehajtott összes módosítást.
- Az adat-előállító entitásai egymástól függenek. Az eseményindítók például a folyamatoktól, a folyamatok pedig az adathalmazoktól és más folyamatoktól függnek. Az erőforrások egy részhalmazának szelektív közzététele váratlan viselkedéshez és hibákhoz vezethet.
- Ritkán, amikor szelektív közzétételre van szüksége, fontolja meg egy gyorsjavítás használatát. További információt a gyorsjavítás éles környezetében talál.
Az Azure Data Factory csapata nem javasolja az Azure RBAC-vezérlők hozzárendelését az egyes entitásokhoz (folyamatokhoz, adathalmazokhoz stb.) egy adat-előállítóban. Ha például egy fejlesztő hozzáfér egy folyamathoz vagy adathalmazhoz, akkor hozzá kell férnie az adat-előállítóban lévő összes folyamathoz vagy adathalmazhoz. Ha úgy érzi, hogy számos Azure-szerepkört kell implementálnia egy adat-előállítóban, tekintse meg egy második adat-előállító üzembe helyezését.
Privát ágakból nem végezhető közzététel.
A Bitbucketen jelenleg nem lehet projekteket üzemeltetni.
Jelenleg nem exportálhat és importálhat riasztásokat és mátrixokat paraméterekként.
A közzétételi ág részleges ARM-sablonjai 2021. november 1-étől már nem támogatottak. Ha a projekt használta ezt a funkciót, váltson egy támogatott mechanizmusra az üzembe helyezéshez, a következőkkel vagy
ARMTemplateForFactory.json
linkedTemplates
fájlokkal.
Kapcsolódó tartalom
- Folyamatos üzembe helyezési fejlesztések
- A folyamatos integráció automatizálása az Azure Pipelines kiadásaival
- Resource Manager-sablon manuális előléptetése az egyes környezetekben
- Egyéni paraméterek használata Resource Manager-sablonnal
- Csatolt Resource Manager-sablonok
- Gyorsjavítás éles környezet használata
- Üzembe helyezés előtti és utáni példaszkript