Skalere ut Med Selleri¶
CeleryExecutor
er en av måtene du kan skalere ut antall arbeidere. For dettetil arbeid må du sette Opp En Selleri backend (RabbitMQ, Redis,…) ogendre airflow.cfg
for å peke eksekutorparameteren tilCeleryExecutor
og gi de relaterte Selleriinnstillingene.
for mer informasjon om å sette Opp En Selleri megler, seuttømmende Selleri dokumentasjon om emnet.
Her er noen viktige krav til dine arbeidere:
-
airflow
må installeres, OG CLI må være i banen -
Luftstrømskonfigurasjonsinnstillingene skal være homogene i hele klyngen
-
Operatorer som utføres på arbeideren må ha sine dependenciesmet i denne konteksten. Hvis du for eksempel bruker
HiveOperator
,må hive CLI installeres på den boksen, eller hvis du brukerMySqlOperator
, må Det nødvendige Python-biblioteket være tilgjengelig iPYTHONPATH
på en eller annen måte -
arbeideren må ha tilgang til
DAGS_FOLDER
, og du måsynkronisere filsystemene på egen måte. Et vanlig oppsett ville være å lagre DAGS_FOLDER i Et Git-depot og synkronisere det på tvers av maskiner som bruker chef, Puppet, Ansible eller hva du bruker til å konfigurere maskiner i ditt miljø. Hvis alle boksene har en felles monteringspunkt, har yourpipelines filer delt det skal fungere også
for å sparke av en arbeidstaker, må Du sette Opp Luftstrøm og sparke av arbeiderens underkommando
airflow worker
din arbeidstaker bør begynne å plukke opp oppgaver så snart de blir sparket idens retning.
Merk at du også kan kjøre “Selleriblomst”, et WEBGRENSESNITT bygget på Selleri, for å overvåke dine arbeidere. Du kan bruke snarveiskommandoen airflow flower
til å starte En Flower-webserver.
Vær oppmerksom på at du må ha flower
python-biblioteket allerede installert på systemet ditt. Den anbefalte måten er å installere airflow selleri bundle.
pip install 'apache-airflow'
Noen advarsler:
-
Sørg for å bruke en database støttet resultat backend
-
Sørg for å angi en tidsavbrudd for synlighet som overstiger ETA for din lengste løpende oppgave
-
Aktiviteter kan forbruke ressurser. Kontroller at arbeideren har nok ressurser til å kjøre worker_concurrency-oppgaver
-
Kønavn er begrenset til 256 tegn, men hver megler-backend kan ha sine egne begrensninger