arrow_back

Podstawy Google Cloud: wprowadzenie do Cloud Storage i Cloud SQL

Sprawdź swoją wiedzę i podziel się nią ze społecznością.
done
Zyskaj dostęp do ponad 700 praktycznych modułów oraz odznak umiejętności i szkoleń

Podstawy Google Cloud: wprowadzenie do Cloud Storage i Cloud SQL

Moduł 1 godz. 15 godz. universal_currency_alt Punkty: 5 show_chart Wprowadzające
info Ten moduł może zawierać narzędzia AI, które ułatwią Ci naukę.
Sprawdź swoją wiedzę i podziel się nią ze społecznością.
done
Zyskaj dostęp do ponad 700 praktycznych modułów oraz odznak umiejętności i szkoleń

Opis

W tym module utworzysz zasobnik Cloud Storage i umieścisz w nim obraz. Poza tym skonfigurujesz aplikację działającą w Compute Engine do korzystania z bazy danych zarządzanej przez Cloud SQL. Na potrzeby tego modułu skonfigurujesz serwer WWW z PHP – środowiskiem programistycznym do tworzenia stron internetowych, które jest podstawą popularnego oprogramowania do pisania blogów. Poza tym modułem będziesz używać analogicznych technik do konfigurowania tych pakietów.

Skonfigurujesz również serwer WWW, aby odwoływał się do obrazu w zasobniku Cloud Storage.

Cele

W tym module nauczysz się wykonywać następujące czynności:

  • tworzenie zasobnika Cloud Storage i umieszczanie w nim obrazu,
  • tworzenie i konfigurowanie instancji Cloud SQL,
  • nawiązywanie połączenia z instancją Cloud SQL z serwera WWW,
  • użycie obrazu znajdującego się w zasobniku Cloud Storage na stronie internetowej.

Zadanie 1. Zaloguj się w konsoli Google Cloud

W przypadku każdego modułu otrzymujesz bezpłatnie i na określony czas nowy projekt Google Cloud oraz zbiór zasobów.

  1. Kliknij przycisk Rozpocznij moduł. Jeśli moduł jest odpłatny, otworzy się wyskakujące okienko, w którym możesz wybrać formę płatności. Po lewej stronie znajduje się panel Szczegóły modułu z następującymi elementami:

    • przyciskiem Otwórz konsolę Google Cloud;
    • czasem, który Ci pozostał;
    • tymczasowymi danymi logowania, których musisz użyć w tym module;
    • innymi informacjami potrzebnymi do ukończenia modułu.
  2. Kliknij Otwórz konsolę Google Cloud (lub kliknij prawym przyciskiem myszy i wybierz Otwórz link w oknie incognito, jeśli korzystasz z przeglądarki Chrome).

    Moduł uruchomi zasoby, po czym otworzy nową kartę ze stroną logowania.

    Wskazówka: otwórz karty obok siebie w osobnych oknach.

    Uwaga: jeśli pojawi się okno Wybierz konto, kliknij Użyj innego konta.
  3. W razie potrzeby skopiuj nazwę użytkownika znajdującą się poniżej i wklej ją w oknie logowania.

    {{{user_0.username | "Username"}}}

    Nazwę użytkownika znajdziesz też w panelu Szczegóły modułu.

  4. Kliknij Dalej.

  5. Skopiuj podane niżej hasło i wklej je w oknie powitania.

    {{{user_0.password | "Password"}}}

    Hasło znajdziesz też w panelu Szczegóły modułu.

  6. Kliknij Dalej.

    Ważne: musisz użyć danych logowania podanych w module. Nie używaj danych logowania na swoje konto Google Cloud. Uwaga: korzystanie z własnego konta Google Cloud w tym module może wiązać się z dodatkowymi opłatami.
  7. Na kolejnych stronach wykonaj następujące czynności:

    • Zaakceptuj Warunki korzystania z usługi.
    • Nie dodawaj opcji odzyskiwania ani uwierzytelniania dwuskładnikowego (ponieważ konto ma charakter tymczasowy).
    • Nie rejestruj się w bezpłatnych wersjach próbnych.

Poczekaj, aż na karcie otworzy się konsola Google Cloud.

Uwaga: aby wyświetlić menu z listą produktów i usług Google Cloud, w lewym górnym rogu kliknij Menu nawigacyjne. Ikona menu nawigacyjnego

Zadanie 2. Wdróż instancję maszyny wirtualnej serwera WWW

  1. W konsoli Google Cloud, w Menu nawigacyjnym (Ikona menu nawigacyjnego), kliknij Compute Engine > Instancje maszyn wirtualnych.

  2. Kliknij Utwórz instancję.

  3. Na stronie Utwórz instancję, w polu Nazwa, wpisz bloghost.

  4. W polach RegionStrefa wybierz region i strefę przypisaną przez Qwiklabs.

  5. W polu Typ maszyny zaakceptuj wartość domyślną.

  6. W sekcji Dysk rozruchowy, jeśli w polu Obraz wyświetlana jest inna wartość niż Debian GNU/Linux 12, kliknij Zmień i wybierz Debian GNU/Linux 11 (bullseye).

  7. Pozostaw bez zmian wartości domyślne w polach Tożsamość i dostęp do interfejsu API.

  8. W sekcji Zapora sieciowa kliknij Zezwalaj na ruch HTTP.

  9. Kliknij Opcje zaawansowane, aby otworzyć tę sekcję okna.

  10. Kliknij Zarządzanie, aby otworzyć tę sekcję okna.

  11. Przewiń w dół do sekcji Automatyzacja i wprowadź następujący skrypt jako wartość pola Skrypt startowy:

apt-get update apt-get install apache2 php php-mysql -y service apache2 restart Uwaga: należy koniecznie wprowadzić ten skrypt jako wartość pola Skrypt startowy. Jeśli przypadkowo zostanie on umieszczony w innym polu, nie zostanie wykonany po uruchomieniu instancji maszyny wirtualnej.
  1. We wszystkich pozostałych polach pozostaw wartości domyślne i kliknij Utwórz.
Uwaga: uruchomienie instancji i jej pełne przygotowanie do użycia może zająć około 2 minut.
  1. Na stronie Instancje maszyn wirtualnych skopiuj wewnętrzny i zewnętrzny adres IP instancji maszyny wirtualnej bloghost do edytora tekstu w celu późniejszego użycia na tej karcie.

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Wdrożenie instancji maszyny wirtualnej serwera WWW

Zadanie 3. Utwórz zasobnik Cloud Storage za pomocą wiersza poleceń gcloud storage

Wszystkie nazwy zasobników Cloud Storage muszą być globalnie unikalne. Aby zapewnić unikalność nazwy zasobnika, instrukcje polecą Ci nadanie mu takiej samej nazwy jak identyfikator Twojego projektu Google Cloud, który jest również globalnie unikalny.

Zasobniki Cloud Storage mogą być powiązane z regionem lub lokalizacją obejmującą wiele regionów: US, EU lub ASIA. W tym ćwiczeniu powiążesz swoje zasobniki z wieloma regionami najbliższymi regionowi i strefie przypisanej przez Qwiklabs lub instruktora.

  1. Na prawym górnym pasku narzędzi konsoli Google Cloud kliknij Aktywuj Cloud Shell Ikona aktywowania Cloud Shell. Jeśli pojawi się okno dialogowe, kliknij Dalej.

  2. Dla wygody wprowadź wybraną lokalizację w zmiennej środowiskowej o nazwie LOCATION. Wpisz jedno z tych poleceń:

export LOCATION=US

lub

export LOCATION=EU

lub

export LOCATION=ASIA
  1. W Cloud Shell zmienna środowiskowa DEVSHELL_PROJECT_ID zawiera identyfikator projektu. Wpisz to polecenie, aby utworzyć zasobnik o nazwie odpowiadającej identyfikatorowi projektu:
gcloud storage buckets create -l $LOCATION gs://$DEVSHELL_PROJECT_ID

Jeśli pojawi się pytanie, kliknij Autoryzuj, aby kontynuować.

  1. Pobierz obraz banera z publicznie dostępnej lokalizacji Cloud Storage:
gcloud storage cp gs://cloud-training/gcpfci/my-excellent-blog.png my-excellent-blog.png
  1. Skopiuj obraz banera do nowo utworzonego zasobnika Cloud Storage:
gcloud storage cp my-excellent-blog.png gs://$DEVSHELL_PROJECT_ID/my-excellent-blog.png
  1. Zmodyfikuj listę kontroli dostępu do właśnie utworzonego obiektu, tak aby wszyscy mogli go odczytać:
gsutil acl ch -u allUsers:R gs://$DEVSHELL_PROJECT_ID/my-excellent-blog.png

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Utworzenie zasobnika Cloud Storage za pomocą wiersza poleceń gcloud storage

Zadanie 4. Utwórz instancję Cloud SQL

  1. Menu nawigacyjnym (Ikona menu nawigacyjnego) konsoli Google Cloud kliknij SQL.

  2. Kliknij Utwórz instancję.

  3. W polu Wybierz silnik bazy danych wybierz opcję Wybierz MySQL.

  4. W polu Wybierz wersję Cloud SQL kliknij Enterprise, a następnie wybierz Tryb piaskownicy z menu.

  5. W polu Identyfikator instancji wpisz blog-db, a w polu Hasło roota wpisz dowolnie wybrane hasło.

Uwaga: wybierz hasło, które zapamiętasz. Nie ma potrzeby zasłaniania hasła, ponieważ używasz mechanizmów łączenia się, które nie są dostępne dla wszystkich.
  1. Wybierz opcję Jedna strefa i ustaw region oraz strefę przypisaną przez Qwiklabs.
Uwaga: jest to ten sam region i strefa, w której uruchomiono instancję bloghost. Najlepszą wydajność uzyskuje się przez umieszczenie klienta i bazy danych blisko siebie.
  1. Kliknij Utwórz instancję.
Uwaga: poczekaj na zakończenie wdrażania instancji. Potrwa to kilka minut.
  1. Kliknij nazwę instancji blog-db, aby otworzyć stronę z informacjami o niej.

  2. Na stronie z informacjami o instancji SQL skopiuj Publiczny adres IP instancji SQL do edytora tekstu, aby móc użyć go później w tym module.

  3. Kliknij menu Użytkownicy po lewej stronie, a następnie kliknij Dodaj konto użytkownika.

  4. W polu Nazwa użytkownika wpisz blogdbuser.

  5. W polu Hasło wpisz dowolnie wybrane hasło. Zanotuj je.

  6. Kliknij Dodaj, aby dodać konto użytkownika do bazy danych.

Uwaga: poczekaj na utworzenie użytkownika.
  1. Kliknij menu Połączenia po lewej stronie, a następnie kliknij kartę Sieci.

  2. Kliknij Dodaj sieć.

Uwaga: jeśli będą dostępne do wyboru opcje połączenia Prywatny adres IPPubliczny adres IP, na potrzeby tego modułu wybierz Publiczny adres IP. Uwaga: przycisk Dodaj sieć może być niedostępny, jeśli tworzenie konta użytkownika nie zostało ukończone.
  1. W polu Nazwa wpisz web front end

  2. W polu Sieć wpisz zewnętrzny adres IP instancji maszyny wirtualnej bloghost, z dopiskiem /32

Wynik będzie wyglądał tak:

35.192.208.2/32 Uwaga: pamiętaj, aby wpisać zewnętrzny adres IP instancji maszyny wirtualnej z dopiskiem /32. Nie używaj wewnętrznego adresu IP instancji maszyny wirtualnej. Nie używaj pokazanego tutaj przykładowego adresu IP.
  1. Kliknij Gotowe, aby zakończyć definiowanie autoryzowanej sieci.

  2. Kliknij Zapisz, aby zapisać zmiany w konfiguracji.

Uwaga: jeśli pojawi się komunikat Inna operacja jest w toku, przed zapisaniem konfiguracji poczekaj kilka minut, aż pojawi się zielony znacznik wyboru dla blog-db.

Kliknij Sprawdź postępy, aby zobaczyć, jak Ci poszło. Utworzenie instancji Cloud SQL

Zadanie 5. Skonfiguruj aplikację w instancji Compute Engine do korzystania z Cloud SQL

  1. Menu nawigacyjnym (Ikona menu nawigacyjnego) kliknij Compute Engine > Instancje maszyn wirtualnych.

  2. Na liście instancji maszyn wirtualnych kliknij SSH w wierszu instancji bloghost.

  3. W sesji SSH instancji bloghost zmień katalog roboczy na katalog główny dokumentów serwera WWW:

cd /var/www/html
  1. Za pomocą edytora tekstu nano wyedytuj plik o nazwie index.php:
sudo nano index.php
  1. Wklej poniższą treść do pliku:
<html> <head><title>Welcome to my excellent blog</title></head> <body> <h1>Welcome to my excellent blog</h1> <?php $dbserver = "CLOUDSQLIP"; $dbuser = "blogdbuser"; $dbpassword = "DBPASSWORD"; // In a production blog, we would not store the MySQL // password in the document root. Instead, we would store // it in a Secret Manger. For more information see // https://cloud.google.com/sql/docs/postgres/use-secret-manager try { $conn = new PDO("mysql:host=$dbserver;dbname=mysql", $dbuser, $dbpassword); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Connected successfully"; } catch(PDOException $e) { echo "Database connection failed:: " . $e->getMessage(); } ?> </body></html> Uwaga: w późniejszym kroku wstawisz do tego pliku adres IP instancji Cloud SQL i hasło do bazy danych. Na razie pozostaw plik bez zmian.
  1. Naciśnij Ctrl+O, a następnie Enter, aby zapisać edytowany plik.

  2. Naciśnij Ctrl+X, aby zamknąć edytor tekstu nano.

  3. Ponownie uruchom serwer WWW:

sudo service apache2 restart
  1. Otwórz nową kartę przeglądarki i wklej na pasku adresu zewnętrzny adres IP instancji maszyny wirtualnej bloghost z dopiskiem /index.php. Adres URL będzie wyglądał tak:
35.192.208.2/index.php Uwaga: pamiętaj, aby użyć zewnętrznego adresu IP instancji maszyny wirtualnej z dopiskiem /index.php. Nie używaj wewnętrznego adresu IP instancji maszyny wirtualnej. Nie używaj pokazanego tutaj przykładowego adresu IP.

Po załadowaniu strony zobaczysz, że jej treść zawiera komunikat o błędzie zaczynający się od słów:

Database connection failed: ... Uwaga: ten komunikat występuje, ponieważ połączenie PHP z instancją Cloud SQL nie zostało jeszcze skonfigurowane.
  1. Wróć do sesji ssh w instancji bloghost. Za pomocą edytora tekstu nano ponownie dokonaj edycji pliku o nazwie index.php.
sudo nano index.php
  1. W edytorze tekstu nano zastąp CLOUDSQLIP zanotowanym wcześniej publicznym adresem IP instancji Cloud SQL. Pozostaw cudzysłów.

  2. W edytorze tekstu nano zastąp DBPASSWORD zdefiniowanym wcześniej hasłem bazy danych Cloud SQL. Pozostaw cudzysłów.

  3. Naciśnij Ctrl+O, a następnie Enter, aby zapisać edytowany plik.

  4. Naciśnij Ctrl+X, aby zamknąć edytor tekstu nano.

  5. Ponownie uruchom serwer WWW:

sudo service apache2 restart
  1. Wróć do karty przeglądarki, w której otwarty był zewnętrzny adres IP instancji maszyny wirtualnej bloghost. Po załadowaniu strony pojawi się następujący komunikat:
Database connection succeeded. Uwaga: w rzeczywistym blogu stan połączenia z bazą danych nie byłby widoczny dla jego użytkowników. Połączeniem z bazą danych zarządzałby wyłącznie administrator.

Zadanie 6. Skonfiguruj aplikację w instancji Compute Engine do korzystania z obiektu Cloud Storage

  1. W konsoli Google Cloud kliknij Cloud Storage > Zasobniki.

  2. Kliknij zasobnik o nazwie takiej jak nazwa projektu Google Cloud.

  3. W tym zasobniku znajduje się obiekt o nazwie my-excellent-blog.png. Skopiuj adres URL znajdujący się za ikoną linku wyświetlaną w kolumnie Dostęp publiczny obiektu lub po słowach „Link publiczny”, jeśli są wyświetlane.

Uwaga: jeśli nie widzisz ani ikony linku, ani napisu „Link publiczny”, spróbuj odświeżyć okno przeglądarki. Jeśli nadal nie widzisz ikony linku, wróć do Cloud Shell i upewnij się, że próba zmiany listy kontroli dostępu do obiektu za pomocą polecenia gsutil acl ch powiodła się.
  1. Wróć do sesji ssh w instancji maszyny wirtualnej bloghost.

  2. Wpisz to polecenie, aby ustawić katalog roboczy na katalog główny dokumentów na serwerze WWW:

cd /var/www/html
  1. Za pomocą edytora tekstu nano wyedytuj plik index.php.
sudo nano index.php
  1. Za pomocą klawiszy strzałek przesuń kursor do wiersza zawierającego element h1. Naciśnij Enter, aby otworzyć nowy, pusty wiersz ekranu, a następnie wklej skopiowany wcześniej adres URL w tym wierszu.

  2. Wklej ten znacznik HTML bezpośrednio przed adresem URL:

<img src='
  1. Umieść zamykający pojedynczy cudzysłów i zamykający nawias kątowy na końcu adresu URL:
'>

Wiersz wynikowy będzie wyglądać następująco:

<img src='https://storage.googleapis.com/qwiklabs-gcp-0005e186fa559a09/my-excellent-blog.png'>

Skutkiem tych kroków jest umieszczenie wiersza zawierającego <img src='...'> bezpośrednio przed wierszem zawierającym <h1>...</h1>

Uwaga: nie kopiuj pokazanego tu adresu URL. Zamiast tego skopiuj adres URL wyświetlany przez przeglądarkę Storage w Twoim projekcie Cloud Platform.
  1. Naciśnij Ctrl+O, a następnie Enter, aby zapisać edytowany plik.

  2. Naciśnij Ctrl+X, aby zamknąć edytor tekstu nano.

  3. Ponownie uruchom serwer WWW:

sudo service apache2 restart
  1. Wróć do karty przeglądarki, w której otwarty był zewnętrzny adres IP instancji maszyny wirtualnej bloghost. Po załadowaniu strony jej treść zawiera teraz obraz banera.

Gratulacje!

W tym module skonfigurowaliśmy instancję Cloud SQL i połączyliśmy z nią aplikację w instancji Compute Engine. Pracowaliśmy również z zasobnikiem Cloud Storage.

Kończenie modułu

Po ukończeniu modułu kliknij Zakończ moduł. Google Cloud Skills Boost usunie wykorzystane zasoby i wyczyści konto.

Po zakończeniu modułu będzie można ocenić związane z nim wrażenia. Wybierz odpowiednią liczbę gwiazdek, wpisz komentarz, a następnie kliknij Prześlij.

Liczba gwiazdek oznacza odpowiednie oceny:

  • 1 gwiazdka – bardzo zła,
  • 2 gwiazdki – zła,
  • 3 gwiazdki – neutralna,
  • 4 gwiazdki – dobra,
  • 5 gwiazdek – bardzo dobra.

Jeśli nie chcesz dzielić się swoją opinią, możesz zamknąć okno dialogowe.

Jeśli chcesz przesłać swoją opinię, sugestie lub propozycje poprawek, użyj karty Pomoc.

Copyright 2020 Google LLC. Wszelkie prawa zastrzeżone. Google i logo Google są znakami towarowymi Google LLC. Wszelkie inne nazwy firm i produktów mogą być znakami towarowymi odpowiednich podmiotów, z którymi są powiązane.

Więcej materiałów

Zapoznaj się z dokumentacją Google Cloud Platform dotyczącą Cloud SQL.

Zapoznaj się z dokumentacją Google Cloud Platform dotyczącą Cloud Storage.

827b33e18db55754.png

Ta treść jest obecnie niedostępna

Kiedy dostępność się zmieni, wyślemy Ci e-maila z powiadomieniem

Świetnie

Kiedy dostępność się zmieni, skontaktujemy się z Tobą e-mailem