Az AWS ma bejelenti, hogy elérhető a helyben elérhető verziófrissítés a következőhöz: Amazon menedzselt munkafolyamat az Apache Airflow számára (Amazon MWAA). Ez a továbbfejlesztés lehetővé teszi a meglévő Apache Airflow 2.x verziójú környezetek zökkenőmentes frissítését újabb elérhető verziókra, miközben megőrzi a munkafolyamat futási előzményeit és a környezet konfigurációit. Mostantól kihasználhatja az Apache Airflow platform legújabb lehetőségeit anélkül, hogy teljesen új Amazon MWAA környezetet kellene létrehoznia.
Eddig, ha az Amazon MWAA környezetét egy másik Apache Airflow verzióra akarta frissíteni, követnie kellett a Amazon MWAA környezet migráció utasítás. Ez magában foglalta egy új Amazon MWAA környezet létrehozását, majd az összes konfiguráció áttelepítését és Irányított aciklikus grafikonok (DAGs) hozzá. Ha meg kellett őriznie a DAG-futtatások előzményeit is, akkor biztonsági másolatot kellett készítenie a metaadat-adatbázisról, majd vissza kell állítania azt az újonnan létrehozott környezetben. Ez a folyamat hibára hajlamos, manuális volt, és további költségekkel járt a két külön Amazon MWAA környezet fenntartása, amíg ellenőrizni nem tudja az újat, és le nem szereli a régit.
Ebben a bejegyzésben áttekintést adunk a helyben elérhető verziófrissítési funkcióról, feltárjuk az alkalmazható használati eseteket, részletezzük a használat lépéseit, és további útmutatást adunk a képességeiről.
A megoldás áttekintése
Az Amazon MWAA újonnan bevezetett in-place verziófrissítései egyszerűsített átmenetet biztosítanak a meglévő Apache Airflow 2.x-alapú verziójú környezetekről az újabb elérhető Apache Airflow verziókra. Az Amazon MWAA felügyeli a teljes frissítési folyamatot, az új Apache Airflow verziók kiépítésétől a metaadat-adatbázis frissítéséig. Frissítési hiba esetén az Amazon MWAA-t úgy tervezték, hogy a kapcsolódó metaadat-adatbázis-pillanatkép segítségével visszaálljon az előző stabil verzióra.
Az Amazon MWAA meglévő környezeteinek frissítése egyszerű folyamat. Frissítheti meglévő Apache Airflow 2.0 és újabb környezeteit az Amazon MWAA-n, mindössze néhány kattintással az Amazon MWAA konzolon, az Amazon MWAA API használatával, a AWS parancssori interfész (AWS CLI), vagy olyan eszközök használatával, mint a AWS felhőképződés, a AWS Cloud Development Kit (AWS CDK), ill Terraform. Ez a funkció az összes jelenleg támogatott Amazon MWAA régióban elérhető.
Az Amazon MWAA konzolon egyszerűen szerkessze a környezetet, és válasszon egy elérhető Apache Airflow verziót, amely magasabb, mint a meglévő környezet aktuális verziója. Használhatja a Frissítse a környezetet API-t, és adja meg az új Apache Airflow verziót a frissítési folyamat elindításához. Ha többet szeretne megtudni a helyben történő verziófrissítésekről, lásd: Az Apache Airflow verzió frissítése az Amazon MWAA dokumentációjából.
A frissítés során az Amazon MWAA először egy pillanatképet készít a meglévő környezet metaadat-adatbázisáról, amely aztán egy új adatbázis alapjául szolgál. Ezt követően az Apache Airflow összes összetevője – a webszerver, az ütemező és a dolgozók – frissítésre kerül. Végül az újonnan létrehozott metaadat-adatbázis frissítése megtörténik, hatékonyan befejezve az új környezetre való átállást.
Alkalmazható használati esetek
Érdemes megfontolni az Apache Airflow verziójának frissítését az Amazon MWAA-n, ha a meglévő munkafolyamatok alkalmazkodnak a változáshoz, és egy új verzió érhető el az Ön használati esetéhez igazodó funkciókkal vagy fejlesztésekkel. A frissítéssel kihasználhatja az Apache Airflow platform legújabb képességeit, és fenntarthatja a kompatibilitást az új funkciókkal és bevált gyakorlatokkal, például az adatvezérelt ütemezéssel és az új Amazon szolgáltatói csomagokkal. Megjelent az Apache Airflow 2.4.3-ban. A frissítési folyamat környezeti leállást foglal magában, amely a környezet méretétől függően akár 2 órát is igénybe vehet, és igény szerint, az Ön számára legmegfelelőbb időpontban hajtható végre. Ha meglévő környezete erősen kihasznált, így nem engedheti meg magának az állásidőt, fontolja meg egy új környezet létrehozását.
Előfeltételek
Amikor felkészül a frissítésre, győződjön meg arról, hogy teljesítette a következő előfeltétel lépéseket:
- Ellenőrizze az Apache Airflow változásait a környezet meglévő és új verziói között. Tekintse át az Apache Airflow-t Kiadási megjegyzések hogy megértse az új funkciók, jelentős változtatások és hibajavítások hatását, amelyeket az összes közbenső Apache Airflow kiadás a forrás- és a célverzió között hozott.
- Tekintse át a meglévőt
requirements.txt
fájlt a célkörnyezethez szükséges függőségek megfelelő készletének ellenőrzéséhez. Ezenkívül ellenőrizze, hogy az Önrequirements.txt
fájl tartalmazza a megfelelő kényszerfájlt a fájl tetejére, hogy megfeleljen a célkörnyezetnek. Az Apache Airflow kényszerfájl megadja az Apache Airflow kiadásakor elérhető függő modulokat és szolgáltatói verziókat. Kényszerfájl hozzáadása megakadályozza, hogy nem kompatibilis könyvtárak telepítésre kerüljenek a környezetbe. A következő példában cserélje ki{Airflow-version}
a célkörnyezet verziószámával, és{Python-version}
a Python azon verziójával, amely kompatibilis a környezetével:--constraint "https://raw.githubusercontent.com/apache/airflow/constraints-{Airflow-version}/constraints-{Python-version}.txt"
- Tekintse át a dokumentumban említett további Python-könyvtárak kompatibilitását
requirements.txt
fájlt, hogy megfeleljen a célkörnyezetnek. Az Apache Airflow v2.4.3 és újabb verziói Python v3.10-et, míg a régebbi Apache Airflow verziók Python v3.7-et használnak. Ezért, ha meglévő Apache Airflow v2.0.2/2.2.2-alapú környezetét Apache Airflow v2.4.3-ra vagy újabbra próbálja frissíteni, frissítse a további Python-könyvtárakat, hogy azok megfeleljenek a Python v3.10-es verziójának. - Az Apache Airflow 2.4.3-as és újabb verzióival az Amazon MWAA alapértelmezés szerint telepített szolgáltatói csomagjainak listája megváltozott. Ne feledje, hogy egyes importálások és szolgáltatók nevei megváltoztak az Apache Airflow új szolgáltatói csomagjában, hogy egységesítsék a szolgáltatói csomagokon belüli elnevezési konvenciót. Hasonlítsa össze a alapértelmezés szerint telepített szolgáltatói csomagok listája az Apache Airflow v2.2.2-es vagy v2.0.2-es verziójában, és konfiguráljon minden további csomagot, amelyre szüksége lehet az új Apache Airflow v2.4.3-as vagy újabb környezetéhez.
- Győződjön meg arról, hogy DAG-jai és egyéb munkafolyamat-erőforrásai kompatibilisek az új Apache Airflow verzióval, amelyre frissít.
- Használja a aws-mwaa-local-runner segédprogram, amellyel helyileg tesztelheti meglévő DAG-jait, követelményeit, bővítményeit és függőségeit, mielőtt telepítené az Amazon MWAA-ra. Létrehozhat egy cél Apache Airflow-környezetet, amely hasonló egy Amazon MWAA éles képfájlhoz, helyileg használva
aws-mwaa-local-runner
és ellenőrizze, hogy minden összetevője működik-e, mielőtt megpróbálná frissíteni az Amazon MWAA környezetét. Ezenkívül tesztelje az új környezetfrissítési folyamatot alacsonyabb szintű Amazon MWAA-környezetekben, például fejlesztői vagy staging-környezetekben, mielőtt a frissítést éles környezetben kivezeti.
Frissítési folyamat
A frissítés elindítása után az Amazon MWAA leállítja a meglévő Apache Airflow összetevőket (webszerver, ütemező és dolgozók). Ez a folyamat leállítja a jelenleg futó dolgozói feladatokat. A környezet állapota ebben a szakaszban a következőképpen jelenik meg: UPDATING
. A frissítési folyamat ezután létrehoz egy adatbázis-pillanatképet a metaadat-adatbázisról, az állapottal megjelölve CREATING_SNAPSHOT
. Amikor a pillanatfelvétel elkészült, a környezet állapota visszatér a következőre UPDATING
mivel az Amazon MWAA egy új Apache Airflow-környezet létrehozását indítja el, amely megfelel a verzióválasztásnak, és alkalmazza a szükséges sémamódosításokat a meglévő metaadat-adatbázison, hogy igazítsa azt a cél Apache Airflow környezethez. Ebben a fázisban a megadott követelmények, beépülő modulok és egyéb függőségek telepítésre kerülnek.
A befejezést követően az új környezet a következőként lesz megjelölve AVAILABLE
, jelezve, hogy a frissítési folyamat sikeres volt, és a környezet készen áll a tesztelésre. Mostantól bejelentkezhet az Apache Airflow felhasználói felületére, hogy ellenőrizhesse meglévő DAG-jainak jelenlétét, azok előzményeit, a konfigurált kapcsolatokat és egyebeket.
Ha azonban a megadott követelmények, beépülő modulok és függőségi fájlok telepítése során hibák lépnek fel, a környezet visszaállítja az előző stabil verziót. A folyamat során a környezet állapota a következőképpen fog megjelenni ROLLING_BACK
. Ha a visszaállítás sikeres, a korábbi stabil környezet elérhető lesz, és az állapot a következőképpen jelenik meg: UPDATE_FAILED
amíg meg nem kísérel egy új frissítést, és az sikerül. Ha a visszaállítás sikertelen, az állapot a következőképpen jelenik meg: UNAVAILABLE
, jelezve, hogy a környezete nem működik.
Ha a környezet frissítési folyamata meghiúsul, akkor valószínűleg a mögöttes Amazon Elastic Container Service (Amazon ECS) AWS Fargate a fürtök stabilizációs problémákat okoztak az ütköző követelmények és beépülő modulok, hálózati problémák vagy DB-áttelepítési problémák az Apache Airflow összetevő frissítése után. A problémák enyhítése érdekében győződjön meg arról, hogy DAG-jai és követelményei probléma nélkül működnek a aws-mwaa-local-runner
segédprogramot, és ideális esetben tesztelni egy átmeneti Amazon MWAA környezetben.
További megfontolások
Tartsa szem előtt a funkcióval kapcsolatos alábbi további információkat:
- A frissítési folyamat igény szerint elérhető, és az újabb verziókra való átállásra korlátozódik. Az Amazon MWAA helyszíni verziófrissítései nem támogatottak az 1.10.z verzió esetén. A nagyobb verziófrissítés végrehajtásához, például az 1.yz verzióról a 2.yz verzióra, létre kell hoznia egy új környezetet, és át kell költöztetnie az erőforrásokat.
- Csak a megfelelő magasabb verziókat választhatja ki, amelyekre frissíthet. Az alacsonyabb verzióra való leminősítés nem érhető el.
- A visszaállítási folyamat további időt vehet igénybe, és ha van Amazon egyszerű tárolási szolgáltatás Az Amazon MWAA (Amazon S3) bucket verziózás engedélyezve van, és a környezet visszaállítása a korábbi működő konfigurációra, beleértve a bővítményeket és a követelményeket. A DAG-okon végzett manuális módosítások azonban nem állnak vissza a folyamat során.
- Miután a frissítési folyamat sikeresen befejeződött, és a környezet elérhető, minden futó DAG-ot, amely a frissítés során megszakadt, újrapróbálkozásra ütemezi, attól függően, hogy hogyan konfigurálja a DAG-ok újrapróbálkozásait. Ezeket manuálisan is elindíthatja, vagy megvárhatja a következő ütemezett futtatást.
- Iteratívan frissítse a környezeteket, először a legkevésbé kritikus környezetekkel kezdve.
Következtetés
Ebben a bejegyzésben az Amazon MWAA új funkciójáról beszéltünk, amely lehetővé teszi meglévő Amazon MWAA környezetének frissítését magasabb Apache Airflow verziókra. Ez a funkció az Apache Airflow 2.x vagy újabb verzióját futtató új és meglévő Amazon MWAA környezetekben támogatott. Ezzel a funkcióval frissítheti az Apache Airflow verzióit, miközben megőrzi a meglévő munkafolyamat-futási előzményeket és környezeti konfigurációkat. A frissítéssel kihasználhatja az Apache Airflow platform legújabb képességeit, fenntarthatja a kompatibilitást az új funkciókkal és betarthatja a bevált gyakorlatokat.
További részletekért és kódpéldákért az Amazon MWAA webhelyen látogassa meg a Amazon MWAA felhasználói kézikönyv és a Amazon MWAA példák GitHub repo.
Az Apache, az Apache Airflow és az Airflow a cég bejegyzett védjegyei vagy védjegyei Apache Software Foundation az Egyesült Államokban és/vagy más országokban.
A szerzőkről
Parnab Basak megoldástervező és szerver nélküli specialista az AWS-nél. Olyan új, felhőalapú megoldások létrehozására specializálódott, amelyek olyan modern szoftverfejlesztési gyakorlatokat alkalmaznak, mint a szerver nélküli, a DevOps és az analitika. A Parnab szorosan együttműködik az analitikai és integrációs szolgáltatások terén, segítve ügyfeleit az AWS-szolgáltatások munkafolyamat-szervezési igényeik kielégítésében.
Fernando Gamero az AWS Senior Solutions Architect mérnöke, több mint 25 éves tapasztalattal rendelkezik a technológiai iparban, a telekommunikációtól a banki szolgáltatásokon át a startupokig. Jelenleg ügyfeleit segíti az eseményvezérelt architektúrák felépítésében, az IoT-megoldások átvételében az Edge-nél, valamint az adat- és gépi tanulási folyamatok nagyarányú átalakításában.
Shubham Mehta egy tapasztalt termékmenedzser, több mint nyolc éves tapasztalattal és bizonyítottan sikeres termékek szállításában. Jelenlegi beosztásában az AWS vezető termékmenedzsereként felügyeli az Apache Airflow (Amazon MWAA) Amazon menedzselt munkafolyamatait, és élen jár az Apache Airflow nyílt forráskódú hozzájárulásaival a termék funkcionalitásának további javítása érdekében.
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- PlatoAiStream. Web3 adatintelligencia. Felerősített tudás. Hozzáférés itt.
- A jövő pénzverése – Adryenn Ashley. Hozzáférés itt.
- Részvények vásárlása és eladása PRE-IPO társaságokban a PREIPO® segítségével. Hozzáférés itt.
- Forrás: https://aws.amazon.com/blogs/big-data/introducing-in-place-version-upgrades-with-amazon-mwaa/
- :van
- :is
- :nem
- $ UP
- 1
- 10
- 100
- 110
- 7
- a
- Rólunk
- felett
- elhelyezésére
- át
- aciklikus
- hozzáadott
- hozzáadásával
- További
- további információ
- Ezen kívül
- tapad
- elfogadja
- Elfogadása
- Előny
- Után
- összehangolása
- Minden termék
- lehetővé teszi, hogy
- Is
- amazon
- Amazon menedzselt munkafolyamatok az Apache Airflow-hoz (Amazon MWAA)
- Az Amazon Web Services
- an
- analitika
- és a
- Bemutatjuk
- bármilyen
- Apache
- api
- alkalmazható
- VANNAK
- AS
- társult
- At
- megkísérelt
- megkísérlése
- elérhetőség
- elérhető
- AWS
- vissza
- mentés
- Banking
- alap
- BE
- óta
- előtt
- hogy
- BEST
- legjobb gyakorlatok
- között
- Bogár
- Épület
- by
- TUD
- képességek
- eset
- esetek
- okozott
- változik
- megváltozott
- Változások
- szorosan
- felhő
- Felhő natív
- kód
- összehasonlítani
- kompatibilitás
- összeegyeztethető
- teljes
- Befejezett
- kitöltésével
- befejezés
- összetevő
- alkatrészek
- Configuration
- Ellentmondó
- kapcsolatok
- Fontolja
- Konzol
- korlátok
- Konténer
- hozzájárulások
- Konvenció
- kijavítására
- kiadások
- tudott
- országok
- teremt
- készítette
- teremt
- létrehozása
- teremtés
- kritikai
- Jelenlegi
- Jelenleg
- Ügyfelek
- DAG
- dátum
- adatalapú
- adatbázis
- alapértelmezett
- átadó
- Kereslet
- függő
- attól
- bevezetéséhez
- tervezett
- rendeltetési hely
- részlet
- részletek
- Dev
- Fejlesztés
- DevOps
- különböző
- kijelző
- dokumentáció
- állásidő
- hajtott
- alatt
- él
- hatékonyan
- bármelyik
- engedélyezve
- mérnök
- növelése
- fokozás
- biztosítására
- Egész
- teljesen
- Környezet
- környezetek
- hiba
- Eter (ETH)
- esemény
- példa
- példák
- létező
- tapasztalat
- tapasztalt
- feltárása
- nem sikerül
- Kudarc
- Funkció
- Jellemzők
- kevés
- filé
- Fájlok
- Végül
- vezetéknév
- következik
- következő
- A
- ból ből
- funkcionális
- funkcionalitás
- további
- GitHub
- útmutatást
- kellett
- Legyen
- tekintettel
- he
- súlyosan
- segít
- <p></p>
- övé
- történeti
- történelem
- NYITVATARTÁS
- azonban
- HTML
- http
- HTTPS
- if
- kép
- Hatás
- behozatal
- fejlesztések
- in
- Beleértve
- összeférhetetlen
- jelezve
- ipar
- információ
- beavatottak
- telepítése
- helyette
- utasítás
- integráció
- Közbülső
- megszakított
- Bevezetett
- bevezetéséről
- részt
- tárgyak internete
- kérdések
- IT
- ITS
- jpg
- éppen
- a későbbiekben
- legutolsó
- TANUL
- tanulás
- legkevésbé
- könyvtárak
- mint
- Valószínű
- Korlátozott
- vonal
- Lista
- helyileg
- log
- gép
- gépi tanulás
- készült
- fenntartása
- fontos
- csinál
- sikerült
- menedzser
- kezeli
- kézikönyv
- kézzel
- megjelölt
- Mérkőzés
- említett
- Metaadatok
- esetleg
- vándorol
- vándorló
- elvándorlás
- bánja
- Enyhít
- modern
- Modulok
- több
- mozgó
- kell
- nevek
- elnevezési
- bennszülött
- elengedhetetlen
- Szükség
- szükséges
- igények
- hálózatba
- Új
- új funkció
- Új funkciók
- új megoldások
- újonnan
- következő
- Most
- szám
- of
- Régi
- on
- azok
- csak
- nyílt forráskódú
- operátor
- or
- hangszerelés
- érdekében
- Más
- ki
- felett
- áttekintés
- csomag
- csomagok
- teljesít
- teljesített
- fázis
- emelvény
- Plató
- Platón adatintelligencia
- PlatoData
- Plugins
- állás
- gyakorlat
- előkészítése
- jelenlét
- megakadályozza
- előző
- folyamat
- Termékek
- termék menedzser
- Termelés
- Termékek
- igazolt
- ad
- ellátó
- Piton
- kész
- rekord
- régiók
- nyilvántartott
- engedje
- Releases
- cserélni
- kötelező
- követelmények
- Tudástár
- visszaad
- visszatartó
- Visszatér
- visszaszáll
- Kritika
- Szerep
- Tekercs
- Gördülő
- futás
- futás
- Skála
- tervezett
- ütemezés
- zökkenőmentesen
- kiválasztás
- idősebb
- különálló
- vagy szerver
- szolgálja
- Szolgáltatások
- készlet
- kellene
- előadás
- jelentős
- hasonló
- Egyszerű
- egyszerűen
- Méret
- Pillanatkép
- szoftver
- szoftverfejlesztés
- Megoldások
- néhány
- forrás
- Hely
- szakember
- specializálódott
- meghatározott
- stabil
- Színpad
- színpadra állítás
- Kezdve
- Startups
- Államok
- Állapot
- Lépései
- Leállítja
- tárolás
- egyértelmű
- áramvonalas
- Később
- sikeres
- sikeresen
- ilyen
- Támogatott
- Vesz
- cél
- feladatok
- Technológia
- távközlés
- Terraform
- teszt
- Tesztelés
- mint
- hogy
- A
- azok
- Őket
- akkor
- Ott.
- ebből adódóan
- Ezek
- ezt
- idő
- nak nek
- szerszámok
- felső
- vágány
- védjegye
- transzformáló
- átmenet
- kiváltó
- kettő
- ui
- mögöttes
- megért
- Egyesült
- Egyesült Államok
- -ig
- Frissítések
- frissítés
- frissített
- fejlesztések
- használ
- használati eset
- használt
- használó
- segítségével
- hasznosság
- ellenőrzése
- változat
- Látogat
- várjon
- kívánatos
- volt
- Út..
- we
- háló
- webszerver
- webes szolgáltatások
- voltak
- amikor
- ami
- míg
- lesz
- val vel
- nélkül
- Munka
- munkás
- dolgozók
- munkafolyamat
- munkafolyamatok
- dolgozó
- művek
- X
- év
- te
- A te
- zephyrnet