GCP - App Engine Enum
Основна інформація
App Engine Google Cloud Platform (GCP) є надійною, безсерверною платформою, призначеною для розробки та хостингу веб-додатків великого масштабу. Дизайн цієї платформи спрямований на оптимізацію процесу розробки та покращення керованості додатків. Основні функції та переваги App Engine GCP включають:
Архітектура безсерверна: App Engine автоматично керує інфраструктурою, включаючи надання серверів, конфігурацію та масштабування. Це дозволяє розробникам фокусуватися на написанні коду, не турбуючись про апаратне забезпечення.
Автоматичне масштабування: App Engine може автоматично масштабувати ваш додаток у відповідь на обсяг трафіку, який він отримує. Він масштабується для обробки збільшеного трафіку та зменшується, коли трафік зменшується, допомагаючи оптимізувати витрати та продуктивність.
Підтримка мов та середовищ виконання: Підтримує популярні мови програмування, такі як Java, Python, Node.js, Go, Ruby, PHP та .NET. Ви можете запускати свої додатки в стандартному або гнучкому середовищі. Стандартне середовище більш обмежене, але високо оптимізоване для конкретних мов, тоді як гнучке середовище дозволяє більше налаштувань.
Інтегровані сервіси: App Engine інтегрується з багатьма іншими сервісами GCP, такими як Cloud SQL, Cloud Storage, Cloud Datastore та інші. Ця інтеграція спрощує архітектуру хмарних додатків.
Версіювання та розподіл трафіку: Ви легко можете розгортати кілька версій свого додатку, а потім розподіляти трафік між ними для A/B-тестування або поступових випусків.
Інформація про додаток: App Engine надає вбудовані сервіси, такі як журналювання, аутентифікація користувачів та набір інструментів розробника для моніторингу та управління додатками.
Безпека: Він пропонує вбудовані функції безпеки, такі як версіювання додатків, сертифікати SSL/TLS для безпечних з'єднань та управління ідентичністю та доступом.
Брандмауер
Для екземплярів, що запускають додатки, можна налаштувати простий брандмауер з такими параметрами:
SA
За замовчуванням сервісний обліковий запис, який використовується цими додатками, є <proj-name>@appspot.gserviceaccount.com
, який має роль Редактор у проекті, а сервісні облікові записи всередині екземпляра APP Engine працюють з обсягом cloud-platform (серед іншого).
Сховище
Вихідний код та метадані автоматично зберігаються в бакетах з назвами, такими як <proj-id>.appspot.com
та staging.<proj-id>.appspot.com
та <country>.<proj-id>.appspot.com
Кожен файл додатка зберігається з sha1 вмісту як ім'я файлу:
У папці ae
з staging.<proj-id>.appspot.com
існує одна папка на версію з файлами вихідного коду та файлом manifest.json
, який описує компоненти додатка:
Контейнери
Веб-додаток в кінцевому підсумку буде виконуватися всередині контейнера, і для побудови контейнера використовується Code Build.
URL-адреси та Регіони
Стандартна веб-сторінка буде доступна за URL-адресою <ім'я-унікального-проекту>.appspot.com
, хоча URL-адреса старших версій буде трохи відрізнятися, наприклад, https://20240117t001540-dot-<ім'я-унікального-проекту>.uc.r.appspot.com
(зверніть увагу на початковий мітки часу).
Може здатися, що можна розгорнути лише 1 веб-додаток движка програм за регіоном, але можна вказати service: <ім'я-сервісу>
в app.yml
та створити новий сервіс (новий веб). Формат URL-адреси для цього нового вебу буде <ім'я-сервісу>-dot-<ім'я-унікального-проекту>.appspot.com
.
Перелік
Кожного разу, коли ви завантажуєте новий код до додатку, створюється нова версія. Усі версії зберігаються, і навіть у них є URL-адреса для доступу до них. Таким чином, зміна коду старої версії може бути відмінною технікою постійності.
Як і з Cloud Functions, існує ймовірність, що додаток буде залежати від секретів, до яких звертаються під час виконання через змінні середовища. Ці змінні зберігаються в файлі app.yaml
, до якого можна отримати доступ наступним чином:
Підвищення привілеїв
pageGCP - AppEngine PrivescНеаутентифікована перелік
pageGCP - App Engine Unauthenticated EnumПісляексплуатаційна діяльність
pageGCP - App Engine Post ExploitationПостійність
pageGCP - App Engine PersistenceLast updated