Looker PSC Northbound Regional Internal L7 ALB

1. Wprowadzenie

W tym laboratorium kodu utworzysz regionalny system równoważenia obciążenia aplikacji L7 i backend Private Service Connect, aby uzyskać dostęp do Lookera. Dostęp do Lookera z poziomu klienta wymaga dodania VPC dla konsumentów do listy dozwolonych w instancji PSC Lookera.

Private Service Connect to funkcja sieci Google Cloud, która umożliwia użytkownikom dostęp do usług zarządzanych z poziomu ich sieci VPC. Podobnie pozwala producentom usług zarządzanych hostować te usługi w swoich własnych oddzielnych sieciach VPC i oferować prywatne połączenie swoim klientom. Jeśli na przykład używasz Private Service Connect, aby uzyskać dostęp do Lookera, to Ty jesteś konsumentem usługi, a Google jest producentem usługi, jak pokazano na rysunku 1.

Rysunek 1.

145ea4672c3a3b14.png

Dostęp z południa, zwany też odwrotnym PSC, umożliwia konsumentowi utworzenie opublikowanej usługi jako producenta, aby umożliwić dostęp do punktów końcowych w sieci lokalnej, w sieci VPC, do usług zarządzanych i do Internetu. Połączenia wychodzące można wdrażać w dowolnym regionie, niezależnie od tego, gdzie wdrożono usługę Looker PSC, jak pokazano na rysunku 2.

Rysunek 2.

3edfcc67e195d082.png

Czego się nauczysz

  • Wymagania związane z siecią
  • Zaktualizuj listę dozwolonych Lookera na potrzeby dostępu z poziomu klienta
  • Tworzenie zaplecza Private Service Connect w sieci VPC konsumenta
  • Certyfikaty Google a certyfikaty podpisane samodzielnie

Czego potrzebujesz

def88091b42bfe4d.png

2. Co utworzysz

Utworzysz sieć dla konsumentów na liście dozwolonych, looker-psc-demo, aby wdrożyć regionalny wewnętrzny przełącznik aplikacji L7 i NEG backend PSC, który wymaga certyfikatu Google lub samodzielnie zarządzanego. Aby uzyskać więcej informacji, zapoznaj się z stroną podsumowania przełącznika aplikacji i certyfikatu.

3. Wymagania związane z siecią

Poniżej znajdziesz zestawienie wymagań dotyczących sieci:

Komponenty

Opis

VPC (looker-psc-demo)

Sieć VPC w trybie niestandardowym

Podsieć grupy punktów końcowych sieci PSC

Służy do przydzielania adresu IP grupie punktów końcowych sieci.

Podsieć tylko-proxy

Każdemu proxy systemu równoważenia obciążenia przypisany jest wewnętrzny adres IP. Pakiety wysyłane z serwera proxy do maszyny wirtualnej lub punktu końcowego backendu mają źródłowy adres IP z podsieci tylko-proxy.

Usługa backendu

Usługa backendu pełni funkcję łącznika między systemem równoważenia obciążenia a zasobami backendu. W samouczku usługa backendu jest powiązana z NEG PSC.

4. Topologia ćwiczenia z programowania

2f6bb87ef0e139b2.png

5. Konfiguracja i wymagania

Konfiguracja środowiska w samodzielnym tempie

  1. Zaloguj się w konsoli Google Cloud i utwórz nowy projekt lub użyj istniejącego. Jeśli nie masz jeszcze konta Gmail ani Google Workspace, musisz je utworzyć.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Nazwa projektu to wyświetlana nazwa uczestników tego projektu. Jest to ciąg znaków, którego nie używają interfejsy API Google. Zawsze możesz ją zaktualizować.
  • Identyfikator projektu jest niepowtarzalny we wszystkich projektach Google Cloud i nie można go zmienić (po ustawieniu). Konsola Cloud automatycznie generuje unikalny ciąg znaków. Zwykle nie ma znaczenia, jaki to ciąg. W większości laboratoriów z kodem musisz podać identyfikator projektu (zwykle oznaczony jako PROJECT_ID). Jeśli nie podoba Ci się wygenerowany identyfikator, możesz wygenerować inny losowy. Możesz też spróbować użyć własnego adresu e-mail, aby sprawdzić, czy jest on dostępny. Po wykonaniu tego kroku nie można go zmienić. Pozostanie on na stałe w ramach projektu.
  • Informacyjnie: istnieje jeszcze 3 wartość, numer projektu, której używają niektóre interfejsy API. Więcej informacji o wszystkich 3 wartościach znajdziesz w dokumentacji.
  1. Następnie musisz włączyć rozliczenia w konsoli Cloud, aby korzystać z zasobów i interfejsów API Cloud. Przejście przez ten samouczek nie będzie wiązać się z wysokimi kosztami, a być może nawet nie będzie trzeba nic płacić. Aby wyłączyć zasoby i uniknąć obciążenia opłatami po zakończeniu samouczka, możesz usunąć utworzone zasoby lub usunąć projekt. Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.

Uruchomienie Cloud Shell

Google Cloud można obsługiwać zdalnie z laptopa, ale w tym przypadku będziesz korzystać z Google Cloud Shell, czyli środowiska wiersza poleceń działającego w chmurze.

W konsoli Google Cloud kliknij ikonę Cloud Shell na pasku narzędzi w prawym górnym rogu:

55efc1aaa7a4d3ad.png

Uzyskanie dostępu do środowiska i połączenie się z nim powinno zająć tylko kilka chwil. Po jego zakończeniu powinno wyświetlić się coś takiego:

7ffe5cbb04455448.png

Ta maszyna wirtualna zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie poprawia wydajność sieci i uwierzytelnianie. Wszystkie zadania w tym CodeLab możesz wykonać w przeglądarce. Nie musisz niczego instalować.

6. Zanim zaczniesz

Włącz interfejsy API

W Cloud Shell sprawdź, czy identyfikator projektu jest skonfigurowany:

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region

Włącz wszystkie niezbędne usługi:

gcloud services enable compute.googleapis.com

7. Sieć konsumenta

W następnej sekcji utworzysz sieć dla konsumentów, która zostanie zaktualizowana na liście dozwolonych VPC usługi Looker PSC.

Sieć VPC

W Cloud Shell wykonaj te czynności:

gcloud compute networks create looker-psc-demo --subnet-mode custom

Tworzenie podsieci

W Cloud Shell utwórz podsieć grupy punktów końcowych sieci dla konsumentów:

gcloud compute networks subnets create consumer-psc-neg-subnet --network looker-psc-demo --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

W Cloud Shell utwórz podsieć wewnętrznego systemu równoważenia obciążenia aplikacji:

gcloud compute networks subnets create consumer-ilb-subnet --network looker-psc-demo --range 172.16.40.0/28 --region $region --enable-private-ip-google-access

W Cloud Shell utwórz regionalną podrzędną sieć tylko-proxy dla producenta:

gcloud compute networks subnets create $region-proxy-only-subnet \
  --purpose=REGIONAL_MANAGED_PROXY \
  --role=ACTIVE \
  --region=$region \
  --network=looker-psc-demo \
  --range=10.10.10.0/24

8. Tworzenie domeny niestandardowej

Aby utworzyć domenę niestandardową, wykonaj te czynności:

W przykładzie poniżej looker.cosmopup.com jest domeną niestandardową

5424ce99136d5b3a.png

Przykład OAuth

Poniżej znajdziesz przykład danych uwierzytelniających OAuth dla autoryzowanych źródeł i wywołania zwrotnego dla subdomeny looker.cosmopup.com.

c7e5b8c7d2cc6a01.png

9. Certyfikaty

Możesz utworzyć certyfikaty Compute Engine lub certyfikaty menedżera certyfikatów. Aby utworzyć certyfikaty za pomocą Menedżera certyfikatów, użyj dowolnej z tych metod:

10. Dodawanie sieci VPC do listy dozwolonych przez Looker

Wyświetlanie dozwolonych sieci VPC

W następnej sekcji za pomocą interfejsu Cloud Console wyświetlisz listę dozwolonych sieci VPC dla Looker.

W Cloud Console:

Looker → Instancja Lookera → Szczegóły

Przykład poniżej: na liście dozwolonych sieci VPC nie ma żadnych wpisów:

ad33177a2d721ea7.png

Zaktualizuj listę dozwolonych VPC

Zaktualizuj instancję Lookera, aby obsługiwała dostęp z poziomu klienta, dodając looker-psc-demo jako dozwoloną sieć VPC.

W Cloud Console:

Looker → Instancja Lookera → Edytuj

cbbc069688890b82.png

Połączenia → Dozwolone sieci VPC

Upewnij się, że wybrano projekt, w którym zaimplementowano looker-psc-demo, a następnie VPC looker-psc-demo, a następnie Dalej.

dc931643e1b220a.png

3e26d16d83cceae9.png

Weryfikowanie dozwolonych środowisk VPC

Wyświetlanie zaktualizowanej listy dozwolonych sieci VPC

W Cloud Console:

Looker → Instancja Lookera → Szczegóły

e34664c867929c66.png

11. Tworzenie backendu PSC

PSC Lookera jako producent usługi generuje identyfikator URI załącznika usługi, który jest używany przez konsumentów usługi do wdrażania punktów końcowych i backendów w celu uzyskania dostępu do Lookera. W następnym kroku określisz identyfikator URI załącznika usługi PSC Looker, a następnie utworzysz backend grupy punktów końcowych sieci Private Service Connect (NEG) w sieci VPC konsumenta.

Identyfikowanie załącznika usługi PSC Looker

W Cloud Console przejdź do URI załącznika usługi i skopiuj go:

Looker → Instancja Lookera → Szczegóły

a253f94e946a1eef.png

Utwórz grupę punktów końcowych sieci PSC

W Cloud Shell wykonaj te czynności, pamiętając o zaktualizowaniu psc-target-service:

gcloud compute network-endpoint-groups create looker-northbound-neg \
    --network-endpoint-type=private-service-connect \
    --psc-target-service=[UPDATE WITH YOU LOOKER SERVICE ATTACHMENT URI] \
    --region=$region \
    --network=looker-psc-demo \
    --subnet=consumer-psc-neg-subnet

Przykład:

gcloud compute network-endpoint-groups create looker-northbound-neg \
    --network-endpoint-type=private-service-connect \
 --psc-target-service=projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183 \
    --region=$region \
    --network=looker-psc-demo \
    --subnet=consumer-psc-neg-subnet

Sprawdzanie tworzenia grupy końca sieci PSC

W Cloud Shell wykonaj te czynności, upewniając się, że pscConnectionStatus jest akceptowany:

gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus:

Przykład:

user@cloudshell$ gcloud compute network-endpoint-groups describe looker-northbound-neg --region=$region | grep -i pscConnectionStatus: 
  pscConnectionStatus: ACCEPTED

Tworzenie regionalnego systemu równoważenia obciążenia aplikacji

W kolejnych krokach użyjesz konsoli Cloud do utworzenia regionalnego wewnętrznego systemu równoważenia obciążenia aplikacji, a także do powiązania wygenerowanych certyfikatów z konfiguracją interfejsu.

W Cloud Console:

Usługi sieciowe → Równoważenie obciążenia → Utwórz system równoważenia obciążenia

e3474ca153d7c55a.png

Wybierz te opcje:

c80afa6a28b6d922.png

Tworzenie konfiguracji backendu

Wybierz te opcje i dostosuj środowisko do swoich potrzeb wdrożenia:

  • Region używany do wdrażania infrastruktury sieciowej
  • Sieć: looker-psc-demo
  • Podsieć tylko-proxy jest wypełniana automatycznie na podstawie Twojego regionu i sieci

115627dc54d7a582.png

b3eaa88dd02a95c1.png

cf519145f0259061.png

530527bc9273e002.png

Reguły routingu

Nie wymaga konfiguracji

53a80d74b3c7dd56.png

Konfiguracja frontendu

29faa25397025fb4.png

538da2b4930d243b.png

bbc13e921681dd65.png

Upewnij się, że system równoważenia obciążenia jest włączony, i uzyskaj adres IP.

Cloud Console > Usługi sieciowe > Równoważenie obciążenia > looker-ilb-alb

abc7d02b4c951c73.png

12. rozpoznawanie nazw DNS

Rozpoznawanie nazwy serwera DNS w domenie niestandardowej może być autorytatywne na potrzeby lokalnych serwerów lub serwerów Cloud DNS. W tym samouczku zdefiniujemy Cloud DNS jako autorytatywny serwer w przypadku domeny niestandardowej Lookera. Włączanie rozpoznawania nazw DNS GCP w sieci lokalnej wymaga włączenia zasad serwera przychodzącego. Gdy tworzysz zasadę przychodzącego serwera, Cloud DNS tworzy punkty wejścia zasad przychodzącego serwera w sieci VPC, w której zastosowano zasadę serwera. Punkty wejścia reguł serwera przychodzącego to wewnętrzne adresy IPv4 pochodzące z podstawowego zakresu adresów IPv4 każdej podsieci w danej sieci VPC, z wyjątkiem podsieci przeznaczonych tylko do serwerów proxy.

W następnej sekcji utworzymy strefę DNS prywatnej domeny Looker (looker.cosmopup.com) oraz rekord A z adresem IP równoważnika obciążenia.

13. Tworzenie prywatnej strefy DNS

W Cloud Shell utwórz prywatną strefę Cloud DNS.

gcloud dns --project=$projectid managed-zones create looker-cosmopup-dns --description="" --dns-name="looker.cosmopup.com." --visibility="private" --networks="https://compute.googleapis.com/compute/v1/projects/$projectid/global/networks/looker-psc-demo"

W Cloud Shell utwórz rekord A z adresem IP systemu równoważenia obciążenia uzyskanym w poprzednim kroku.

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="<insert-your-ip>"

Przykład:

gcloud dns --project=$projectid record-sets create looker.cosmopup.com. --zone="looker-cosmopup-dns" --type="A" --ttl="300" --rrdatas="172.16.20.7"

Następnie musisz skonfigurować sieć hybrydową (np. połączenie międzysieciowe lub sieć VPN o wysokiej dostępności) między siecią VPC looker-psc-demo a siecią lokalną, aby umożliwić połączenie.

Poniżej znajdziesz instrukcje konfigurowania połączenia hybrydowego NEG z siecią lokalną:

Otwieranie interfejsu Looker

Teraz, gdy system równoważenia obciążenia działa, możesz uzyskać dostęp do niestandardowej domeny Looker w przeglądarce. Pamiętaj, że w zależności od typu używanego certyfikatu (np. zaufanego lub nie zaufanego) możesz zobaczyć ostrzeżenie.

Poniżej znajdziesz przykład (niezaufanego certyfikatu) dostępu do domeny niestandardowej Lookera looker.cosmopup.com, która uzyskuje dostęp do interfejsu Lookera:

ae43d0d0d7136044.png

14. Czyszczenie danych

Aby usunąć komponenty laboratorium z jednego terminala Cloud Shell:

gcloud compute forwarding-rules delete regional-internal-alb-fr --region=$region -q

gcloud compute target-https-proxies delete regional-internal-alb-target-proxy --region=$region -q

gcloud compute url-maps delete regional-internal-alb --region=$region -q

gcloud compute backend-services delete looker-psc-neg-backend-svc --region=$region -q

gcloud compute addresses delete regional-alb-static-ip --region=$region -q

gcloud compute network-endpoint-groups delete looker-northbound-neg --region=$region -q

gcloud compute networks delete looker-psc-demo -q

15. Gratulacje

Gratulacje! Konfiguracja i weryfikacja połączeń wychodzących z serwerem Looker za pomocą domeny klienta i regionalnego wewnętrznego systemu równoważenia obciążenia aplikacji przebiegły pomyślnie.

Utworzyliśmy infrastrukturę dla konsumentów, dowiedzieliśmy się, jak tworzyć PSC NEG i domenę niestandardową, a także poznaliśmy różne opcje certyfikatów. Looker oferuje wiele ekscytujących funkcji.

Cosmopup uważa, że ćwiczenia z programowania są niesamowite.

c911c127bffdee57.jpeg

Co dalej?

Zapoznaj się z tymi ćwiczeniami z programowania

Więcej informacji i filmy

Dokumenty referencyjne