Udostępnij za pośrednictwem


Konfigurowanie prywatnej łączności git dla folderów Git usługi Databricks (Repos)

Dowiedz się więcej na temat serwera proxy usługi Git dla folderów Git usługi Databricks, konfigurowalnej usługi, która umożliwia proxy poleceń Git z folderów git obszaru roboczego usługi Databricks do lokalnych repozytoriów obsługiwanych przez usługę GitHub Enterprise Server, Azure DevOps Server, Bitbucket Server i GitLab.

Uwaga

Użytkownicy z serwerem proxy usługi Git usługi Databricks skonfigurowanym w wersji zapoznawczej powinni uaktualnić uprawnienia klastra w celu uzyskania najlepszej wydajności. Zobacz Usuwanie uprawnień globalnych CAN_ATTACH_TO.

Co to jest serwer proxy serwera Git dla folderów Git usługi Databricks?

Serwer proxy serwera Git usługi Databricks dla folderów Git to funkcja, która umożliwia uruchamianie poleceń usługi Git z obszaru roboczego usługi Azure Databricks do lokalnego serwera Git.

Foldery Git usługi Databricks (dawniej Repos) reprezentują połączone repozytoria Git jako foldery. Zawartość tych folderów jest kontrolowana przez synchronizowanie ich z połączonym repozytorium Git. Domyślnie foldery Git mogą synchronizować się tylko z publicznymi dostawcami usługi Git (takimi jak publiczne usługi GitHub, GitLab, Azure DevOps i inne). Jeśli jednak hostujesz własny lokalny serwer Git (np. GitHub Enterprise Server, Bitbucket Server lub GitLab), musisz użyć serwera proxy serwera Git z folderami Git, aby zapewnić usłudze Databricks dostęp do serwera Git. Serwer Git musi być dostępny z płaszczyzny danych usługi Azure Databricks (węzeł sterownika).

Uwaga

Obecnie foldery Git usługi Databricks mogą zawierać tylko notesy i podfoldery usługi Databricks wraz z określonym zestawem innych typów zasobów. Aby zapoznać się z bieżącą listą obsługiwanych typów zasobów, zobacz Limity i często zadawane pytania dotyczące integracji usługi Git z folderami usługi Databricks Git.

Jak działa serwer proxy usługi Git dla folderów git usługi Databricks?

Serwer proxy usługi Git dla folderów Git usługi Databricks proxy — polecenia git z płaszczyzny sterowania usługi Databricks do "klastra proxy" uruchomionego na płaszczyźnie obliczeniowej obszaru roboczego usługi Databricks. W tym kontekście klaster proxy jest klastrem skonfigurowanym do uruchamiania usługi proxy dla poleceń git z folderów Usługi Git usługi Databricks do własnego repozytorium Git. Ta usługa proxy odbiera polecenia Git z płaszczyzny sterowania usługi Databricks i przekazuje je do wystąpienia serwera Git.

Na poniższym diagramie przedstawiono ogólną architekturę systemu:

Diagram przedstawiający sposób konfigurowania folderów Git Server Proxy dla usługi Databricks w usłudze Git z płaszczyzny obliczeniowej klienta

Obecnie serwer proxy usługi Git nie wymaga CAN_ATTACH_TO już uprawnień dla wszystkich użytkowników. Administratorzy z istniejącymi klastrami proxy mogą teraz modyfikować uprawnienie listy ACL klastra, aby włączyć tę funkcję. Aby ją włączyć:

  1. Wybierz pozycję Obliczenia na pasku bocznym, a następnie kliknij Menu Kebab menu kebab obok pozycji Obliczenia dla uruchomionego serwera proxy usługi Git Server:

    Wybierz pozycję Obliczenia na pasku bocznym, wybierz kebab z prawej strony zasobu obliczeniowego serwera proxy usługi Git

  2. W oknie dialogowym usuń wpis Can Attach To dla wszystkich użytkowników:

    W wyświetlonym modalnym oknie dialogowym kliknij przycisk X po prawej stronie pozycji Wszyscy użytkownicy, Może dołączyć do

Jak mogę skonfigurować serwer proxy usługi Git dla folderów Git usługi Databricks?

W tej sekcji opisano, jak przygotować wystąpienie serwera Git dla serwera proxy usługi Git dla folderów git usługi Databricks, utworzyć serwer proxy i zweryfikować konfigurację.

Zanim rozpoczniesz

Przed włączeniem serwera proxy należy wziąć pod uwagę następujące wymagania wstępne i zadania planowania:

  • Obszar roboczy ma włączoną funkcję folderów Git usługi Databricks.
  • Wystąpienie serwera Git jest dostępne z poziomu VPC płaszczyzny obliczeniowej obszaru roboczego usługi Azure Databricks i ma włączone zarówno tokeny HTTPS, jak i osobiste tokeny dostępu (PATs).

Uwaga

Serwer proxy serwera Git dla usługi Databricks działa we wszystkich regionach obsługiwanych przez VPC.

Krok 1. Przygotowanie wystąpienia serwera Git

Ważne

Aby utworzyć zasób obliczeniowy i wykonać to zadanie, musisz być administratorem obszaru roboczego z uprawnieniami dostępu.

Aby skonfigurować wystąpienie serwera Git:

  1. Nadaj węzłowi sterownika klastra proxy dostęp do serwera Git.

    Serwer Git przedsiębiorstwa może mieć allowlist adresy IP, z których jest dozwolony dostęp.

    1. Skojarz statyczny wychodzący adres IP dla ruchu pochodzącego z klastra proxy. Można to zrobić przy użyciu usługi Azure Firewall lub urządzenia ruchu wychodzącego.
    2. Dodaj adres IP z poprzedniego kroku do listy dozwolonych serwera Git.
  2. Ustaw wystąpienie serwera Git, aby zezwolić na transport HTTPS.

    • W przypadku usługi GitHub Enterprise zobacz Temat Którego zdalnego adresu URL powinienem używać w pomocy usługi GitHub Enterprise.
    • W polu Bitbucket przejdź do strony administracyjnej serwera Bitbucket i wybierz ustawienia serwera. W sekcji Hosting SCM protokołu HTTP włącz pole wyboru Włączone protokoły HTTP(S).

Krok 2. Uruchamianie notesu włączania

Aby włączyć serwer proxy:

  1. Zaloguj się do obszaru roboczego usługi Azure Databricks jako administrator obszaru roboczego z uprawnieniami dostępu, aby utworzyć klaster.

  2. Zaimportuj ten notes, który wybiera najmniejszy typ wystąpienia dostępny u dostawcy usług w chmurze, aby uruchomić serwer proxy Git.

    Notes: włącz serwer proxy serwera Git dla folderów Git usługi Databricks na potrzeby łączności prywatnego serwera Git w folderach Git.

  3. Kliknij pozycję "Uruchom wszystko", aby uruchomić notes, który wykonuje następujące zadania:

    • Tworzy zasób obliczeniowy z jednym węzłem o nazwie "Databricks Git Proxy", który nie kończy się automatycznie. Jest to "usługa serwera proxy Git", która będzie przetwarzać polecenia Git i przekazywać je z obszaru roboczego usługi Azure Databricks do lokalnego serwera Git.
    • Włącza flagę funkcji, która kontroluje, czy żądania Git w folderach Usługi Git usługi Databricks są kierowane za pośrednictwem wystąpienia obliczeniowego.

    Najlepszym rozwiązaniem jest utworzenie prostego zadania uruchamiania zasobu obliczeniowego serwera proxy usługi Git. Może to być prosty notes, który drukuje lub rejestruje stan, taki jak "Usługa serwera proxy Git jest uruchomiona". Ustaw zadanie do uruchamiania w regularnych odstępach czasu, aby upewnić się, że usługa serwera proxy Git jest zawsze dostępna dla użytkowników.

Uwaga

Uruchomienie dodatkowego długotrwałego zasobu obliczeniowego do hostowania oprogramowania proxy wiąże się z dodatkowymi jednostkami DBU. Aby zminimalizować koszty, notes konfiguruje serwer proxy do używania zasobu obliczeniowego z jednym węzłem z niedrogim typem węzła. Możesz jednak zmodyfikować opcje obliczeniowe zgodnie z potrzebami. Aby uzyskać więcej informacji na temat cen wystąpienia obliczeniowego, zobacz kalkulator cen usługi Databricks.

Krok 3. Weryfikowanie konfiguracji serwera Git

Aby zweryfikować konfigurację serwera Git, spróbuj sklonować repozytorium hostowane na prywatnym serwerze Git za pośrednictwem klastra proxy. Pomyślne sklonowanie oznacza, że serwer proxy serwera Git został pomyślnie włączony dla obszaru roboczego.

Krok 4. Tworzenie repozytoriów z obsługą serwera proxy

Po skonfigurowaniu poświadczeń usługi Git żadne dalsze kroki nie są wymagane do utworzenia ani zsynchronizowania repozytoriów. Aby skonfigurować poświadczenia i utworzyć repozytorium w folderach Usługi Git usługi Databricks, zobacz Konfigurowanie poświadczeń usługi Git i łączenie repozytorium zdalnego z usługą Azure Databricks.

Usuwanie uprawnień globalnych CAN_ATTACH_TO

Administratorzy z istniejącymi klastrami proxy mogą teraz modyfikować uprawnienie listy ACL klastra, aby korzystać z ogólnie dostępnego zachowania serwera proxy serwera Git.

Jeśli wcześniej skonfigurowano serwer proxy usługi Git usługi Databricks z uprawnieniami CAN_ATTACH_TO , wykonaj następujące kroki, aby usunąć te uprawnienia:

  1. Wybierz pozycję Obliczenia na pasku bocznym, a następnie kliknij Menu Kebab menu kebab obok pozycji Obliczenia dla uruchomionego serwera proxy serwera Git:

    Wybierz pozycję Obliczenia na pasku bocznym, wybierz kebab z prawej strony zasobu obliczeniowego serwera proxy usługi Git

  2. W oknie dialogowym usuń wpis Can Attach To dla wszystkich użytkowników:

    W wyświetlonym modalnym oknie dialogowym kliknij przycisk X po prawej stronie pozycji Wszyscy użytkownicy, Może dołączyć do

Rozwiązywanie problemów

Czy wystąpił błąd podczas konfigurowania serwera proxy usługi Git dla folderów Git usługi Databricks? Poniżej przedstawiono kilka typowych problemów i sposobów ich skuteczniejszego diagnozowania.

Lista kontrolna typowych problemów

Przed rozpoczęciem diagnozowania błędu upewnij się, że zostały wykonane następujące kroki:

  • Upewnij się, że klaster proxy jest uruchomiony.
  • Upewnij się, że użytkownicy folderów Git usługi Databricks mają uprawnienia "dołącz do" w klastrze proxy.
  • Uruchom ponownie notes włączania i przechwyć wyniki, jeśli jeszcze tego nie zrobiono. Jeśli nie możesz debugować problemu, pomoc techniczna usługi Databricks może przejrzeć wyniki. Notes włączania można wyeksportować i wysłać jako archiwum DBC.

Inspekcja dzienników w klastrze proxy

Plik w witrynie w /databricks/git-proxy/git-proxy.log klastrze proxy zawiera dzienniki, które są przydatne do celów debugowania.

Plik dziennika powinien zaczynać się od wiersza Data-plane proxy server binding to ('', 8000)… Jeśli tak nie jest, oznacza to, że serwer proxy nie został poprawnie uruchomiony. Spróbuj ponownie uruchomić klaster lub usunąć utworzony klaster i ponownie uruchomić notes włączania.

Jeśli plik dziennika rozpoczyna się od tego wiersza, przejrzyj instrukcje dziennika, które są zgodne z instrukcjami dla każdego żądania Git zainicjowanego przez operację git w folderach Git usługi Databricks.

Na przykład:

  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`

Dzienniki błędów zapisane w tym pliku mogą być przydatne, aby pomóc w rozwiązywaniu problemów z debugowaniem w usłudze Databricks.

Typowe komunikaty o błędach i ich rozwiązanie

  • Nie można ustanowić bezpiecznego połączenia z powodu problemów z protokołem SSL

    Może zostać wyświetlony następujący błąd:

      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
    

    Często oznacza to, że używasz repozytorium, które wymaga specjalnych certyfikatów SSL. Sprawdź zawartość /databricks/git-proxy/git-proxy.log pliku w klastrze proxy. Jeśli oznacza to, że weryfikacja certyfikatu nie powiodła się, należy dodać certyfikat urzędu do łańcucha certyfikatów systemowych. Najpierw wyodrębnij certyfikat główny (przy użyciu przeglądarki lub inną opcję) i przekaż go do systemu plików DBFS. Następnie zmodyfikuj klaster serwera proxy Git folderów Git, aby użyć GIT_PROXY_CA_CERT_PATH zmiennej środowiskowej, aby wskazać plik certyfikatu głównego. Aby uzyskać więcej informacji na temat edytowania zmiennych środowiskowych klastra, zobacz Zmienne środowiskowe.

    Po zakończeniu tego kroku uruchom ponownie klaster.

    Modalne okno dialogowe usługi Databricks, w którym ustawiasz zmienne środowiskowe dla serwera proxy usługi Git

  • Nie można sklonować repozytorium z powodu błędu "Brakujące/nieprawidłowe poświadczenia git"

    Najpierw sprawdź, czy poświadczenia usługi Git zostały skonfigurowane w obszarze Ustawienia użytkownika.

    Ten błąd może wystąpić:

      Error: Invalid Git credentials. Go to User Settings -> Git Integration and check that your personal access token or app password has the correct repo access.
    

    Jeśli Twoja organizacja korzysta z logowania jednokrotnego SAML, upewnij się, że token został autoryzowany (można to zrobić na stronie zarządzania osobistym tokenem dostępu (PAT) serwera Git.

Często zadawane pytania

Jakie są implikacje zabezpieczeń serwera proxy serwera Git?

Najważniejsze rzeczy, które należy znać, to:

  • Serwer proxy nie ma wpływu na architekturę zabezpieczeń płaszczyzny sterowania usługi Databricks.
  • W każdym obszarze roboczym można mieć tylko jeden klaster serwera proxy Usługi Git.

Tak. W bieżącej wersji obszar roboczy usługi Azure Databricks nie rozróżnia repozytoriów proxied i innych niż proxied.

Czy funkcja serwera proxy Usługi Git współpracuje z innymi dostawcami serwerów przedsiębiorstwa Git?

Foldery Git usługi Databricks obsługują usługi GitHub Enterprise, Bitbucket Server, Azure DevOps Server i GitLab samodzielnie zarządzane. Inni dostawcy serwerów Git w przedsiębiorstwie powinni również pracować, jeśli są zgodni z typowymi specyfikacjami usługi Git.

Czy foldery Git usługi Databricks obsługują podpisywanie zatwierdzeń w usłudze GPG?

L.p.

Czy foldery Git usługi Databricks obsługują transport SSH na potrzeby operacji git?

L.p. Obsługiwany jest tylko protokół HTTPS.

Czy jest obsługiwany port HTTPS inny niż domyślny na serwerze Git?

Obecnie notes włączania zakłada, że serwer Git używa domyślnego portu HTTPS 443. Możesz ustawić zmienną środowiskową GIT_PROXY_CUSTOM_HTTP_PORT , aby zastąpić wartość portu preferowaną wartością.

Czy można udostępnić jeden serwer proxy dla wielu obszarów roboczych lub czy potrzebujesz jednego klastra proxy na obszar roboczy?

Potrzebujesz jednego klastra proxy dla obszaru roboczego usługi Azure Databricks.

Czy serwer proxy działa ze starszymi wersjami pojedynczego notesu?

Nie, serwer proxy nie działa ze starszymi wersjami pojedynczego notesu. Użytkownicy muszą przeprowadzić migrację do przechowywania wersji folderów Git usługi Databricks.

Czy usługa Databricks może ukryć adresy URL serwera Git, które są proxied? Czy użytkownicy mogą wprowadzać oryginalne adresy URL serwera Git, a nie adresy URL proxied?

Tak w obu pytaniach. Użytkownicy nie muszą dostosowywać swojego zachowania dla serwera proxy. W przypadku bieżącej implementacji serwera proxy cały ruch usługi Git dla folderów Usługi Git usługi Databricks jest kierowany przez serwer proxy. Użytkownicy wprowadzają normalny adres URL repozytorium Git, taki jak https://git.company.com/org/repo-name.git.

Jak często użytkownicy będą pracować z adresami URL usługi Git?

Zazwyczaj użytkownik po prostu doda adres URL usługi Git podczas tworzenia nowego repozytorium lub wyewidencjonowania istniejącego repozytorium, którego jeszcze nie wyewidencjonował.

Czy funkcja w przezroczysty sposób uwierzytelnia dane uwierzytelniania serwera proxy na serwerze Git?

Tak, serwer proxy używa tokenu serwera Git konta użytkownika do uwierzytelniania na serwerze Git.

Czy istnieje dostęp usługi Databricks do kodu serwera Git?

Usługa proxy usługi Azure Databricks uzyskuje dostęp do repozytorium Git na serwerze Git przy użyciu poświadczeń podanych przez użytkownika i synchronizuje wszystkie pliki kodu w repozytorium z repozytorium. Dostęp jest ograniczony przez uprawnienia określone w osobistym tokenie dostępu (PAT) udostępnianym przez użytkownika.