Міграція додатка та автономної бази даних з VM (Google Compute Engine) на сучасну контейнеризовану архітектуру.

Використання керованих сервісів Google Kubernetes Engine (APP) + Cloud SQL (DB) у високій доступності (HA)

pic

У ще одному фантастичному проєкті, заснованому на реальному сценарії, я працював як спеціаліст з хмарних технологій для міграції Compute Engines (VMs) для додатків і баз даних до регіону Австралії за короткий час.

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

Я мігрував ресурси, що працювали на Google Compute Engine (VMs), в сучасну та контейнеризовану архітектуру, використовуючи керовані сервіси Google Kubernetes Engine (GKE) та Cloud SQL для шару бази даних, зокрема, для високої доступності (HA).

pic

Реалізація рішення

  1. Міграція VMs до регіону Австралії:
    Перша етап була міграція існуючих VMs до регіону Австралія. Це включало створення нових інстансів VM у бажаному регіоні та перенесення даних і налаштувань з оригінальних VMs на нові інстанси.

  2. Контейнеризація додатка:
    Для модернізації додатка потрібно було контейнеризувати сервіси, які працювали на VMs. Я використав Docker для створення образів додатків і баз даних. Ці образи були збережені в Google Container Registry для полегшення керування та поширення.

  3. Розгортання на Google Kubernetes Engine (GKE):
    Коли образи Docker були готові, наступним кроком було налаштування Google Kubernetes Engine (GKE) для оркестрації контейнерів. Я створив кластер GKE в Австралії та налаштував деплойменти та сервіси для запуску додатка масштабовано та стійко.

  4. Налаштування Cloud SQL з високою доступністю (HA):
    Для шару бази даних я мігрував автономну базу даних до Cloud SQL, налаштувавши її для високої доступності (HA). Це забезпечило толерантність до збоїв і можливість підтримки перерв без впливу на додаток.

  5. Налаштування мережі та безпеки:
    Я налаштував приватні мережі (VPC), щоб забезпечити безпечну та ефективну комунікацію між сервісами. Використовував Private IPs для зв'язку між GKE і Cloud SQL, гарантуючи безпечну передачу даних у межах мережі Google Cloud.

  6. Моніторинг і обслуговування:
    Я впровадив інструменти моніторингу та логування для забезпечення коректної роботи додатка та бази даних. Використовував Google Cloud Operations (раніше Stackdriver) для моніторингу продуктивності та стану сервісів.

Переваги нової архітектури

  • Масштабованість: Нова архітектура дозволяє масштабувати додаток та базу даних незалежно, забезпечуючи ефективну відповідність запитам.
  • Висока доступність: Завдяки налаштуваному Cloud SQL у HA та GKE, що оркеструє контейнери, додаток готовий витримувати збої та забезпечувати безперервність роботи.
  • Безпека: Використання приватних мереж та Private IPs гарантує, що комунікація між сервісами безпечна та захищена від несанкціонованого доступу.
  • Спрощене керування: Керовані сервіси GKE та Cloud SQL спрощують керування та обслуговування інфраструктури, дозволяючи команді зосередитися на розробці нових функціональностей.

Висновок

Цей проєкт показав ефективність міграції до сучасної контейнеризованої архітектури за допомогою керованих сервісів Google Cloud. Нова архітектура не лише покращила масштабованість і доступність додатка, але й спростила керування та підвищила безпеку даних. Я пишаюся тим, що очолив цю міграцію і зробив свій внесок у модернізацію інфраструктури додатка.

Перекладено з: Migração de Aplicação e Banco de Dados Standalone em VM (Google Compute Engine) para Arquitetura Moderna Containerizada.

Leave a Reply

Your email address will not be published. Required fields are marked *