Zephyrnet-logotyp

Introducerar Amazon MWAA större miljöstorlekar | Amazon webbtjänster

Datum:

Amazon Managed Workflows för Apache Airflow (Amazon MWAA) är en hanterad tjänst för Apache luftflöde som effektiviserar installationen och driften av infrastrukturen för att orkestrera datapipelines i molnet. Kunder använder Amazon MWAA för att hantera skalbarhet, tillgänglighet och säkerhet i deras Apache Airflow-miljöer. När de designar mer intensiva, komplexa och ständigt växande pipelines för databehandling har kunder bett oss om ytterligare underliggande resurser för att ge större samtidighet och kapacitet för deras uppgifter och arbetsflöden.

För att ta itu med detta tillkännager vi idag tillgången till större miljöklasser i Amazon MWAA. I det här inlägget dyker vi in ​​i dessa nya XL- och 2XL-miljöers möjligheter, scenarierna de är väl lämpade för och hur du kan ställa in eller uppgradera din befintliga Amazon MWAA-miljö för att dra nytta av de ökade resurserna.

Aktuella utmaningar

När du skapar en Amazon MWAA-miljö, en uppsättning hanterade Amazon Elastic Container Service (Amazon ECS) med AWS Fargate behållare är försedda med definierade virtuella CPU:er och RAM.

När du arbetar med större, komplexa, resurskrävande arbetsbelastningar, eller kör tusentals Regisserad acykliska grafer (DAG) per dag, kan du börja uttömma CPU-tillgänglighet på schemaläggare och arbetare, eller nå minnesgränser hos arbetare. Att köra Apache Airflow i skala lägger proportionellt större belastning på Airflow-metadatadatabasen, vilket ibland leder till CPU- och minnesproblem på den underliggande Amazon Relational Databas Service (Amazon RDS) kluster. En resurssnål metadatadatabas kan leda till att anslutningar avbryts från dina medarbetare, vilket misslyckas med uppgifter i förtid.

För att förbättra prestanda och motståndskraft för dina uppgifter, överväg att följa Apache Airflow bästa praxis till författare DAGs. Som ett alternativ kan du skapa flera Amazon MWAA-miljöer för att distribuera arbetsbelastningar. Detta kräver dock ytterligare ingenjörs- och ledningsinsatser.

Nya miljöklasser

Med dagens release kan du nu skapa XL- och 2XL-miljöer i Amazon MWAA utöver de befintliga miljöklasserna. De har två och fyra gånger så mycket beräkning respektive tre och sex gånger så mycket minne som den nuvarande stora Amazon MWAA-miljöinstansklassen. Dessa instanser lägger till beräkning och RAM linjärt för att direkt förbättra kapacitet och prestanda för alla Apache Airflow-komponenter. Följande tabell sammanfattar miljöförmåga.

. Schemaläggare och Worker CPU / RAM

web server

CPU/RAM

Samtidiga uppgifter DAG Kapacitet
mw1.xlarge 8 vCPU:er / 24 GB 4 vCPU:er / 12 GB 40 uppgifter (standard) Upp till 2000
mw1.2xlarge 16 vCPU:er / 48 GB 8 vCPU:er / 24 GB 80 uppgifter (standard) Upp till 4000

Med introduktionen av dessa större miljöer kommer din Amazon Aurora-metadatadatabas nu att använda större, minnesoptimerade instanser som drivs av AWS Graviton2. Med Graviton2-familjen av processorer får du beräknings-, lagrings- och nätverksförbättringar och minskningen av ditt koldioxidavtryck som erbjuds av AWS-familjen av processorer.

Priser

Amazon MWAA prissättningsdimensioner förblir oförändrade, och du betalar bara för det du använder:

  • Miljöklassen
  • Ytterligare arbetarinstanser
  • Ytterligare schemaläggarinstanser
  • Metadatadatabaslagring förbrukad

Du får nu ytterligare två alternativ i de tre första dimensionerna: XL och 2XL för miljöklass, extra arbetare och schemaläggare. Prissättningen för lagring av metadatadatabas förblir densamma. Hänvisa till Amazon Managed Workflows för Apache Airflow-prissättning för priser och mer information.

Observera Amazon MWAA-prestanda för att planera skalning till större miljöer

Innan du börjar använda de nya miljöklasserna är det viktigt att förstå om du befinner dig i ett scenario som är relaterat till kapacitetsproblem, såsom metadatabas utan minne, eller arbetare eller schemaläggare som körs med hög CPU-användning. Att förstå prestandan för dina miljöresurser är nyckeln till felsökning av kapacitetsproblem. Vi rekommenderar att du följer riktlinjerna som beskrivs i Introduktion av behållare, databas och köanvändningsstatistik för Amazon MWAA-miljön för att bättre förstå tillståndet för Amazon MWAA-miljöer och få insikter för att anpassa storleken på dina instanser.

I följande test simulerar vi ett scenario med hög belastning, använd CloudWatch observerbarhetsstatistik att identifiera vanliga problem och fatta ett välgrundat beslut att planera skalning till större miljöer för att mildra problemen.

Under våra tester körde vi en komplex DAG som dynamiskt skapar över 500 uppgifter och använder externa sensorer för att vänta på att en uppgift slutförs i en annan DAG. Efter att ha kört en Amazon MWAA stor miljöklass med automatisk skalning inställd på maximalt 10 arbetarnoder, märkte vi följande mätvärden och värden i CloudWatch instrumentpanel.

Arbetarnoderna har nått maximal CPU-kapacitet, vilket gör att antalet köade uppgifter fortsätter att öka. Metadatadatabasens CPU-användning har nått en topp på över 65 % kapacitet, och det tillgängliga lediga minnet i databasen har minskat. I den här situationen skulle vi kunna utöka arbetarnoderna ytterligare för att skala, men det skulle belasta metadatadatabasen CPU ytterligare. Detta kan leda till en minskning av antalet arbetardatabasanslutningar och tillgängligt ledigt databasminne.

Med nya miljöklasser kan du skala vertikalt för att öka tillgängliga resurser genom att redigera miljön och välja en högre miljöklass, som visas i följande skärmdump.

Från listan över miljöer väljer vi den som används för detta test. Välja Redigera att navigera till Konfigurera avancerade inställningar sida och välj lämplig miljö för xlarge eller 2xlarge efter behov.

När du har sparat ändringen tar miljöuppgraderingen 20–30 minuter att slutföra. Alla pågående DAG som avbröts under uppgraderingen är schemalagda för ett nytt försök, beroende på hur du konfigurerade omförsöken för dina DAG:er. Du kan nu välja att anropa dem manuellt eller vänta på nästa schemalagda körning.

Efter att vi uppgraderat miljöklassen testade vi samma DAG och observerade att mätvärdena visade förbättrade värden eftersom fler resurser nu finns tillgängliga. Med den här XL-miljön kan du köra fler uppgifter på färre arbetarnoder, och därför fortsatte antalet köade uppgifter att minska. Alternativt, om du har uppgifter som kräver mer minne och/eller CPU, kan du minska uppgifterna per arbetare, men ändå uppnå ett stort antal uppgifter per arbetare med en större miljöstorlek. Till exempel om du har en stor miljö där arbetarnodens CPU är maxad med celery.worker_autoscale (luftflödeskonfigurationen som definierar antalet uppgifter per arbetare) Inställd på 20,20 kan du öka till en XL-miljö och ställa in celery.worker_autoscale till 20,20 på XL, snarare än standard 40 uppgifter per arbetare i en XL-miljö och CPU-belastningen bör minska avsevärt.

Konfigurera en ny XL-miljö i Amazon MWAA

Du kan komma igång med Amazon MWAA i ditt konto och önskad AWS-region med hjälp av AWS Management Console, API eller AWS-kommandoradsgränssnitt (AWS CLI). Om du använder infrastruktur som kod (IaC) kan du automatisera installationen med hjälp av AWS molnformation, den AWS Cloud Development Kit (AWS CDK), eller Terraform-skript.

Amazon MWAA XL och 2XL miljöklasser är tillgängliga idag i alla regioner där Amazon MWAA för närvarande är tillgänglig.

Slutsats

Idag tillkännager vi tillgången till två nya miljöklasser i Amazon MWAA. Med miljöklasser XL och 2XL kan du orkestrera större volymer av komplexa eller resurskrävande arbetsflöden. Om du kör DAG:er med ett stort antal beroenden, kör tusentals DAG:er i flera miljöer, eller i ett scenario som kräver att du använder arbetare kraftigt för beräkning, kan du nu övervinna de relaterade kapacitetsproblemen genom att öka dina miljöresurser på ett fåtal raka steg.

I det här inlägget diskuterade vi funktionerna hos de två nya miljöklasserna, inklusive prissättning och några vanliga problem med resursbegränsningar som de löser. Vi gav vägledning och ett exempel på hur du observerar dina befintliga miljöer för att planera skalning till XL eller 2XL, och vi beskrev hur du kan uppgradera befintliga miljöer för att använda de ökade resurserna.

För ytterligare information och kodexempel på Amazon MWAA, besök Amazon MWAA användarhandbok och Amazon MWAA exempel på GitHub-repo.

Apache, Apache Airflow och Airflow är antingen registrerade varumärken eller varumärken som tillhör Apache Software Foundation i USA och / eller andra länder.


Om författarna

Hernan Garcia är Senior Solutions Architect på AWS baserad i Nederländerna. Han arbetar inom finansbranschen och stöttar företag i deras molnintroduktion. Han brinner för serverlös teknologi, säkerhet och efterlevnad. Han tycker om att umgås med familj och vänner, och att prova nya rätter från olika kök.

Jeetendra Vaidya är en Senior Solutions Architect på AWS, som tar med sin expertis till AI/ML, serverlösa och dataanalysdomäner. Han brinner för att hjälpa kunder med att skapa säkra, skalbara, pålitliga och kostnadseffektiva lösningar.

Sriharsh Adari är Senior Solutions Architect på AWS, där han hjälper kunder att arbeta bakåt från affärsresultat för att utveckla innovativa lösningar på AWS. Under åren har han hjälpt flera kunder med transformationer av dataplattformar över branschvertikaler. Hans kärnkompetens omfattar teknikstrategi, dataanalys och datavetenskap. På fritiden tycker han om att spela sport, titta på tv-program och spela Tabla.

plats_img

Senaste intelligens

plats_img