Como criar um plug-in personalizado que gera variáveis de ambiente de runtime
O exemplo a seguir mostra as etapas para criar um plug-in personalizado que gera variáveis de ambiente no runtime em um ambiente Amazon Managed Workflows for Apache Airflow.
Tópicos
Version (Versão)
-
O código de amostra nesta página pode ser usado com o Apache Airflow v1 em Python 3.7
.
Pré-requisitos
Para usar o código de amostra nesta página, você precisará do seguinte:
Permissões
-
Nenhuma permissão adicional é necessária para usar o exemplo de código nesta página.
Requisitos
-
Para usar esse exemplo de código com o Apache Airflow v1, nenhuma dependência adicional é necessária. O código usa a instalação básica do Apache Airflow v1
em seu ambiente.
Plug-in personalizado
O Apache Airflow executará o conteúdo dos arquivos Python na pasta de plugins na inicialização. Isto é usado para definir e modificar variáveis de ambiente. As seguintes etapas descrevem o código de exemplo para o plugin personalizado.
-
No prompt de comando, navegue até o diretório em que seus plugins estão armazenados. Por exemplo:
cd plugins
-
Copie o conteúdo da amostra de código a seguir e salve localmente como
env_var_plugin.py
no arquivo acima..from airflow.plugins_manager import AirflowPlugin import os os.environ["PATH"] = os.getenv("PATH") + ":/usr/local/airflow/.local/lib/python3.7/site-packages" os.environ["JAVA_HOME"]="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.amzn2.0.1.x86_64" class EnvVarPlugin(AirflowPlugin): name = 'env_var_plugin'
Plugins.zip
As etapas a seguir mostram como criar plugins.zip
. O conteúdo deste exemplo pode ser combinado com outros plug-ins e binários em um único arquivo plugins.zip
.
-
Em sua prompt linha de comando, navegue até o diretório
hive_plugin
da etapa anterior. Por exemplo:cd plugins
-
Compacte o conteúdo em sua pasta
plugins
.zip -r ../plugins.zip ./
Opções de configuração do Airflow
Se você estiver usando o Apache Airflow v2, adicione core.lazy_load_plugins : False
como uma opção de configuração do Apache Airflow. Para saber mais, consulte Usar opções de configuração para carregar plug-ins em 2.
Próximas etapas
-
Saiba como fazer o upload do
requirements.txt
arquivo neste exemplo para seu bucket do Amazon S3 em Como instalar dependências do Python. -
Saiba como fazer o upload do código DAG neste exemplo para a pasta
dags
em seu bucket do Amazon S3 em Como adicionar ou atualizar DAGs. -
Saiba mais sobre como fazer o upload do
plugins.zip
arquivo neste exemplo para seu bucket do Amazon S3 em Como instalar plug-ins personalizados.