Configure a conectividade Git privada para pastas Git do Databricks.
Se você hospeda um servidor Git privado (como GitHub Enterprise Server, Bitbucket Server ou GitLab self-gerenciado) ou se o seu servidor Git está atrás de um firewall, você pode usar o proxy do servidor Git para conectar as pastas Git do Databricks aos seus repositórios privados. O proxy encaminha o comando Git do seu workspace Databricks através de um recurso compute para o seu servidor Git privado.
Sobre o proxy do servidor Git
O proxy de servidor Git Databricks para pastas Git permite que você encaminhe comandos Git do seu workspace Databricks para um servidor Git privado que não seja acessível pela internet.
As pastas Git do Databricks representam seus repositórios Git conectados como pastas. O conteúdo dessas pastas é controlado por versão através da sincronização com o repositório Git conectado. Por default, as pastas Git só podem ser sincronizadas com repositórios acessíveis pela internet. Se você hospeda um servidor Git privado ou se o seu servidor Git está atrás de um firewall, você deve usar um proxy de servidor Git com pastas Git. Seu servidor Git deve ser acessível a partir do seu plano compute Databricks .
Como funciona o proxy do servidor Git
Servidor proxy Git para pastas Git Databricks Encaminha comandos Git do plano de controle Databricks para um clusterproxy em execução no plano compute do seu workspace. O cluster proxy está configurado para executar um serviço proxy que recebe comandos Git do plano de controle Databricks e os encaminha para o seu servidor Git . O uso de proxy não afeta a arquitetura de segurança do seu plano de controle do Databricks.
A seguir, ilustra-se a arquitetura geral do sistema:

Databricks fornece um Notebook de habilitação para configurar sua instância do servidor Git para encaminhar comandos para pastas Git Databricks . Obtenha o Notebook de habilitação no GitHub. O proxy do servidor Git Databricks foi projetado para funcionar com a versão Databricks Runtime incluída no notebook de configuração. Não atualize a versão do Databricks Runtime do cluster proxy.
Configurar proxy do servidor Git
Para habilitar a conectividade Git privada para pastas Git Databricks , prepare sua instância do servidor Git , execute o Notebook de habilitação para criar o proxy e valide sua configuração.
Para configurar o proxy do servidor Git:
- Prepare sua instância do servidor Git com endereços IP estáticos e protocolo HTTPS.
- Execução do Notebook de habilitação para criar o cluster proxy.
- Valide sua configuração clonando um repositório.
- Configure as credenciais do Git para os usuários.
Pré-requisitos
Antes de ativar o proxy, verifique o seguinte:
-
Seu workspace tem o recurso de pastas Git Databricks ativado. Consulte Ativar ou desativar pastas Git do Databricks.
-
Sua instância do servidor Git é acessível a partir cloud privada virtual (VPC) do plano compute do seu workspace Databricks e possui HTTPS e access tokens pessoal (PATs) habilitados.
O proxy do servidor Git para Databricks funciona em todas as regiões suportadas pela sua VPC.
Etapa 1: preparar a instância do servidor Git
Para criar um recurso compute e concluir esta tarefa, o senhor deve ser um administrador workspace com direitos de acesso.
Configure seu servidor Git para aceitar conexões do cluster proxy e habilite o transporte HTTPS.
O servidor Git da sua empresa normalmente possui uma lista de endereços IP permitidos para acesso. Para permitir que o nó do driver do cluster proxy acesse seu servidor Git, associe um endereço IP de saída estático para o tráfego originado do seu cluster proxy e adicione-o à lista de permissões do seu servidor Git.
- Associe um endereço IP de saída estático para o tráfego originado do seu cluster proxy configurando um gateway NAT através da sub-rede.
- Adicione o endereço IP da etapa anterior à lista de permissões do seu servidor Git.
Em seguida, configure sua instância do servidor Git para permitir o transporte HTTPS:
- GitHub Enterprise : Consulte "Qual URL remota devo usar?" na ajuda do GitHub Enterprise.
- Bitbucket Server : Na página de administração do servidor Bitbucket, clique em Configurações do servidor e selecione HTTP(S) ativado .
Etapa 2: execução do Notebook de capacitação
Para ativar o proxy:
-
Faça login em seu Databricks workspace como administrador do workspace com direitos de acesso para criar um clustering.
-
Importe este Notebook, que escolherá o tipo de instância mais simples disponível em seu provedor cloud para executar o proxy Git :
-
Clique em Executar tudo para executar o Notebook, que realiza a seguinte tarefa:
- Cria um recurso compute nó único chamado "Databricks Git Proxy" que não é encerrado automaticamente. Este serviço proxy processa e encaminha comandos Git do seu workspace Databricks para o seu servidor Git privado.
- Habilita um parâmetro de recurso que controla se as solicitações Git em pastas Git Databricks são encaminhadas por meio da instância compute .
Como prática recomendada, crie um Job para executar o recurso compute do proxy Git em um programa regular. Isso mantém o serviço de proxy Git disponível para seus usuários.
Executar um recurso compute adicional de longa duração gera um consumo extra de Unidades Databricks (DBUs). Para minimizar custos, o Notebook configura o proxy para usar um recurso compute nó único com um tipo de nó de baixo custo. Modifique as opções compute para atender às suas necessidades. Para informações sobre preços, consulte a calculadora de preçosDatabricks.
Etapa 3: Validar a configuração do servidor Git
Para validar a configuração do seu servidor Git, clone um repositório hospedado em seu servidor Git privado através do cluster proxy. Um clone bem-sucedido confirma que o proxy do servidor Git está funcionando para seu workspace.
Etapa 4: Criar repositórios Git habilitados para proxy
Depois que os usuários configurarem suas credenciais Git , nenhuma outra etapa será necessária para criar ou sincronizar repositórios. Para configurar credenciais e acessar repositórios programaticamente, consulte Configurar credenciais Git e conectar um repo remoto ao Databricks.
Remover permissões globais CAN ATTACH TO
O proxy do servidor Git não requer permissão CAN ATTACH TO para nenhum usuário. Para impedir que os usuários executem cargas de trabalho arbitrárias no cluster proxy, restrinja as permissões da lista de controle de acesso (ACL) do cluster no servidor proxy:
-
Clique em "Calcular" na barra lateral e, em seguida, clique em
Menu de kebab ao lado da entrada compute do Git Server Proxy que você está executando.
-
Clique em Editar permissões .
-
Na caixa de diálogo, remova a entrada "Pode anexar a " para "Todos os usuários" .
Solução de problemas
Esta seção aborda problemas comuns e como diagnosticá-los.
Lista de verificação para problemas comuns
Antes de começar a diagnosticar um erro, confirme o seguinte:
- Seu cluster proxy está em execução com este Notebook de depuração do servidor proxyGit.
- Você é um administrador workspace .
Execute o restante do Notebook de depuração e capture os resultados. Se você não conseguir resolver o problema ou não vir nenhuma falha relatada, o suporte da Databricks poderá analisar os resultados. Exporte e envie o Notebook de depuração como um arquivo DBC, se solicitado.
Alterar a configuração do proxy do Git
Se o seu serviço de proxy Git não estiver funcionando com a configuração default , defina a variável de ambiente para dar suporte à sua infraestrutura de rede.
Use a seguinte variável de ambiente para atualizar a configuração de seu serviço de proxy Git:
Variável de ambiente | Formato | Descrição |
|---|---|---|
|
| Defina isso como |
| Caminho do arquivo (strings) | Defina isso como o caminho para um arquivo de certificado CA usado para verificação de SSL. Exemplo: |
|
| Defina isso como a URL HTTPS do proxy de firewall da sua rede para tráfego HTTP. |
| Número da porta (inteiro) | Defina isso como o número da porta atribuída à porta HTTP do seu servidor Git. |
Para definir essas variáveis de ambiente:
- Acesse a tab "Compute" (Computação) no seu workspace Databricks .
- Selecione a configuração compute para o seu serviço proxy Git .
- Na parte inferior do painel de Configuração , expanda Avançado e selecione a tab Spark .
- Adicione variável de ambiente ao campo variável de ambiente .
Inspecione o site logs no clustering de proxy
O arquivo em /databricks/git-proxy/git-proxy.log no clustering do proxy contém logs que são úteis para fins de depuração.
O arquivo de log deve começar com Data-plane proxy server binding to ('', 8000)…. Caso contrário, o servidor proxy não foi iniciado corretamente. Reinicie o cluster ou exclua o cluster e execute o Notebook de habilitação novamente.
Se o arquivo de log começar com esta linha, revise as mensagens de log subsequentes para cada solicitação Git iniciada por operações Git em pastas Git do Databricks.
Por exemplo:
do_GET: https://server-address/path/to/repo/info/refs?service=git-upload-pack 10.139.0.25 - - [09/Jun/2021 06:53:02] /
"GET /server-address/path/to/repo/info/refs?service=git-upload-pack HTTP/1.1" 200`
Erro logs gravado nesse arquivo pode ser útil para ajudar o senhor ou o Suporte Databricks a depurar problemas.
erros de certificado SSL
Você pode ver o seguinte erro:
https://git.consult-prodigy.com/Prodigy/databricks_test: Secure connection to https://git.consult-prodigy.com/Prodigy/databricks_test could not be established because of SSL problems
Isso geralmente significa que você está usando um repositório que requer certificados SSL especiais. Verifique o arquivo /databricks/git-proxy/git-proxy.log no cluster proxy. Se a validação do certificado falhar, adicione a autoridade certificadora à cadeia de certificados do sistema:
- Extraia o certificado raiz usando seu navegador ou outro método e faça o upload para o sistema de arquivos do Databricks.
- Edite as pastas Git do cluster Git Proxy para definir a variável de ambiente
GIT_PROXY_CA_CERT_PATHpara apontar para o arquivo de certificado raiz. Veja variável de ambiente.
Após concluir esses passos, reinicie o cluster.
Perguntas frequentes
A seguir, apresentamos algumas perguntas frequentes sobre a configuração e o uso do proxy do servidor Git.
Como posso verificar se o proxy Git está em execução?
Importe e execute o Notebook de depuração do proxyGit. Os resultados mostram se há problemas com o serviço de proxy Git.
É possível compartilhar clusters proxy no espaço de trabalho?
Cada workspace Databricks requer seu próprio cluster proxy. Não é possível compartilhar um cluster proxy entre vários espaços de trabalho, e cada workspace pode ter apenas um cluster de servidor proxy Git .
Posso encaminhar apenas parte do tráfego Git através do proxy?
Todo o tráfego relacionado às pastas Git do Databricks é roteado através do cluster proxy, mesmo para repositórios Git públicos. Seu workspace Databricks não diferencia entre repositórios com e sem proxy.
Quais provedores Git são suportados?
As pastas Git Databricks são compatíveis com GitHub Enterprise, Bitbucket Server, Azure DevOps Server e GitLab , com autogerenciamento. Outros fornecedores de servidores Git empresariais também devem funcionar, desde que estejam em conformidade com as especificações comuns do Git.
O GNU Privacy Guard (GPG) oferece suporte à assinatura de commit ?
Não.
O protocolo SSH é suportado?
Não. Somente HTTPS é suportado.
Posso usar uma porta HTTPS diferentedefault ?
O Notebook de ativação pressupõe que seu servidor Git utilize a porta HTTPS default 443. Defina a variável de ambiente GIT_PROXY_CUSTOM_HTTP_PORT para usar uma porta diferente.
Os usuários precisam alterar os URLs do Git para o proxy?
Não. Os usuários inserem o URL normal do repositório Git, como https://git.company.com/org/repo-name.git. Todo o tráfego Git para pastas Git do Databricks é roteado através do proxy de forma transparente.
Como funciona a autenticação com o proxy?
Sim, o proxy usa as credenciais Git do usuário para autenticar no servidor Git. O acesso é restrito pelas permissões especificadas nessa credencial.