Wdrożenie infrastruktury chmurowej dla Magic Commerce, opartej o mikroserwisy, kontenery i podejście IaC
Spółka Magic Commerce jest twórcą aplikacji mobilnej Amano, która pozwala agregować i monitorować wszelkie zakupy internetowe, oferty promocyjne i newslettery sklepów internetowych. Dodatkowo aplikacja ma docelowo oferować uproszczone zwroty towarów kupionych online. Spółka chce poprawić doświadczenia pozakupowe użytkowników oraz poprawić skuteczność dotarcia do klientów z treściami marketingowymi i poprawić konwersję sprzedawców.
Początek współpracy
Nasza współpraca z Magic Commerce rozpoczęła się w momencie, w którym wersja testowa aplikacji do obsługi sklepów internetowych była już właściwie gotowa, a intencją Klienta było przygotowanie dla niej infrastruktury chmurowej, gwarantującej odpowiednie działanie aplikacji po wejściu na rynek. Główne założenia obejmowały budowę infrastruktury jako kodu (IaC), opartej o architekturę mikroserwisową i kontenery, która będzie zdolna do szybkiego skalowania w zależności od potrzeb. Docelowo, infrastruktura ma być powielana w kolejnych regionach AWS, wraz z rozwojem firmy na świecie. Warto w tym miejscu dodać, że inwestycja była współfinansowana przez program wsparcia dla startupów realizowany przez Amazon Web Services, a wartość dofinansowania wyniosła 10 000$.
Przed rozpoczęciem prac, wykonaliśmy audyt infrastruktury, w ramach której stworzona została aplikacja, a analiza jego wyników pozwoliła nam wybrać optymalne rozwiązania. Szkieletem całej infrastruktury został auto skalowalny Amazon ECS (Elastic Container Service i baza danych Amazon Aurora Serverless. Naszym głównym zadaniem było zbudowanie środowiska działającego bez względu na obciążenie, dlatego zdecydowaliśmy, że poza kontenerami, skalowalna będzie również baza danych.
Infrastruktura i bezpieczeństwo
Za obsługę treści statycznych odpowiada Amazon S3, który razem z AWS Cloudfront, odpowiadającym za pliki cache, przyspiesza działanie aplikacji.
Wszystkie wykorzystywane obrazy, przechowywane są w Amazon Elactic Container Registry (ECR) który przesyła je do Amazon Elastic Container Service (ECS), gdzie tworzone są kontenery. Całość zrealizowaliśmy w Terraformie, zgodnie z podejściem CI/CD, natomiast do deploymentu użyliśmy usługi Bit Bucket. Dzięki temu, procedura uruchomienia kolejnych środowisk i nowych funkcjonalności aplikacji Klienta, została maksymalnie skrócona i uproszczona.
Ze względu na wymogi Magic Commerce, wdrożyliśmy rozwiązania HIPAA COMPLIANCE w zakresie bezpieczeństwa. Chodzi między innymi o szyfrowanie ruchu „w locie” czy szyfrowanie zawartości dysków. Do nawiązywania połączenia z infrastrukturą przez bastion, zestawiliśmy połączenie VPN, natomiast do monitoringu infrastruktury skonfigurowane zostały Dashboardy w Amazon Cloudwatch.
Ponadto do zbierania logów aplikacyjnych wykorzystaliśmy aplikację Opensearch, której dane wizualizowane są w Kibanie (Open Search Dashboards). Wdrożyliśmy również Amazon SQS do wysyłania i odbierania maili, który w połączeniu z Amazon SES i AWS Lambda służy do obsługi mailingów.
Podsumowanie
Dla Magic Commerce skonfigurowaliśmy skalowalną infrastrukturę chmurową, opartą o kontenery, mikroserwisy i podejście CI/CD. Całość zabezpieczyliśmy zgodnie ze standardem HIPAA COMPLIANCE, gwarantując odpowiednie szyfrowanie na każdym poziomie. Ponadto wdrożyliśmy narzędzia do monitoringu nowej infrastruktury i zadbaliśmy o odpowiednie przeszkolenie zespołu Klienta, przygotowując go do pracy w nowym środowisku.
PYTANIA? SKONTAKTUJ SIĘ Z NAMI
Zobacz również:
Migracja do Amazon Web Services aplikacji i serwisów DANONE
Wdrożenie i opieka nad infrastrukturą chmurową w AWS dla Displate
Migracja bazy danych MySQL do Amazon Aurora platformy Landingi.com