Projekt i wdrożenie infrastruktury chmurowej dla firmy optAd360, opartej na klastrach Kubernetes i podejściu IaC

16 lutego 2022

Projekt i wdrożenie infrastruktury chmurowej dla firmy optAd 360, opartej na klastrach Kubernetes i podejściu IaC

Optad360 to dynamicznie rozwijająca się polska firma zajmująca się wdrażaniem rozwiązań wspierających i zarządzających monetyzacją stron internetowych, treści wideo i aplikacji pod kątem wyświetlanych reklam za pomocą autorskiego oprogramowania. Nowoczesne podejście do reklamy programmatic i wykorzystanie narzędzi AI sprawiło, że optAd360 odnotowuje bardzo intensywny wzrost na światowych rynkach reklamy internetowej, obsługując miesięcznie 1200 terabajtów reklam.

Jak to się zaczęło

Optad360 w ciągu niespełna 5 lat działalności pozyskał do współpracy ponad 3500 serwisów internetowych i aplikacji mobilnych, w których odnotowuje 11 miliardów odsłon miesięcznie. To daje 4200 reklam na sekundę przez 24 godziny, 7 dni w tygodniu. Skala działania jest więc ogromna, a plany na przyszłość zakładają podwojenie ilości reklam wyświetlanych na całym świecie już w 2022 roku.

Infrastruktura Klienta od momentu założenia firmy, działała w środowisku AWS, jednak niektóre systemy, takie jak Amazon Elastic Kubernetes Service (EKS), nie były aktualizowane. Niemożliwe było też podejmowanie decyzji biznesowych w oparciu o analizę danych, ponieważ stos AWS Elasticsearch, Logstash i Kibana (ELK) nie zbierał ich w sposób poprawny.

Szybkie wdrażanie kolejnych rozwiązań i systemów, wymagało do optymalnego funkcjonowania większej stabilności i zwinności. To zapoczątkowało proces wdrażania zmian.

– Musimy zarządzać ogromną ilością danych, a wraz z coraz większą liczbą klientów musieliśmy zautomatyzować naszą zdolność do skalowania i pozyskiwania nowych klientów. Szybki rozwój oznaczał, że potrzebowaliśmy lepszego środowiska testowego i DevOps. Hostersi i AWS pomogli nam zbudować systemy, które są stabilne, ale mogą też szybko się skalować – tłumaczy Jarosław Wisłocki, współzałożyciel i Head of Technology Development w optAd360.

Po przeprowadzeniu dogłębnego audytu istniejącej infrastruktury Klienta, wspólnie doszliśmy do wniosku, że najlepszym rozwiązaniem będzie stworzenie całkowicie nowego środowiska w oparciu o mikroserwisy i podejście IAC.

Wdrożenie infrastruktury

Planując wdrożenie nowej infrastruktury dla optAd360, skupiliśmy się na wykorzystaniu AWS EKS dla deploymentu wszystkich aplikacji, mi.in: Redis, MySQL/POSTgres SQL. Całą infrastrukturę stworzyliśmy w podejściu IaC, korzystając z narzędzi Terraform i Helm. Założeniem projektu, było zapewnienie separacji środowisk, zgodnie z ich przeznaczeniem – dla pracowników technicznych i handlowych.

Klaster Kubernetes uruchomiliśmy jako usługę zarządzaną przez AWS, natomiast za szyfrowanie sekretów odpowiada usługa AMAZON KMS. W clustrze z chartów Helm uruchomiliśmy m.in.:

  • AWS LB controler – który tworzy loadbalancery do obsługi ruchu przychodzącego
  • Metrics Server – agreguje metryki z API Clustra
  • Kubernetes Dashboard – do podglądu operacji na clustrze
  • Data Dog – do zbierania danych o clustrze i aplikacjach
  • Cluster Autoscaler – do automatycznego skalowania node’ów w clustrze w zależności od zapotrzebowania

Infrastruktura podzielona została na trzy standardowe środowiska – dev/stage/prod. Każde środowisko posiada oddzielne, dedykowane konto AWS. Ponadto założyliśmy również środowisko tools, które zawiera bucket S3 z plikiem statfile Terraforma dla wszystkich środowisk. Skonfigurowaliśmy Open VPN, scalający wszystkie środowiska i zapewniający bezpieczny dostęp do sieci. Projekt środowiska zakładał dostęp do infrastruktury dev/stage/prod dla wielu developerów na różnym poziomie uprawnień. W tym celu wykorzystaliśmy odpowiednio skonfigurowane role IAM.

W celu zapewnienia bezpieczeństwa i gwarancji błyskawicznego dostarczania treści reklamowych na całym świecie, skonfigurowaliśmy Amazon CloudFront. Dzięki rozrzuconej po całym świecie sieci amazonowych endpointów, udało nam się niemal całkowicie zlikwidować problem opóźnień w dostarczaniu treści, miesięcznie transferując 1,2 petabajta danych do odbiorców na całym świecie.

Podsumowanie

Dla optAd360 wdrożyliśmy całkowicie nowe środowisko oparte na klastrach Kubernetes i podejściu IaC. Dzięki zastosowaniu najnowszych rozwiązań i najlepszych praktyk, udało się skrócić czas niezbędny do onboardingu nowych klientów optAd360 o 50%, tj. z 2 do 4 dni.  Wykorzystując Amazon CloudFront zagwarantowaliśmy błyskawiczny i bezpieczny transfer potężnej ilości treści do odbiorców na całym świecie a zastosowane technologie, tworzą doskonały fundament do dalszego intensywnego, technologicznego rozwoju firmy w najbliższych latach.

Case Studies
Referencje

Hostersi zrealizowali usługi konsultingowe z zakresu doboru odpowiedniej bazy danych w Amazon Web Services oraz pomyślnie przeprowadzili migrację bazy danych MySQL do Amazon Aurora. 

Tomasz Ślązok
CTO Landingi
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.