Proiecte · 03

Clustere și baze de date mutate între AWS, Azure și Google Cloud, în producție

Producția live, bază de date și cluster Kubernetes împreună, a fost mutată de pe AWS pe Azure în două săptămâni, cu aproximativ cinci minute de downtime. Backup-urile sunt verificate automat, iar afacerea nu mai depinde de un singur furnizor.

Cloud · Kubernetes

5 minde downtime la mutarea producției live de pe AWS pe Azure
Context
Cerințe de rezidență a datelor și de deployment single-tenant pentru clienți mari, plus costuri care justificau schimbarea furnizorului.
Ce am făcut
Producția live mutată de pe AWS pe Azure, bază de date și cluster Kubernetes împreună: manifeste, replici regionale, deployment-uri dedicate pentru un singur tenant. Mai târziu, un mediu a fost împărțit în două, cu baze de date și clustere separate, iar un produs separat, care rula pe Google Cloud, a fost readus în platforma principală împreună cu clienții lui. Mutarea CI/CD de pe Bitbucket Pipelines pe GitHub Actions, cu build, suite de teste unit, smoke, regresie și E2E, verificări de backup și restore și workflow-uri de deploy în producție.
Rezultat
De pe AWS pe Azure în două săptămâni, cu aproximativ cinci minute de downtime, cât s-a propagat DNS-ul. Infrastructură pe trei clouduri, operată de o echipă mică, cu deploy-uri repetabile și backup-uri verificate automat.
Stack
Kubernetes (EKS, AKS, GKE), GitHub Actions, MySQL, Cloudflare

De pe AWS pe Azure în două săptămâni

S-a mutat tot mediul de producție: baza de date și clusterul Kubernetes, live, cu clienții pe el. Mutarea a durat două săptămâni, de la început până la comutare. Comutarea în sine a însemnat aproximativ cinci minute de downtime, adică timpul în care DNS-ul s-a propagat către noul mediu.

Un mediu împărțit în două

Mai târziu, un grup de clienți a avut nevoie de un mediu propriu. Producția unică a fost împărțită în două, fiecare cu baza ei de date și cu clusterul ei Kubernetes, iar acei clienți au fost mutați.

Un produs separat, readus în cel principal

Un produs separat crescuse lângă platforma principală, pe Google Cloud, construit în jurul Kafka. Când a avut mai mult sens ca parte din produsul principal, funcționalitatea lui a fost adusă înapoi în repository-ul principal, iar clienții lui au fost migrați odată cu ea. O singură bază de cod și o singură platformă de operat, în loc de două.

Ce face totul repetabil

Nimic din toate acestea nu se face în siguranță de mână. Pe parcurs, CI/CD a fost mutat de pe Bitbucket Pipelines pe GitHub Actions, cu build, suite de teste unit, smoke, regresie și end-to-end, workflow-uri de deploy în producție și verificări de backup și restore care rulează automat, pentru că un backup care nu a fost restaurat niciodată nu este un backup.

Contact

Hai să discutăm

Scrie-ne ce ai, în cuvintele tale. Nu trebuie să știi ce tehnologie folosește sistemul; ne dăm seama noi. Primești înapoi întrebări și o propunere scrisă.

Scrie-nesau direct la [email protected]