Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3
Questa pagina descrive come installare plug-in personalizzati in Cloud Composer completamente gestito di Google Cloud.
Il gestore dei plug-in di Apache Airflow consente di scrivere internamente Operatori, hook, sensori o interfacce di Apache Airflow. Per ulteriori informazioni, consulta l'articolo sui plug-in personalizzati. nella documentazione di Airflow.
Informazioni sui plug-in personalizzati
Quando crei un ambiente, Cloud Composer
crea un bucket Cloud Storage e lo associa
del bucket con il tuo ambiente. Usi la cartella plugins
nel
del bucket dell'ambiente per installare plug-in personalizzati.
Prima di iniziare
- Il tuo account deve avere un ruolo che consenta la visualizzazione e la modificando i contenuti dei bucket dell'ambiente.
- Questo metodo di installazione si applica solo a: Plug-in Airflow. Ad esempio, non possono utilizzare questo metodo per installare moduli Python comuni o altre librerie.
- I plug-in devono essere conformi Il modello di plug-in Airflow linee guida.
Installa un plug-in
Per installare un plug-in personalizzato nel tuo ambiente Cloud Composer:
copia il codice del plug-in nella cartella plugins
del bucket dell'ambiente.
Per installare un plug-in:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Trova il tuo ambiente e segui il link DAG.
Sali di livello superiore, quindi passa alla cartella
plugins/
.Carica i file dei tuoi plug-in. Per ulteriori informazioni sul caricamento di oggetti, consulta Caricamento di oggetti.
gcloud
Usa questo comando gcloud
:
gcloud composer environments storage plugins import \
--environment ENVIRONMENT_NAME \
--location LOCATION \
--source PATH_TO_LOCAL_FILE \
--destination PATH_IN_SUBFOLDER
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.PATH_TO_LOCAL_FILE
con il percorso del file da caricare.- (Facoltativo)
PATH_IN_SUBFOLDER
con il percorso della sottocartella. Utilizza le funzionalità di l'argomento--destination
per caricare un plug-in in una sottocartella nella cartellaplugins
. In caso contrario, ometti l'argomento--destination
.
Visualizza l'elenco dei plug-in
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Trova il tuo ambiente e segui il link DAG.
Sali di livello superiore, quindi passa alla cartella
plugins/
.Visualizza i file dei plug-in.
gcloud
Usa questo comando gcloud
:
gcloud composer environments storage plugins list \
--environment ENVIRONMENT_NAME \
--location LOCATION
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.
Eliminare un plug-in
Per eliminare un plug-in dal tuo ambiente Cloud Composer,
elimina il codice del plug-in dalla cartella plugins
nel bucket dell'ambiente.
Per eliminare un plug-in:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Trova il tuo ambiente e segui il link DAG.
Sali di livello superiore, quindi passa alla cartella
plugins/
.Elimina i file dei plug-in. Per ulteriori informazioni sull'eliminazione di oggetti, consulta Eliminazione di oggetti.
gcloud
Usa questo comando gcloud
:
gcloud composer environments storage plugins delete \
--environment ENVIRONMENT_NAME \
--location LOCATION \
PLUGIN_TO_DELETE
Scarica plug-in
Per scaricare i plug-in, scegli un'opzione:
Console
Nella console Google Cloud, vai alla pagina Ambienti.
Trova il tuo ambiente e segui il link DAG.
Sali di livello superiore, quindi passa alla cartella
plugins/
.Scarica i file dei plug-in. Per ulteriori informazioni sull'eliminazione di oggetti, consulta la sezione Download di oggetti.
gcloud
Usa questo comando gcloud
:
gcloud composer environments storage plugins export \
--environment ENVIRONMENT_NAME \
--location LOCATION \
--destination PATH_TO_LOCAL_DESTINATION \
--source PATH_IN_FOLDER
Sostituisci:
ENVIRONMENT_NAME
con il nome dell'ambiente.LOCATION
con la regione in cui si trova l'ambiente.PATH_TO_LOCAL_DESTINATION
con la destinazione del file scaricato.- (Facoltativo)
--source
è un'opzione per scaricare un solo plug-in.PATH_IN_FOLDER
è il percorso della cartella.
Disattiva i plug-in dei server web
In Cloud Composer 3, se riscontri problemi con la UI di Airflow, puoi di disattivare i plug-in dei server web senza doverli rimuovere del bucket dell'ambiente.
gcloud
I seguenti argomenti di Google Cloud CLI disattivano e abilitano il server web plug-in:
--no-support-web-server-plugins
: disattiva i plug-in dei server web--support-web-server-plugins
: attiva i plug-in dei server web
Per disattivare i plug-in dei server web, esegui questo comando Comando Google Cloud CLI:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--no-support-web-server-plugins
Per attivare i plug-in dei server web, esegui questo comando Comando Google Cloud CLI:
gcloud beta composer environments update ENVIRONMENT_NAME \
--location LOCATION \
--support-web-server-plugins
Sostituisci quanto segue:
ENVIRONMENT_NAME
: il nome dell'ambienteLOCATION
: la regione in cui si trova l'ambiente
API
Creare una richiesta API
environments.patch
.In questa richiesta:
Nel parametro
updateMask
, specifica la mascheraconfig.software_config.web_server_plugins_mode
.Nel corpo della richiesta, nel campo
web_server_plugins_mode
:- Specifica
PLUGINS_DISABLED
per disattivare i plug-in dei server web. - Specifica
PLUGINS_ENABLED
per attivare i plug-in dei server web.
- Specifica
Esempio (disabilita i plug-in):
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.software_config.web_server_plugins_mode
"config": {
"softwareConfig": {
"web_server_plugins_mode": "PLUGINS_DISABLED"
}
}
Esempio (abilita i plug-in):
// PATCH https://composer.googleapis.com/v1beta1/projects/example-project/
// locations/us-central1/environments/example-environment?updateMask=
// config.software_config.web_server_plugins_mode
"config": {
"softwareConfig": {
"web_server_plugins_mode": "PLUGINS_ENABLED"
}
}
Risoluzione dei problemi relativi ai plug-in
I plug-in causano problemi con la UI di Airflow
Puoi disattivare i plug-in dei server web senza eliminarli. Per maggiori informazioni informazioni, consulta l'articolo Disattivare i plug-in dei server web.
Un plug-in appena caricato non è visibile nella UI di Airflow
Se utilizzi il controllo dell'accesso all'interfaccia utente di Airflow, il nuovo
il plug-in caricato potrebbe non essere visibile nella UI di Airflow. Per risolvere questo problema, chiedi
Amministratore UI di Airflow per configurare l'accesso al plug-in appena caricato
Assegnati il ruolo Admin
nella UI di Airflow.