Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Нещодавно ви стали розробником хмарних рішень у команді ІТ-компанії, для якої Google Cloud є основним постачальником хмарних сервісів. Вам доручили створювати хмарні безсерверні вебдодатки без відстеження стану. Для цього вам потрібно налаштувати сервіс Cloud Run від Google Cloud. Нижче наведено ваші основні завдання.
Оскільки ви раніше працювали з AWS, ви знаєте, що AWS Fargate надає контейнерні середовища без серверів. AWS Fargate забезпечує запуск, масштабування й відстеження контейнерів, завдяки чому розробники можуть зосередитися на написанні коду додатків, а також легко розгортати, масштабувати контейнерні додатки й керувати ними. Також за допомогою AWS Fargate можна розгортати контейнери для Amazon Elastic Container Service (Amazon ECS) або Amazon Elastic Kubernetes Service (Amazon EKS). Це означає, що розробники можуть вибрати варіант оркестрації, який найкраще відповідає їхнім потребам.
Безсерверний контейнерний додаток на основі AWS Fargate виглядає так, як показано на наведеній нижче схемі.
Нижче описано, як розгортати додатки в Google Cloud.
Cloud Run – це керована платформа обчислення, на якій можна запускати контейнери без статусу через запити HTTP. Платформа безсерверна: вам не доведеться керувати інфраструктурою, тож ви зможете зосередитися на головному – створенні додатків.
Cloud Run створено на основі Knative: ви можете керувати роботою контейнерів за допомогою Cloud Run або запустити їх у кластері Google Kubernetes Engine за допомогою Cloud Run у GKE.
Мета цього практичного заняття – створити простий образ контейнерного додатка й розгорнути його в Cloud Run.
На цьому практичному занятті ви навчитеся виконувати наведені нижче дії.
Для кожної практичної роботи ви безкоштовно отримуєте новий проект Google Cloud і набір інструментів на визначений період часу.
Увійдіть у Qwiklabs у вікні в режимі анонімного перегляду.
Слідкуйте за тим, скільки часу залишилося для виконання практичної роботи (наприклад: 1:15:00). Постарайтеся завершити її вчасно.
Завдання не можна призупинити, а лише почати спочатку.
Коли будете готові, натисніть Start Lab (Почати практичну роботу).
Занотуйте облікові дані для практичної роботи (ім’я користувача й пароль). Вони знадобляться для входу в Google Cloud Console.
Натисніть Open Google Console (Відкрити Google Console).
Виберіть Use another account (Увійти в інший обліковий запис), потім скопіюйте та вставте облікові дані для доступу до цієї практичної роботи у відповідні поля.
Якщо ви ввійдете з іншими обліковими даними, станеться помилка або з вас може почати стягуватися плата.
Прийміть умови й пропустіть сторінку відновлення ресурсу.
Натисніть кнопку Start Lab (Почати практичну роботу). Якщо за практичну роботу необхідно заплатити, відкриється спливаюче вікно, де ви зможете обрати спосіб оплати. На панелі ліворуч ви побачите тимчасові облікові дані, які потрібно використовувати для доступу до цієї практичної роботи.
Скопіюйте ім’я користувача, а потім натисніть Open Google Console (Відкрити Google Console). Завантажаться необхідні ресурси. Потім відкриється нова вкладка зі сторінкою Choose an account (Виберіть обліковий запис).
На сторінці Choose an account (Виберіть обліковий запис) натисніть Use Another Account (Інший обліковий запис). Відкриється сторінка входу в обліковий запис.
Вставте ім’я користувача, скопійоване з панелі Connection Details (Відомості про підключення). Потім скопіюйте й вставте пароль.
Через кілька секунд Cloud Console відкриється в новій вкладці.
Google Cloud Shell – це віртуальна машина з попередньо завантаженими інструментами для розробників. Вона містить головний каталог обсягом 5 ГБ постійної пам’яті й працює в середовищі Google Cloud.
Google Cloud Shell надає доступ до ресурсів Google Cloud через командний рядок.
У консолі Cloud Console на панелі інструментів угорі праворуч натисніть кнопку Open Cloud Shell (Відкрити Cloud Shell).
Натисніть Continue (Продовжити).
Налаштування та підключення до середовища триватиме кілька секунд. Щойно ви підключитеся, вас буде автентифіковано, а проект отримає ваш PROJECT_ID (ІДЕНТИФІКАТОР ПРОЕКТУ). Наприклад:
gcloud – це інструмент командного рядка для Google Cloud. Він входить у пакет Cloud Shell і підтримує функцію автозавершення клавішею TAB.
Вихідні дані:
Приклад вихідних даних:
Вихідні дані:
Приклад вихідних даних:
Нижче наведено список основних команд Linux, які може бути включено до вказівок або блоків коду для цього завдання.
| Команда --> | Дія | . | Команда --> | Дія |
|---|---|---|---|---|
| mkdir (make directory) | створити нову папку | . | cd (change directory) | призначити іншу папку як місцеположення |
| ls (list ) | вивести список файлів і папок у каталозі | . | cat (concatenate) | вивести зміст файлу без використання редактора |
| apt-get update | оновити бібліотеку менеджера пакетів | . | ping | надіслати сигнал для перевірки доступності хосту |
| mv (move ) | переміщує файл | . | cp (copy) | створює копію файлу |
| pwd (present working directory ) | повертає поточне місцеположення | . | sudo (super user do) | надає найвищі права адміністратора |
У цьому завданні ви маєте створити тестовий додаток Node.js на основі фреймворку Express, що відповідає на запити HTTP.
helloworld у Cloud Shell і перенесіть у нього представлення:Далі ви створюєте й редагуєте файли. Для редагування файлів використовується редактор коду vi, emac, nano або Cloud Shell. Щоб відкрити редактор, натисніть відповідну кнопку в Cloud Shell.
Створіть файл package.json, а потім додайте в нього такий вміст:
Файл вище містить команду запуску скрипту й залежність від фреймворку вебдодатка Express.
Щоб зберегти файл package.json, натисніть CTRL+X, а потім – Y.
Після цього створіть у тому самому каталозі файл index.js і скопіюйте в нього наведені нижче рядки.
Цей код створює базовий вебсервер, який очікує передавання даних на порті, визначеному змінною середовища PORT (ПОРТ). Додаток готовий. Його можна перенести в контейнер і завантажити в Container Registry.
index.js, натисніть CTRL+X, а потім – Y.Dockerfile у каталозі з вихідними файлами й додайте в нього такий вміст:Щоб зберегти файл Dockerfile, натисніть Ctrl+X, а потім – Y.
Тепер створіть образ контейнера за допомогою Cloud Build – виконайте команду з каталогу, що містить Dockerfile. Зверніть увагу на змінну середовища $GOOGLE_CLOUD_PROJECT у команді, що містить ідентифікатор проекту практичного заняття:
Cloud Build – це сервіс, що виконує складання в GCP. Він виконує низку етапів складання, де кожен етап виконується в контейнері Docker, щоб створити контейнер додатка (або інші артефакти) і перемістити його в Cloud Registry за допомогою однієї команди.
Після цього з’явиться повідомлення про те, що контейнер успішно переміщено, з назвою образу (gcr.io/[PROJECT-ID]/helloworld). Образ зберігається в Artifact Registry. За потреби його можна використати повторно.
docker:Відкриється вікно вебпереглядача з повідомленням "Hello World!" (Привіт, світе!). Також можна використати curl localhost:8080.
docker не отримує образ віддаленого контейнера, виконайте таку команду: gcloud auth configure-docker
Завдяки позначці allow-unauthenticated (автентифікація необов’язкова) сервіс стає загальнодоступним.
назву сервісу, натиснувши клавішу Enter.Розгортання триватиме кілька хвилин.
У разі успіху в командному рядку з’явиться URL-адреса сервісу:
Тепер можна перейти в розгорнутий контейнер, відкривши URL-адресу сервісу в будь-якому вікні вебпереглядача:
Вітаємо! Ви розгорнули додаток, запакований в образ контейнера, за допомогою Cloud Run. Cloud Run автоматично й горизонтально масштабує образ додатка для обробки отриманих запитів, а в разі скорочення кількості запитів зменшує його масштаб. У власному середовищі ви платите лише за ресурси ЦП, пам’яті й мережі, використані для обробки запитів.
Крім командного рядка gcloud, можна також використовувати Cloud Run на Cloud Console.
helloworld:Ви не платите за Cloud Run, коли сервіс не використовується, проте з вас може стягуватися плата за зберігання створеного образу контейнера.
helloworld за допомогою такої команди:Щоб продовжити, за потреби введіть Y і натисніть клавішу Enter.
Щоб видалити сервіс Cloud Run, виконайте таку команду:
Y і натисніть клавішу Enter.Ви завершили практичне заняття.
Google Cloud Run і AWS Fargate – це безсерверні обчислювальні сервіси, за допомогою яких розробники можуть економно запускати й масштабувати контейнерні додатки. Проте вони також мають деякі відмінності.
Нижче наведено огляд деяких основних подібностей і відмінностей.
Подібності
Відмінності
Закінчивши виконувати завдання, натисніть кнопку End Lab (Завершити завдання). Google Cloud Skills Boost вилучить використані ресурси й очистить обліковий запис.
Ви зможете оцінити, наскільки вам сподобалося виконувати завдання на платформі. Виберіть потрібну кількість зірочок, введіть коментар і натисніть Submit (Надіслати).
Кількість зірочок відповідає певній оцінці:
Якщо ви не хочете надсилати відгук, просто закрийте діалогове вікно.
Залишайте свої відгуки, пропозиції або коментарі на вкладці Support (Підтримка).
© Google LLC 2022. Усі права захищено. Назва та логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.
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