Lab setup instructions and requirements
Protect your account and progress. Always use a private browser window and lab credentials to run this lab.

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.
This content is not yet optimized for mobile devices.
For the best experience, please visit us on a desktop computer using a link sent by email.

Огляд

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

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

Цілі

На цьому практичному занятті ви навчитеся виконувати наведені нижче дії.

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

Завдання 1. Увійдіть у консоль Google Cloud

Для кожного практичного заняття ви безкоштовно отримуєте новий проект 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. Розгорніть екземпляр віртуальної машини вебсервера

У цьому завданні ви створите екземпляр віртуальної машини за допомогою Compute Engine, установите на ньому вебсервер Apache й додасте необхідні сценарії для початкового налаштування, використовуючи скрипт запуску. Далі ви запишете ідентифікатори мережі.

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

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

  3. У полі Name (Назва) введіть bloghost.

  4. Для параметра Region (Регіон) виберіть .

  5. Для параметра Zone (Зона) виберіть .

  6. Для параметра Machine type (Тип машини) виберіть e2-standard-2.

  7. На панелі ліворуч натисніть OS and storage (ОС і сховище). Якщо під заголовком Image (Образ) не відображається варіант Debian GNU/Linux 12 (bookworm), натисніть Change (Змінити) і виберіть версію Debian GNU/Linux 12 (bookworm).

  8. Натисніть Networking (Мережі).

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

  10. На панелі ліворуч натисніть Advanced (Розширені).

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

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

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

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

У цьому завданні ви створите глобально унікальний сегмент Cloud Storage, укажете його розташування, завантажите в нього загальнодоступне зображення й зробите цей об’єкт загальнодоступним для читання за допомогою інструмента командного рядка gcloud storage.

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

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

  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 storage

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

У цьому завданні ви створите й налаштуєте керований екземпляр бази даних MySQL за допомогою Cloud SQL. Ви також налаштуєте обліковий запис користувача й надасте дозвіл на підключення із зовнішньої IP-адреси майбутнього вебсервера.

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

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

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

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

  5. У полі Instance ID (Ідентифікатор екземпляра) вставте blog-db, а в полі Password (Пароль) введіть Passw0rd1!

  6. Для параметра Region (Регіон) виберіть .

  7. У полі Zonal availability (Зональна доступність) виберіть Single zone (Одна зона).

  8. Розгорніть розділ Specify zones (Указати зони) і в полі Primary zone (Основна зона) виберіть .

Примітка. Регіон і зона ті самі, що й під час запуску екземпляра bloghost. Для максимальної ефективності клієнт і база даних мають розташовуватися близько одне до одного.
  1. На сторінці налаштування екземпляра розгорніть розділ Show configuration options (Показати параметри конфігурації).

  2. Розгорніть розділ Security (Безпека) і натисніть Allow unencrypted network traffic (not recommended) (Дозволити незашифрований мережевий трафік (не рекомендовано)).

Примітка. У цьому практичному занятті не використовується SSL, тому переконайтеся, що ви вибрали наведену вище опцію.
  1. Натисніть Create Instance (Створити екземпляр).
Примітка. Зачекайте, доки завершиться розгортання екземпляра. Це триває кілька хвилин.

Налаштуйте користувачів і підключення

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

  2. На панелі ліворуч виберіть Users (Користувачі) і натисніть Add User Account (Додати обліковий запис користувача).

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

  4. У полі Password (Пароль) введіть Passw0rd1!

  5. Натисніть 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

У цьому завданні ви безпечно підключите вебсервер Apache, що працює у вашому екземплярі віртуальної машини, до бази даних Cloud SQL. Для цього в код додатка PHP (index.php) потрібно додати IP-адресу й облікові дані бази даних.

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

  2. У списку екземплярів натисніть SSH у рядку з вашим екземпляром віртуальної машини bloghost. Якщо з’явиться запит, натисніть Authorize (Авторизувати).

  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-адресу й наведений тут приклад. Якщо ви бачите повідомлення, що IP-адреса не підтримує захищене підключення, натисніть Continue to site (Перейти на сайт).

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

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

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

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

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

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

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

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

У цьому завданні ви додасте загальнодоступне зображення, що зберігається у вашому сегменті Cloud Storage, у вебдодаток. Для цього ви відредагуєте файл index.php в екземплярі Compute Engine, вставивши правильну URL-адресу джерела зображення.

  1. На консолі Google Cloud натисніть 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 2025. Усі права захищено. Назва й логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.

Інші ресурси

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

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

827b33e18db55754.png

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

Use private browsing

  1. Copy the provided Username and Password for the lab
  2. Click Open console in private mode

Sign in to the Console

  1. Sign in using your lab credentials. Using other credentials might cause errors or incur charges.
  2. Accept the terms, and skip the recovery resource page
  3. Don't click End lab unless you've finished the lab or want to restart it, as it will clear your work and remove the project

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

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.