Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
APLICA-SE A:
Azure Data Factory
Azure Synapse Analytics
Gorjeta
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Importante
A partir de 1 de janeiro de 2026, já não poderá criar novas instâncias Airflow usando o Workflow Orchestration Manager do ADF. Recomendamos que migre todas as cargas de trabalho do Workflow Orchestration Manager (Apache Airflow no Azure Data Factory) para trabalhos Apache Airflow no Microsoft Fabric antes de 31 de dezembro de 2025.
Para mais informações ou apoio durante a sua migração para o Apache Airflow no Microsoft Fabric, contacte o Suporte da Microsoft.
Pré-requisitos
- Assinatura do Azure: se você não tiver uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar. Crie ou selecione uma instância existente do Data Factory em uma região onde a visualização do Workflow Orchestration Manager é suportada.
- Repositório GitHub: Você precisa acessar um repositório GitHub.
Utilize a interface de utilizador do Workflow Orchestration Manager
Para sincronizar seu repositório GitHub usando a interface do usuário do Workflow Orchestration Manager:
Certifique-se de que seu repositório contenha as pastas e arquivos necessários:
dags/: Para gráficos acíclicos direcionados (também conhecidos como "dags") no Apache Airflow (obrigatório).
Plugins/: Para integrar funcionalidades externas ao Airflow.
Ao criar uma runtime de integração do Workflow Orchestration Manager, selecione Ativar sincronização git no diálogo de configuração do ambiente Airflow.
Selecione um dos seguintes tipos de serviço Git suportados:
- GitHub
- ADO
- GitLab
- Bitbucket
Selecione um tipo de credencial:
Nenhum (para um repositório público): Ao selecionar essa opção, verifique se a visibilidade do repositório é pública. Em seguida, preencha os detalhes:
- Git repo url (obrigatório): A URL de clone para o repositório GitHub que você deseja.
- Ramificação do Git (obrigatório): A ramificação atual, onde o repositório Git desejado está localizado.
Token de acesso pessoal do Git: Depois de selecionar esta opção para um token de acesso pessoal (PAT), preencha os campos restantes com base no tipo de serviço Git selecionado:
- Token de acesso pessoal do GitHub
- Token de acesso pessoal ADO
- Token de acesso pessoal do GitLab
- Token de acesso pessoal Bitbucket
SPN (nome da entidade de serviço): Somente o ADO oferece suporte a esse tipo de credencial. Depois de selecionar essa opção, preencha os campos restantes com base no tipo de serviço Git selecionado:
- URL do repositório Git (obrigatório): A URL de clone para sincronizar o repositório Git.
- Ramificação do Git (obrigatório): A ramificação no repositório a ser sincronizada.
- ID do aplicativo principal de serviço (obrigatório): o ID do aplicativo principal de serviço com acesso ao repositório ADO para sincronização.
- Segredo da entidade de serviço (obrigatório): um segredo gerado manualmente na entidade de serviço cujo valor é usado para autenticar e acessar o repositório ADO.
- ID do locatário da entidade de serviço (obrigatório): A ID do locatário da entidade de serviço.
Preencha os restantes campos com as informações necessárias.
Selecione Criar.
Utilizar a API REST
Para sincronizar seu repositório GitHub usando a API Rest:
Método: PUT
Endereço URL:
https://management.azure.com/subscriptions/<subscriptionid>/resourcegroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<datafactoryName>/integrationruntimes/<airflowEnvName>?api-version=2018-06-01Parâmetros de URI:
Nome Em Necessário Tipo Descrição ID da Subscrição caminho Verdadeiro cadeia (de caracteres) Identificador de subscrição Nome do ResourceGroup caminho Verdadeiro cadeia (de caracteres) Nome do grupo de recursos (padrão Regex: ^[-\w\._\(\)]+$)dataFactoryName caminho Verdadeiro cadeia (de caracteres) Nome do Azure Data Factory (padrão Regex: ^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$airflowEnvName caminho Verdadeiro cadeia (de caracteres) Nome do ambiente do Workflow Orchestration Manager Api-version consulta Verdadeiro cadeia (de caracteres) A versão da API Corpo do pedido (configuração do fluxo de ar):
Nome Tipo Descrição nome cadeia (de caracteres) Nome do ambiente de fluxo de ar propriedades Tipo de propriedade Propriedades de configuração para o ambiente Tipo de propriedades:
Nome Tipo Descrição Tipo cadeia (de caracteres) O tipo de recurso (Fluxo de ar neste cenário) typeProperties tipoPropriedade Airflow Propriedade Type:
Nome Tipo Descrição computeProperties computePropriedade Configuração do tipo de computação usado para o ambiente propriedades do fluxo de ar Propriedade de fluxo de ar Configuração das propriedades de fluxo de ar para o ambiente Propriedade de computação:
Nome Tipo Descrição localização cadeia (de caracteres) O local de tempo de execução da integração do Airflow assume como padrão a região da fábrica de dados. Para criar um tempo de execução de integração em uma região diferente, crie uma nova fábrica de dados na região necessária. computeSize cadeia (de caracteres) O tamanho do nó de computação no qual você deseja que seu ambiente Airflow seja executado. Os exemplos são Grandes ou Pequenos. Três nós são alocados inicialmente. extraNós número inteiro Cada nó extra adiciona mais três trabalhadores. Propriedade do fluxo de ar:
Nome Tipo Descrição versão do Airflow cadeia (de caracteres) Versão suportada Apache Airflow. Por exemplo, 2.4.3. Requisitos de fluxo de ar Array de strings<> Bibliotecas Python que você deseja usar. Por exemplo, ["flask-bcrypy=0.7.1"]. Pode ser uma lista delimitada por vírgula. fluxo de arAmbienteVariáveis Objeto (par Chave/Valor) Variáveis de ambiente que você deseja usar. Por exemplo, { "SAMPLE_ENV_NAME": "test" }. gitSyncProperties gitSyncProperty Propriedades de configuração do Git. ativarIntegraçãoAAD boolean Permite que o Microsoft Entra ID inicie sessão no Workflow Orchestration Manager. nome de utilizador string ou null Nome de usuário para autenticação básica. palavra-passe string ou null Senha para autenticação básica. Propriedade de sincronização do Git:
Nome Tipo Descrição gitServiceType cadeia (de caracteres) O serviço Git onde o repositório desejado está localizado. Os valores são GitHub, ADO, GitLab ou Bitbucket. gitCredentialType cadeia (de caracteres) Tipo de credencial Git. Os valores são PAT (para token de acesso pessoal), SPN (suportado apenas pelo ADO) e Nenhum. repositório cadeia (de caracteres) Link do repositório. ramificar cadeia (de caracteres) Ramificação a ser usada no repositório. nome de utilizador cadeia (de caracteres) Nome de usuário do GitHub. Credencial cadeia (de caracteres) Valor do PAT. ID do inquilino cadeia (de caracteres) O identificador do locatário principal de serviço (suportado apenas pelo ADO). Respostas:
Nome Código de estado Tipo Descrição Aceite 200 Fábrica OK Não autorizado 401 Erro da Cloud Matriz com mais detalhes de erro
Exemplos
Analise os exemplos a seguir.
Pedido de amostra
HTTP
PUT https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/abnarain-rg/providers/Microsoft.DataFactory/factories/ambika-df/integrationruntimes/sample-2?api-version=2018-06-01
Corpo da amostra:
{
"name": "sample-2",
"properties": {
"type": "Airflow",
"typeProperties": {
"computeProperties": {
"location": "East US",
"computeSize": "Large",
"extraNodes": 0
},
"airflowProperties": {
"airflowVersion": "2.4.3",
"airflowEnvironmentVariables": {
"AIRFLOW__TEST__TEST": "test"
},
"airflowRequirements": [
"apache-airflow-providers-microsoft-azure"
],
"enableAADIntegration": true,
"userName": null,
"password": null,
"airflowEntityReferences": []
}
}
}
}
Exemplo de resposta:
Status code: 200 OK
Corpo da resposta:
{
"id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/your-rg/providers/Microsoft.DataFactory/factories/your-df/integrationruntimes/sample-2",
"name": "sample-2",
"type": "Microsoft.DataFactory/factories/integrationruntimes",
"properties": {
"type": "Airflow",
"typeProperties": {
"computeProperties": {
"location": "East US",
"computeSize": "Large",
"extraNodes": 0
},
"airflowProperties": {
"airflowVersion": "2.4.3",
"pythonVersion": "3.8",
"airflowEnvironmentVariables": {
"AIRFLOW__TEST__TEST": "test"
},
"airflowWebUrl": "https://e57f7409041692.eastus.airflow.svc.datafactory.azure.com/login/",
"airflowRequirements": [
"apache-airflow-providers-microsoft-azure"
],
"airflowEntityReferences": [],
"packageProviderPath": "plugins",
"enableAADIntegration": true,
"enableTriggerers": false
}
},
"state": "Initial"
},
"etag": "3402279e-0000-0100-0000-64ecb1cb0000"
}
Aqui estão alguns exemplos de carga útil da API:
Propriedades de sincronização do Git para o GitHub com PAT:
"gitSyncProperties": { "gitServiceType": "Github", "gitCredentialType": "PAT", "repo": <repo url>, "branch": <repo branch to sync>, "username": <username>, "credential": <personal access token> }Propriedades de sincronização do Git para ADO com PAT:
"gitSyncProperties": { "gitServiceType": "ADO", "gitCredentialType": "PAT", "repo": <repo url>, "branch": <repo branch to sync>, "username": <username>, "credential": <personal access token> }Propriedades de sincronização do Git para ADO com entidade de serviço:
"gitSyncProperties": { "gitServiceType": "ADO", "gitCredentialType": "SPN", "repo": <repo url>, "branch": <repo branch to sync>, "username": < service principal app id >, "credential": <service principal secret value> "tenantId": <service principal tenant id> }Propriedades de sincronização do Git para um repositório público do GitHub:
"gitSyncProperties": { "gitServiceType": "Github", "gitCredentialType": "None", "repo": <repo url>, "branch": <repo branch to sync> }
Importar um pacote privado com a sincronização do Git
Este processo opcional só se aplica quando utiliza pacotes privados.
Esse processo pressupõe que o seu pacote privado foi sincronizado automaticamente via sincronização Git. Você adiciona o pacote como um requisito na interface do Workflow Orchestration Manager, junto com o prefixo do caminho /opt/airflow/git/\<repoName\>/, se estiver se conectando a um repositório ADO. Use /opt/airflow/git/\<repoName\>.git/ para todos os outros serviços do Git.
Por exemplo, se seu pacote privado estiver em /dags/test/private.whl um repositório GitHub, você deverá adicionar o requisito /opt/airflow/git/\<repoName\>.git/dags/test/private.whl no ambiente do Workflow Orchestration Manager.