Pular para o conteúdo principal

Configurar a conectividade Git privada para as pastas Git da Databricks (Repos)

Conheça e configure o servidor proxy Git para pastas Git, que permite que o senhor faça proxy do comando Git das pastas Databricks Git para seus repositórios privados Git que não podem ser acessados pela Internet.

O que é o proxy do servidor Git para as pastas Git da Databricks?

Databricks Git O servidor proxy para pastas Git é um recurso que permite que o senhor faça o proxy do comando Git do seu Databricks workspace para um servidor Git privado. Um servidor Git é privado se não puder ser acessado pela Internet.

O Databricks Git folders (anteriormente Repos) representa seus repositórios Git conectados como pastas. O conteúdo dessas pastas tem controle de versão por meio da sincronização com o repositório Git conectado. Em default, as pastas Git podem ser sincronizadas somente com aquelas acessíveis na Internet. Se o senhor hospedar seu próprio servidor privado Git (como GitHub Enterprise Server, Bitbucket Server ou GitLab self-gerenciar), ou se o servidor Git estiver atrás de um firewall, deverá usar o proxy do servidor Git com pastas Git para fornecer acesso Databricks ao servidor Git e o servidor Git deverá ser acessível a partir do plano Databricks compute .

Como funciona o Git Server Proxy para as pastas Git da Databricks?

Git servidor proxy para Databricks Git pastas proxies Git comando do plano de controle Databricks para um clustering de proxy em execução no seu plano Databricks workspace's compute. Nesse contexto, o clustering de proxy é um clustering configurado para executar um serviço de proxy para Git comando de Databricks Git pastas para seu repositório Git auto-hospedado. O proxy não afeta a arquitetura de segurança do plano de controle do Databricks. Esse serviço proxy recebe o comando Git do plano de controle Databricks e o encaminha para a instância do servidor Git.

O diagrama abaixo ilustra a arquitetura geral do sistema:

Diagrama que mostra como o Git Server Proxy para Databricks Git pastas é configurado para execução a partir do plano compute de um cliente

important

Databricks fornece um Notebook de ativação que o senhor pode executar para configurar a instância do servidor Git para fazer o comando proxy para as pastas Databricks Git. Obtenha o Notebook de capacitação em GitHub. O proxy do servidor Databricks Git foi projetado especificamente para funcionar com a versão do Databricks Runtime incluída no Notebook de configuração. Não atualize a versão Databricks Runtime do clustering de proxy.

Como faço para configurar o Git Server Proxy para as pastas Git da Databricks?

Esta seção descreve como preparar a instância do servidor Git para o proxy do servidor Git, criar o proxy e validar a configuração.

Antes de começar

Antes de ativar o proxy, certifique-se de que:

  • Seu workspace tem o recurso de pastas Databricks Git ativado.
  • A Git instância do servidor pode ser acessada pelo Databricks workspace compute plano do seu VPC e tem HTTPS e acesso pessoal tokens (PATs) ativados.
nota

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

important

Para criar um recurso compute e concluir esta tarefa, o senhor deve ser um administrador workspace com direitos de acesso.

Para configurar a instância do servidor Git:

  1. Conceda ao nó do driver do clustering de proxy acesso ao seu servidor Git.

    Seu servidor Git corporativo pode ter um allowlist de endereços IP a partir dos quais o acesso é permitido.

    1. Para começar, associe um endereço IP de saída estático para o tráfego que se origina do clustering de proxy. Você pode fazer isso configurando um gateway NAT por meio da sub-rede.
    2. Adicione o endereço IP da etapa anterior à lista de permissões do seu servidor Git.
  2. Configure a instância do servidor Git para permitir o transporte HTTPS.

    • Para o GitHub Enterprise, consulte Qual URL remota devo usar na ajuda do GitHub Enterprise.
    • Para o Bitbucket, acesse a página de administração do servidor Bitbucket e selecione as configurações do servidor. Na seção Hospedagem HTTP (S) SCM, ative a caixa de seleção HTTP (S) habilitado .

Etapa 2: execução do Notebook de capacitação

Para ativar o proxy:

  1. Faça login em seu Databricks workspace como administrador do workspace com direitos de acesso para criar um clustering.

  2. Importe este Notebook, que escolhe o menor tipo de instância disponível em seu provedor de nuvem para executar o Git proxy..:

    Notebook: Ativar o proxy do servidor Git para pastas Git do Databricks para conectividade privada do servidor Git em pastas Git.

  3. Clique em Executar tudo para executar o Notebook, que realiza a seguinte tarefa:

    • Cria um único nó compute recurso denominado "Databricks Git Proxy", que não termina automaticamente. Este é o serviço de proxy Git que processará e encaminhará o comando Git do seu servidor Databricks workspace para o seu servidor privado Git.
    • Habilita um sinalizador de recurso que controla se as solicitações de Git em Databricks Git pastas são proxies por meio da instância compute.

    Como prática recomendada, considere a criação de um trabalho simples para executar o recurso Git proxy compute. Pode ser um simples Notebook que imprime ou logs status, como "O serviço de proxy Git está em execução". Defina o Job para execução em intervalos regulares para garantir que o serviço de proxy Git esteja sempre disponível para seus usuários.

nota

A execução de um recurso adicional de longa duração em compute para hospedar o proxy software incorre em DBUs extras. Para minimizar os custos, o Notebook configura o proxy para usar um recurso de nó único compute com um tipo de nó barato. No entanto, talvez o senhor queira modificar as opções do site compute para atender às suas necessidades. Para obter mais informações sobre os preços da instância compute, consulte a calculadoraDatabricks preços.

Etapa 3: Validar a configuração do servidor Git

Para validar a configuração do servidor Git, tente clonar um repositório hospedado no servidor Git privado por meio do clustering de proxy. Um clone bem-sucedido significa que o senhor ativou com êxito o proxy do servidor Git para o seu workspace.

Etapa 4: Criar repositórios Git habilitados para proxy

Depois que os usuários configuram suas credenciais do Git, não são necessárias outras etapas para criar ou sincronizar seus repositórios. Para configurar as credenciais e acessar os repositórios das pastas do Git de forma programática, consulte Configurar credenciais do Git & conectar um repositório remoto à Databricks.

Remover permissões globais de CAN_ATTACH_TO

Um proxy de servidor Git não requer permissão CAN_ATTACH_TO para nenhum usuário. Para evitar que os usuários executem cargas de trabalho arbitrárias no clustering de proxy e causem problemas de confiabilidade, os administradores devem restringir as permissões de ACL no servidor proxy:

  1. Selecione computação na barra lateral e clique no menu Ícone do menu Kebab. kebab ao lado da entrada de computação do Git Server Proxy que está sendo executado:

    Selecione computar na barra lateral, selecione o botão à direita do seu servidor proxy Git compute recurso

  2. Na caixa de diálogo, remova a entrada Pode anexar a para todos os usuários :

    Na caixa de diálogo modal que aparece, clique em X à direita de Todos os usuários, podem anexar a

Solução de problemas

O senhor encontrou um erro ao configurar o proxy do servidor Git para as pastas Git da Databricks? Aqui estão alguns problemas comuns e maneiras de diagnosticá-los de forma mais eficaz.

Lista de verificação para problemas comuns

Antes de começar a diagnosticar um erro, confirme se o senhor concluiu as etapas a seguir:

  • Confirme se o clustering de proxy está sendo executado com este notebook de depuração do servidor proxyGit.
  • Confirme que o senhor é um administrador do site workspace.
  • executar o restante do Notebook de depuração e capturar os resultados. Se o senhor não conseguir depurar o problema ou não vir nenhuma falha relatada no Notebook de depuração, o suporte do Databricks poderá analisar os resultados. O senhor pode exportar e enviar 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, o senhor pode definir uma variável de ambiente específica para dar melhor 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

GIT_PROXY_ENABLE_SSL_VERIFICATION

true/false

Defina isso como false se estiver usando um certificado autoassinado para seu servidor Git privado.

GIT_PROXY_CA_CERT_PATH

Caminho do arquivo (strings)

Defina isso como o caminho para um arquivo de certificado CA usado para verificação de SSL. Exemplo: /FileStore/myCA.pem

GIT_PROXY_HTTP_PROXY

https://<hostname>:<port #>

Defina isso como a URL HTTPS do proxy de firewall da sua rede para tráfego HTTP.

GIT_PROXY_CUSTOM_HTTP_PORT

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 o computador tab em seu Databricks workspace e selecione a configuração compute para seu serviço de proxy Git. Na parte inferior do painel Configuration , expanda Advanced e selecione o ícone Spark tab abaixo dele. Defina uma ou mais dessas variáveis de ambiente adicionando-as à área de texto variável de ambiente .

A página de configuração Databricks compute onde o senhor define as variáveis de ambiente para um proxy Git

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 log deve começar com a linha Data-plane proxy server binding to ('', 8000)…. Se isso não acontecer, isso significa que o servidor proxy não começou corretamente. Tente reiniciar o clustering ou exclua o clustering que o senhor criou e execute o Notebook de ativação novamente.

Se o arquivo log começar com essa linha, revise as declarações log que seguem essa linha para cada solicitação Git iniciada por uma Git operações em Databricks Git pastas.

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.

Mensagens de erro comuns e sua resolução

  • Não foi possível estabelecer uma conexão segura devido a problemas de 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

    Geralmente, isso significa que o senhor está usando um repositório que exige certificados SSL especiais. Verifique o conteúdo do arquivo /databricks/git-proxy/git-proxy.log no clustering do proxy. Se ele disser que a validação do certificado falhou, você deverá adicionar o certificado de autoridade à cadeia de certificados do sistema. Primeiro, extraia o certificado raiz (usando o navegador ou outra opção) e upload para DBFS. Em seguida, edite as pastasGit Git Proxy clustering para usar o GIT_PROXY_CA_CERT_PATH variável de ambiente para apontar para o arquivo de certificado raiz. Para obter mais informações sobre a edição de clustering variável de ambiente, consulte variável de ambiente.

    Depois de concluir essa etapa, reinicie o clustering.

Perguntas frequentes

Como posso saber se o servidor proxy Git está sendo executado no meu workspace?

Importar e executar o notebook de depuração do proxyGit. Os resultados da execução do Notebook mostram se há problemas com o serviço de proxy Git.

Vários espaços de trabalho podem compartilhar um clustering de proxy? O site workspace pode ter vários clusters de proxy?

O senhor precisa de um clustering de proxy por Databricks workspace e não pode compartilhar um em vários espaços de trabalho. O senhor só pode ter um clustering de servidor proxy Git por workspace.

O clustering de proxy poderia rotear apenas partes do tráfego Git?

Todo o tráfego Databricks Git relacionado a pastas Git é roteado por meio do clustering de proxy, mesmo para repositórios públicos Git. Seu Databricks workspace não diferencia entre repositórios com e sem proxy.

O recurso de proxy do Git funciona com outros provedores de servidor corporativo do Git?

Databricks Git As pastas suportam GitHub Enterprise, Bitbucket Server, Azure DevOps Server e GitLab self-gerenciar. Outros provedores de servidores Git empresariais também devem funcionar se estiverem em conformidade com as especificações comuns do Git.

As pastas Databricks Git são compatíveis com a assinatura GPG do commit?

Não.

As pastas Git da Databricks são compatíveis com o transporte SSH para operações Git?

Não. Somente HTTPS é suportado.

Há suporte para o uso de uma porta HTTPS que não sejadefault no servidor Git?

Atualmente, o Notebook de ativação pressupõe que o servidor Git usa a porta HTTPS 443 do site default. O senhor pode definir a variável de ambiente GIT_PROXY_CUSTOM_HTTP_PORT para substituir o valor da porta por um valor preferencial.

A Databricks pode ocultar os URLs do servidor Git que são proxied? Os usuários poderiam inserir os URLs originais do servidor Git em vez de URLs com proxy?

Sim para ambas as perguntas. Os usuários não precisam ajustar seu comportamento para o proxy. Com a implementação atual do proxy, todo o tráfego do Git para as pastas do Git da Databricks é roteado pelo proxy. Os usuários inserem o URL normal do repositório Git, como https://git.company.com/org/repo-name.git.

O recurso faz proxy transparente dos dados de autenticação para o servidor Git?

Sim, o proxy usa a credencial Git do usuário account para se autenticar no servidor Git. O acesso é restrito pelas permissões especificadas na credencial Git do usuário.