Usługi / Infrastruktura w chmurze

Chmura

Projektujemy i utrzymujemy infrastrukturę w AWS, Azure i GCP pod Waszą aplikację

Projektujemy, wdrażamy i utrzymujemy środowiska w AWS, Azure i Google Cloud. Zaczynamy od aplikacji: baza, sekrety, ruch i to, co zostaje w serwerowni. Potem stawiamy konta, sieć i klaster. Aplikację wdrażamy z Gita, najpierw na staging, potem na produkcję, z dyżurem, kopiami i budżetem.

Aplikacja Najpierw stack, baza, sekrety i model ruchu
Staging To samo środowisko co produkcja, tylko mniejsze
Produkcja Wdrożenie z Gita, z historią kto wpuścił
Utrzymanie Dyżur, kopie, budżet i most do serwerowni
Jak to składa się w całość

Od aplikacji do klastra, wdrożenia i dyżuru

Najpierw rozumiemy aplikację i jej zależności. Na tej podstawie składamy konta, sieć, Kubernetes, wdrożenia i monitoring. Terraform, Argo CD i Grafana służą do tej pracy na co dzień.

  • Uprawnienia i logi wchodzą już na pierwszym środowisku. Z tej samej bazy później korzysta audyt i dyżur.
  • Dobieramy AWS, Azure albo GCP do aplikacji, danych i kosztu. Drugiego dostawcę dokładamy, gdy biznes tego potrzebuje.
Terraform Registry, providery i moduły infrastruktury
01, Terraform

Przygotowujemy konta, sieć i uprawnienia pod aplikację

Zaczynamy od miejsca, w którym aplikacja ma stanąć. W Terraformie zapisujemy konta, foldery, sieci, IAM, logi i reguły. Każde środowisko ma własny moduł. Zmiana idzie przez plan w merge request, a wdraża ją pipeline.

Organizacja

Osobne konto na produkcję i osobne na logi. Incydent na jednym nie otwiera całego środowiska.

Sieć

VPC, peering, PrivateLink i połączenie do serwerowni. Wejście do aplikacji zostaje prywatne, chyba że ma być publiczne.

Reguły

Policy i obowiązkowe tagi. Publiczny bucket tylko z wyjątkiem, datą i właścicielem.

Przegląd

Plan Terraform widać w merge request. Zmianę wdraża pipeline.

Kubernetes Dashboard, pody, CPU i pamięć
02, Kubernetes

Stawiamy klaster pod ruch i dane aplikacji

Na EKS, AKS albo GKE ustawiamy politykę sieci, limity, kopie i plan upgrade. Dobieramy dostawcę do zespołu i do tego, jak aplikacja jest obciążana. Funkcje serverless dokładamy tam, gdzie ruch jest krótki i nierówny.

Addony

Ingress, DNS, storage i autoscaler. Wersje trzymamy w kodzie.

Dane

Baza zarządzana albo na klastrze, zawsze z kopią. Sekrety aplikacji trzymamy w vault.

Upgrade

Plan wersji, test na staging, okno zmiany z możliwością cofnięcia.

Koszt

Dobieramy rozmiar grupy node od początku. Tagi i alert na skok rachunku wchodzą razem z klastrem.

Argo CD, aplikacje, health i sync GitOps
03, Argo CD

Wdrażamy aplikację z Gita, najpierw na staging

Pipeline buduje obraz aplikacji. Argo CD wdraża to, co przeszło przegląd. Najpierw staging, potem produkcja. Uprawnienia do chmury zostają w pipeline, z zapisem kto wdrożył. Konsola dostawcy służy do diagnozy.

Środowiska

Ten sam chart Helm, inne wartości per środowisko. Na produkcję idzie merge.

Granice

Projekt per zespół. Na produkcji węższy dostęp.

Sekrety

External Secrets albo Sealed Secrets, z rotacją. Haseł nie trzymamy w repozytorium otwartym tekstem.

Awaria

Rollback do znanego commita. Playbook na region i na sam klaster.

Grafana, katalog dashboardów i źródeł danych
04, Grafana

Dyżur widzi aplikację, klaster i koszt

Metryki z aplikacji, klastra i chmury schodzą do Grafany albo zostają u dostawcy, z mostem. Dyżur ma jeden obraz. Budżet stoi obok SLO, żeby koszt i niezawodność miały tego samego właściciela.

Telemetria

API, baza, kolejka, klaster i koszt tagu. Alert na błąd aplikacji i na skok rachunku.

Logi

Retencja, szyfrowanie, kto może czytać. Ślad zmian w chmurze idzie razem z logami aplikacji.

Hybryda

Ten sam dashboard dla chmury i serwerowni, gdy most już stoi.

Ludzie

Zespół i finanse widzą koszt konkretnej usługi.

Jak pracujemy

Od aplikacji klienta do produkcji

Zaczynamy od aplikacji: baza, sekrety, ruch i to, co zostaje w serwerowni. Potem stawiamy konta, sieć i klaster. Aplikację budujemy w pipeline i wdrażamy z Gita, najpierw na staging, potem na produkcję. Zostajemy przy dyżurze, kopiach i koszcie.

  1. Aplikacja Sprawdzamy stack, bazę, kolejki i model ruchu. Ustalamy środowiska, sekrety i to, co zostaje on-prem. Z tego wychodzi zakres: konto, region, klaster.
  2. Konta i sieć W Terraformie przygotowujemy konta, IAM, sieć i logi. Osobna produkcja, osobne logi. Wejście do aplikacji prywatne, chyba że ma być publiczne.
  3. Klaster i staging Stawiamy klaster, addony, sekrety i kopie. Staging ma ten sam kształt co produkcja, tylko mniejszy. Pipeline buduje obraz aplikacji.
  4. Produkcja i dyżur Argo CD wdraża to, co przeszło przegląd. Po starcie alerty, kopie, budżet i okno na upgrade. Most do serwerowni dokładamy, gdy część systemów zostaje u Was.
Rozmowa

Omówimy aplikację, środowiska i koszt

Na tej podstawie przygotujemy zakres: konta, klaster, wdrożenia i utrzymanie.

Skontaktuj się