Configurar a conectividade Git privada para as pastas Git da Databricks (Repos)
Conheça e configure o proxy do servidor Git para pastas Git, que permite que o senhor faça o proxy do comando Git das pastas Databricks Git para os repositórios locais Git atendidos pelo GitHub Enterprise Server, Bitbucket Server e GitLab self-gerenciar.
Os usuários com um servidor proxy Databricks Git configurado durante a visualização devem atualizar suas permissões de clustering para obter o melhor desempenho. Consulte Remover permissões globais de CAN_ATTACH_TO.
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. Os usuários são desencorajados a atualizar a versão Databricks Runtime do clustering de proxy.
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 local.
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 provedores Git públicos (como GitHub, GitLab, Azure, DevOps e outros). No entanto, se o senhor hospedar seu próprio servidor local Git (como GitHub Enterprise Server, Bitbucket Server ou GitLab self-gerenciar), deverá usar o proxy de servidor Git com as pastas Git para fornecer acesso Databricks ao seu servidor Git. Seu servidor Git deve ser acessível a partir do plano de dados do Databricks (nó do driver).
Se a sua rede corporativa for apenas de acesso privado (VPN) (sem acesso público), o senhor deverá executar um servidor proxy Git para acessar os repositórios Git localizados fora dela e para adicionar pastas Git ao seu espaço de trabalho.
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 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. 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:
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.
Atualmente, um proxy de servidor Git não exige mais a permissão CAN_ATTACH_TO
para todos os usuários. Os administradores com um clustering de proxy existente agora podem modificar a permissão de clustering ACL para ativar esse recurso. Para habilitá-lo:
-
Selecione computação na barra lateral e clique no menu
kebab ao lado da entrada de computação do Git Server Proxy que está sendo executado:
-
Na caixa de diálogo, remova a entrada Pode anexar a para todos os usuários :
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 para as pastas Git da Databricks, 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.
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
O senhor deve ser um administrador no site workspace com direitos de acesso para criar um recurso compute e concluir esta tarefa.
Para configurar a instância do servidor Git:
-
Dê 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.- Associe um endereço IP de saída estático para o tráfego originado do clustering de proxy. Você pode fazer isso enviando o tráfego por proxy por meio de um gateway NAT.
- Adicione o endereço IP da etapa anterior à lista de permissões do seu servidor Git.
-
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:
-
Faça login em seu Databricks workspace como administrador do workspace com direitos de acesso para criar um clustering.
-
Importe este Notebook, que escolhe o menor tipo de instância disponível em seu provedor de nuvem para executar o Git proxy..:
-
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 local 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.
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 servidor proxy 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
Os administradores com um clustering de proxy existente agora podem modificar a permissão de clustering ACL para aproveitar o comportamento de proxy do servidor Git geralmente disponível.
Se o senhor configurou anteriormente o proxy do servidor Git da Databricks com privilégios CAN_ATTACH_TO
, use as etapas a seguir para remover essas permissões:
-
Selecione computação na barra lateral e clique no menu
kebab ao lado da entrada de computação do servidor proxy Git que o senhor está executando:
-
Na caixa de diálogo, remova a entrada Pode anexar a para todos os usuários :
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. (Este é um Notebook diferente do Notebook de habilitação do servidor proxy Git, e também é fornecido por Databricks.)
- Confirme que o senhor é um administrador do site workspace.
- Execute o restante do Notebook de depuração e capture os resultados, caso ainda não o tenha feito. 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 fazer alterações e oferecer 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 |
---|---|---|
|
| 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 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 .
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 a seguem para cada solicitação Git iniciada por uma operação Git nas pastas Databricks Git .
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 SLL 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 a variável de ambienteGIT_PROXY_CA_CERT_PATH
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.
-
Falha ao clonar o repositório com o erro "Missing/Invalid Git credentials" (Credenciais Git ausentes/inválidas)
Primeiro, verifique se configurou suas credenciais do Git em User Settings.
Você pode encontrar este erro:
Error: Invalid Git credentials. Go to User Settings -> Git Integration and check that your personal access token or app password has the correct repository access.
Se a sua organização estiver usando SAML SSO, verifique se os tokens foram autorizados (isso pode ser feito na página de gerenciamento de tokens de acesso pessoal (PAT) do servidor Git ).
Perguntas frequentes
Qual é a maneira mais fácil de descobrir se o servidor proxy do Git está em execução?
Importe o notebook de depuração de proxyGit fornecido por Databricks. Faça o download do arquivo em seu computador local e importe-o para o site Databricks workspace.
A execução do Notebook informará se há algum erro ou problema com o serviço de proxy Git.
Quais são as implicações de segurança do proxy do servidor Git?
As coisas mais importantes que você deve saber são:
- O proxy não afeta a arquitetura de segurança do plano de controle do Databricks.
- O senhor só pode ter um clustering de servidor proxy Git por workspace.
Todo o tráfego Databricks Git relacionado a pastas Git é roteado pelo clustering de proxy, mesmo para repositórios públicos Git?
Sim Na versão atual, o site Databricks workspace não faz distinção 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 são compatíveis com 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.
O senhor pode compartilhar um proxy para vários espaços de trabalho ou precisa de um clustering de proxy por workspace?
O senhor precisa de um clustering de proxy por Databricks workspace.
O proxy funciona com o controle de versão de um único notebook legado?
Não, o proxy não funciona com o controle de versão de um único notebook legado. Os usuários devem migrar para o controle de versão das pastas do Databricks Git.
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
.
Com que frequência os usuários trabalharão com os URLs do Git?
Normalmente, um usuário apenas adicionaria a URL do Git ao criar um novo repositório ou fazer check-out de um repositório existente que ainda não tenha sido verificado.
O recurso faz proxy transparente dos dados de autenticação para o servidor Git?
Sim, o proxy usa os tokens do servidor do usuário account Git para se autenticar no Git servidor.
A Databricks tem acesso ao código do servidor Git?
O serviço de proxy da Databricks acessa o repositório Git no servidor Git usando a credencial fornecida pelo usuário e sincroniza todos os arquivos de código no repositório com a pasta Git. O acesso é restrito pelas permissões especificadas nos tokens de acesso pessoal (PAT) fornecidos pelo usuário.