arrow_back

Google Cloud Fundamentals: початок роботи з Cloud Storage і Cloud SQL

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Google Cloud Fundamentals: початок роботи з Cloud Storage і Cloud SQL

Lab 1 година 15 годин universal_currency_alt 5 кредитів show_chart Початковий
info This lab may incorporate AI tools to support your learning.
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Огляд

Під час цієї практичної роботи вам потрібно буде створити сегмент Cloud Storage і помістити в нього зображення. Крім того, ви налаштуєте додаток, що працює на Compute Engine і використовуватиме базу даних, керовану сервісом Cloud SQL. У цій практичній роботі вам потрібно буде налаштувати вебсервер у середовищі для розробки PHP, яке є основою популярного програмного забезпечення для блогів. Ви також будете використовувати схожу техніку в інших роботах для налаштування цих пакетів.

Ви також налаштуєте вебсервер, щоб посилатися на зображення в сегменті Cloud Storage.

Цілі

Під час цієї практичної роботи ви навчитеся виконувати наведені нижче дії.

  • Створювати сегмент Cloud Storage і поміщати в нього зображення.
  • Створювати екземпляр Cloud SQL і налаштовувати його.
  • Підключатися до екземпляра Cloud SQL із вебсервера.
  • Використовувати зображення із сегмента Cloud Storage на вебсторінці.

Завдання 1. Увійдіть у Google Cloud Console

Для кожного практичного заняття ви безкоштовно отримуєте новий проект Google Cloud і набір ресурсів на визначений період часу.

  1. Натисніть кнопку Почати заняття. Якщо за практичне заняття необхідно заплатити, відкриється спливаюче вікно, де ви зможете обрати спосіб оплати. Ліворуч розміщено панель Відомості про практичне заняття з такими компонентами:

    • кнопка Відкрити консоль Google;
    • час до закінчення;
    • тимчасові облікові дані, які потрібно використовувати для доступу до цього практичного заняття;
    • інша інформація, необхідна для виконання цього практичного заняття.
  2. Натисніть Відкрити консоль Google або натисніть правою кнопкою миші й виберіть Відкрити анонімне вікно, якщо ви використовуєте вебпереглядач Chrome.

    Завантажаться необхідні ресурси. Потім відкриється нова вкладка зі сторінкою Вхід.

    Порада. Упорядковуйте вкладки в окремих вікнах, розміщуючи їх поруч.

    Примітка. Якщо з’явиться вікно Виберіть обліковий запис, натисніть Вибрати інший обліковий запис.
  3. За потреби скопіюйте значення в полі Username (Ім’я користувача) нижче й вставте його у вікні Вхід.

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

    Поле Username (Ім’я користувача) також можна знайти на панелі Відомості про практичне заняття.

  4. Натисніть Next (Далі).

  5. Скопіюйте значення в полі Password (Пароль) нижче й вставте його у вікні Welcome (Привітання).

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

    Поле Password (Пароль) також можна знайти на панелі Відомості про практичне заняття.

  6. Натисніть Next (Далі).

    Важливо. Обов’язково використовуйте облікові дані, призначені для відповідного практичного заняття. Не використовуйте облікові дані Google Cloud. Примітка. Якщо ввійти у власний обліковий запис Google Cloud, може стягуватися додаткова плата.
  7. Що від вас очікується

    • Прийміть Умови використання.
    • Не додавайте способи відновлення й двохетапну перевірку (оскільки це тимчасовий обліковий запис).
    • Не реєструйте безкоштовні пробні версії.

Через кілька секунд Google Cloud Console відкриється в новій вкладці.

Примітка. Щоб переглянути меню зі списком продуктів і сервісів Google Cloud, натисніть меню навігації вгорі ліворуч. Значок меню навігації

Завдання 2. Розгорніть екземпляр віртуальної машини вебсервера

  1. У меню навігації (Значок меню навігації) Cloud Console натисніть Compute Engine > VM instances (Екземпляри віртуальних машин).

  2. Натисніть Create Instance (Створити екземпляр).

  3. На сторінці Create an Instance (Створити екземпляр) у полі Name (Назва) введіть bloghost.

  4. Для параметрів Region (Регіон) і Zone (Зона) виберіть ті, які призначила платформа Qwiklabs.

  5. Для параметра Machine type (Тип машини) прийміть варіант за умовчанням.

  6. Якщо в розділі Boot disk (Завантажувальний диск) під заголовком Image (Образ) не відображається варіант Debian GNU/Linux 12, натисніть Change (Змінити) і виберіть Debian GNU/Linux 11 (bullseye).

  7. У розділі Identity and API access (Ідентифікатор і доступ через API) залиште все без змін.

  8. У розділі Firewall (Брандмауер) виберіть Allow HTTP traffic (Дозволити трафік HTTP).

  9. Відкрийте розділ Advanced options (Розширені параметри).

  10. Відкрийте розділ Management (Керування).

  11. Прокрутіть сторінку вниз до розділу Automation (Автоматизація) і введіть наведений нижче скрипт у полі Startup script (Скрипт запуску).

apt-get update apt-get install apache2 php php-mysql -y service apache2 restart Примітка. Укажіть цей скрипт як значення в полі Startup script (Скрипт запуску). Якщо скрипт вставити в інше поле, після запуску екземпляра віртуальної машини він не виконається.
  1. Залиште інші налаштування зі значеннями за умовчанням і натисніть Create (Створити).
Примітка. Щоб запустити екземпляр і вільно ним користуватися, може знадобитися до двох хвилин.
  1. На сторінці VM instances (Екземпляри ВМ) скопіюйте внутрішню й зовнішню IP-адреси екземпляра віртуальної машини bloghost у текстовий редактор, щоб потім використати їх у цій практичній роботі.

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Розгорніть екземпляр віртуальної машини вебсервера

Завдання 3. Створити сегмент Cloud Storage за допомогою командного рядка gcloud

Усі назви сегмента Cloud Storage мають бути унікальними глобально. Щоб назва сегмента й ідентифікатор проекту Google Cloud (також унікальний глобально) збігалися, скористайтеся цими вказівками.

Сегменти Cloud Storage можна зв’язати з регіоном або місцем у мультирегіоні: US, EU або ASIA. У цьому завданні вам потрібно зв’язати сегмент із мультирегіоном, який є найближчим до регіону або зони, призначених для вас платформою Qwiklabs чи інструктором.

  1. У консолі Google Cloud на панелі інструментів угорі праворуч натисніть Activate Cloud Shell (Активувати Cloud Shell) Значок активації Cloud Shell. Якщо з’явиться діалогове вікно, натисніть Continue (Продовжити).

  2. Щоб вам було зручніше, укажіть вибране місце для змінної середовища LOCATION. Введіть одну з цих команд:

export LOCATION=US

або

export LOCATION=EU

або

export LOCATION=ASIA
  1. У Cloud Shell змінна середовища DEVSHELL_PROJECT_ID містить ідентифікатор вашого проекту. Введіть указану нижче команду, щоб створити сегмент, назва якого міститиме ідентифікатор проекту.
gcloud storage buckets create -l $LOCATION gs://$DEVSHELL_PROJECT_ID

Якщо з’явиться запит, натисніть Authorize (Авторизувати), щоб продовжити.

  1. Знайдіть банер у загальнодоступному сховищі Cloud Storage:
gcloud storage cp gs://cloud-training/gcpfci/my-excellent-blog.png my-excellent-blog.png
  1. Скопіюйте банер до сегмента Cloud Storage, який ви недавно створили:
gcloud storage cp my-excellent-blog.png gs://$DEVSHELL_PROJECT_ID/my-excellent-blog.png
  1. Відредагуйте список контролю доступу до створеного об’єкта, щоб кожен міг його переглянути:
gsutil acl ch -u allUsers:R gs://$DEVSHELL_PROJECT_ID/my-excellent-blog.png

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Створити сегмент Cloud Storage за допомогою командного рядка gcloud

Завдання 4. Створіть екземпляр Cloud SQL

  1. У меню навігації (Значок меню навігації) Google Cloud Console натисніть SQL.

  2. Натисніть Create Instance (Створити екземпляр).

  3. Під заголовком Choose a database engine (Виберіть процесор бази даних) натисніть Choose MySQL (Виберіть MySQL).

  4. У Choose a Cloud SQL edition (Виберіть версію Cloud SQL) натисніть Enterprise і в спадному меню виберіть Sandbox (Ізольоване програмне середовище).

  5. У полі Instance ID (Ідентифікатор екземпляра) вставте blog-db, а в полі Root password (Кореневий пароль) введіть пароль.

Примітка. Придумайте пароль, який добре запам’ятаєте. Приховувати пароль не потрібно, оскільки ви підключатиметеся за допомогою механізмів, до яких інші користувачі не матимуть доступу.
  1. Виберіть Single zone (Одна зона) і вкажіть регіон та зону, призначені платформою Qwiklabs.
Примітка. Регіон і зона ті самі, що й під час запуску екземпляра bloghost. Для максимальної ефективності клієнт і база даних мають розташовуватися близько одне до одного.
  1. Натисніть Create Instance (Створити екземпляр).
Примітка. Зачекайте, доки екземпляр завершить розгортання. Це триває кілька хвилин.
  1. Натисніть назву екземпляра blog-db, щоб перейти на його сторінку.

  2. На сторінці екземплярів SQL скопіюйте адресу свого екземпляра в стовпці Public IP address (Загальнодоступна IP-адреса) і вставте її в текстовому редакторі, щоб використати в практичній роботі пізніше.

  3. У меню ліворуч натисніть Users (Користувачі), а тоді – Add User Account (Додати обліковий запис користувача).

  4. У полі User name (Ім’я користувача) введіть blogdbuser.

  5. У полі Password (Пароль) введіть свій пароль. Запишіть його, щоб не забути.

  6. Натисніть Add (Додати), щоб включити обліковий запис користувача в базу даних.

Примітка. Зачекайте, поки буде створено користувача.
  1. У меню ліворуч натисніть Connections (Підключення) і виберіть вкладку Networking (Мережі).

  2. Натисніть Add a Network (Додати мережу).

Примітка. Якщо вам буде запропоновано вибрати підключення Private IP (Приватна IP-адреса) або Public IP (Загальнодоступна IP-адреса), для цього завдання виберіть опцію Public IP (Загальнодоступна IP-адреса). Примітка. Кнопка Add network (Додати мережу) може бути недоступна, якщо створення облікового запису користувача не завершено.
  1. Введіть web front end у полі Name (Назва).

  2. У полі Network (Мережа) укажіть зовнішню IP-адресу екземпляра віртуальної машини bloghost і додайте після неї суфікс /32.

Адреса матиме такий вигляд:

35.192.208.2/32 Примітка. Обов’язково введіть зовнішню IP-адресу свого екземпляра віртуальної машини й додайте після неї суфікс "/32". Не використовуйте внутрішню IP-адресу й наведений тут приклад.
  1. Щоб завершити налаштування авторизованої мережі, натисніть Done (Готово).

  2. Натисніть Save (Зберегти), щоб зміни конфігурації залишилися.

Примітка. Якщо з’явилося повідомлення, як-от Another operation is in progress (Виконується інша дія), зачекайте кілька хвилин, доки для blog-db не з’явиться зелений прапорець, і тоді збережіть конфігурацію.

Щоб підтвердити виконання завдання, натисніть Підтвердити виконання. Створіть екземпляр Cloud SQL

Завдання 5. Налаштуйте додаток в екземплярі Compute Engine, щоб він використовував Cloud SQL

  1. У меню навігації (Значок меню навігації) натисніть Compute Engine > VM instances (Екземпляри віртуальних машин).

  2. У списку екземплярів натисніть SSH у рядку з вашим екземпляром віртуальної машини bloghost.

  3. У сеансі SSH на екземплярі bloghost змініть поточний каталог на корінь документів вебсервера:

cd /var/www/html
  1. Скористайтеся текстовим редактором Nano, щоб відредагувати файл із назвою index.php:
sudo nano index.php
  1. Вставте наведений нижче вміст у файл.
<html> <head><title>Ласкаво прошу до мого блогу</title></head> <body> <h1>Ласкаво прошу до мого блогу</h1> <?php $dbserver = "CLOUDSQLIP"; $dbuser = "blogdbuser"; $dbpassword = "DBPASSWORD"; // У робочому блозі ми не будемо зберігати // пароль MySQL у корені документа. Натомість ми збережемо // його в Secret Manger. Щоб дізнатися більше, перейдіть за посиланням // 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> Примітка. Пізніше в цей файл вам потрібно буде вставити IP-адресу свого екземпляра Cloud SQL і пароль бази даних. Наразі не змінюйте файл.
  1. Щоб зберегти відредагований файл, натисніть клавіші Ctrl + O, а тоді – Enter.

  2. Щоб вийти з текстового редактора Nano, натисніть клавіші Ctrl + X.

  3. Перезапустіть вебсервер:

sudo service apache2 restart
  1. Відкрийте нову вкладку вебпереглядача, вставте в адресний рядок зовнішню IP-адресу екземпляра віртуальної машини bloghost і додайте після неї /index.php. URL-адреса матиме такий вигляд:
35.192.208.2/index.php Примітка. Обов’язково введіть зовнішню IP-адресу свого екземпляра віртуальної машини й додайте після неї "/index.php". Не використовуйте внутрішню IP-адресу й наведений тут приклад.

Завантаживши сторінку, ви побачите в її вмісті повідомлення про помилку, що починається такими словами:

Database connection failed: … Примітка. Це повідомлення з’явилося, тому що ви поки не налаштували підключення PHP до екземпляра Cloud SQL.
  1. Поверніться до сеансу SSH на bloghost. Скористайтеся текстовим редактором Nano, щоб знову відредагувати файл index.php:
sudo nano index.php
  1. У текстовому редакторі Nano замініть значення CLOUDSQLIP на загальнодоступну IP-адресу екземпляра Cloud SQL, яку ви дізналися раніше. Не видаляйте лапок, у які взято значення.

  2. У текстовому редакторі Nano замініть значення DBPASSWORD на пароль бази даних Cloud SQL, який ви встановили раніше. Не видаляйте лапок, у які взято значення.

  3. Щоб зберегти відредагований файл, натисніть клавіші Ctrl + O, а тоді – Enter.

  4. Щоб вийти з текстового редактора Nano, натисніть клавіші Ctrl + X.

  5. Перезапустіть вебсервер:

sudo service apache2 restart
  1. Поверніться на вкладку вебпереглядача, на якій відкрили зовнішню IP-адресу екземпляра віртуальної машини bloghost. Завантаживши сторінку, ви побачите таке повідомлення:
Database connection succeeded. Примітка. У справжньому блозі відвідувачі не бачитимуть статус підключення бази даних. Підключенням керуватиме лише адміністратор.

Завдання 6. Налаштуйте додаток в екземплярі Compute Engine, щоб він використовував об’єкт Cloud Storage

  1. У Google Cloud Console натисніть Cloud Storage > Buckets (Сегменти).

  2. Натисніть сегмент, який має ту саму назву, що й проект Google Cloud.

  3. У цьому сегменті ви знайдете об’єкт під назвою my-excellent-blog.png. Скопіюйте URL-адресу, навівши курсор на значок в стовпці об’єкта Public access (У загальному доступі) або на текст Public link (Посилання для всіх), якщо він з’явиться.

Примітка. Якщо значка або тексту з посиланням немає, оновіть сторінку у вебпереглядачі. Якщо проблема не зникне, поверніться до Cloud Shell і переконайтеся, що ви успішно змінили список контролю доступу до об’єкта за допомогою команди gsutil acl ch.
  1. Поверніться до сеансу SSH у вашому екземплярі віртуальної машини bloghost.

  2. Введіть наведену нижче команду, щоб установити поточний каталог у корінь документів вебсервера.

cd /var/www/html
  1. Скористайтеся текстовим редактором Nano, щоб відредагувати файл index.php:
sudo nano index.php
  1. За допомогою клавіш зі стрілками перемістіть курсор до рядка, що містить елемент h1. Натисніть клавішу Enter, щоб відкрити на екрані новий порожній рядок, і вставте в нього URL-адресу, яку ви скопіювали раніше.

  2. Вставте перед нею розмітку HTML:

<img src='
  1. У кінці URL-адреси введіть одинарну закривну лапку й кутову закривну дужку:
'>

Рядок матиме такий вигляд:

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

Виконавши ці кроки, ви розташуєте рядок із кодом <img src='...'> безпосередньо перед рядком із тегами <h1>...</h1>

Примітка. Не копіюйте наведену тут URL-адресу. Замість цього скопіюйте адресу, що відображається біля оглядача сховища у вашому проекті Cloud Platform.
  1. Щоб зберегти відредагований файл, натисніть клавіші Ctrl + O, а тоді – Enter.

  2. Щоб вийти з текстового редактора Nano, натисніть клавіші Ctrl + X.

  3. Перезапустіть вебсервер:

sudo service apache2 restart
  1. Поверніться на вкладку вебпереглядача, на якій відкрили зовнішню IP-адресу екземпляра віртуальної машини bloghost. Завантаживши сторінку, ви побачите на ній банер.

Вітаємо!

Під час цієї практичної роботи ви налаштували екземпляр Cloud SQL і підключили до нього додаток в екземплярі Compute Engine. Крім цього, ви попрацювали із сегментом Cloud Storage.

Завершіть завдання

Закінчивши виконувати завдання, натисніть кнопку End Lab (Завершити завдання). Google Cloud Skills Boost вилучить використані ресурси й очистить обліковий запис.

Ви зможете оцінити, наскільки вам сподобалося виконувати завдання на платформі. Виберіть потрібну кількість зірочок, введіть коментар і натисніть Submit (Надіслати).

Кількість зірочок відповідає певній оцінці:

  • 1 зірочка = зовсім не сподобалося
  • 2 зірочки = не сподобалося
  • 3 зірочки = не можу сказати напевно
  • 4 зірочки = сподобалося
  • 5 зірочок = дуже сподобалося

Якщо ви не хочете надсилати відгук, просто закрийте діалогове вікно.

Залишайте свої відгуки, пропозиції або коментарі на вкладці Support (Підтримка).

© Google LLC 2022. Усі права захищено. Назва та логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.

Інші ресурси

Перегляньте документацію Google Cloud Platform щодо Cloud SQL.

Перегляньте документацію Google Cloud Platform щодо Cloud Storage.

827b33e18db55754.png

This content is not currently available

We will notify you via email when it becomes available

Great!

We will contact you via email if it becomes available