Infrastruktura oparta na AKS dla platformy PartsClub i Automa.Net

5 kwietnia 2022

Infrastruktura oparta na AKS dla platformy PartsClub i Automa.Net

Dla platformy PartsClub i Automa.Net wdrożyliśmy chmurową infrastrukturę opartą na Azure Kubernetes Service (AKS). W efekcie Klient zyskał ogromną elastyczność, skalowalność i możliwość realizacji strategii go global.

PartsClub i Automa.Net to najprostszy sposób kupowania i sprzedawania części przez Internet. Obie platformy operują w innych rynkach wertykalnych. PartsClub to części przemysłowe do maszyn rolniczych, budowalnych, Automa.Net to platforma do automatyki i elektroniki przemysłowej. Są to platformy, które umożliwiają opublikowanie posiadanych części, elementów w celu umożliwienia sprzedaży zarówno indywidualnym klientom jak również dostawcom w bezpieczny i spersonalizowany sposób. Platforma skraca czas związany z wyceną posiadanej części. Platforma umożliwia wyszukiwanie używając nazwy firmy, kraju oraz oferowanych produktów i marek.

Ze względu na chęć wdrożenia technologii Kubernetes, potrzebę elastycznego skalowania infrastruktury oraz globalny zasięg usług świadczonych przez Klienta technologie Microsoft Azure były najlepszym wyborem. Usługa Azure Kubernetes Service (AKS) upraszcza wdrażanie zarządzanego klastra Kubernetes na platformie Azure, przenosząc koszty operacyjne na platformę Azure.

"Technologia natywna dla chmury pomaga nam zapewnić wysoką dostępność naszej działalności, jednocześnie poprawiając wydajność rozwoju i testowania, skracając cykl badawczo-rozwojowy i umożliwiając szybką dostawę produktów".  

Marcin Krzączkowski, Managing Director at Automa.Net

Wdrożenie:

Firma zgłosiła się do nas w sprawie wsparcia wdrożenia opartego o Kubernetes na platformie Azure. Zadanie postawione przed naszym zespołem polegało na konfiguracji i uruchomieniu usług:

  • Azure Database for MySQL – baza uruchomiona w usłudze serwera elastycznego MySQL w celu zapewnienia łatwego skalowania w dół / w górę, zapewnienia wysoką dostępność i prosty sposób na backup danych
  • Apache Cassandra i usługa FTP - zapewnia zautomatyzowane operacje wdrażania i skalowania dla zarządzanych centrów danych Apache Cassandra typu open source. Ta usługa pomaga przyspieszyć scenariusze hybrydowe. Dodatkowo serwer FTP na który wrzucane są treści dostawców.
  • Container Registry - przechowuje obrazy zbudowane przez deweloperów i dostarcza je do innych usług
  • Key Vault – bezpieczna usługa do przechowywania sekretów i haseł potrzebnych dla klastra Kubernetes (wdrożona jako automatyczne montowanie), a także dla repozytorium BitBucket
  • Storage – zapewnia trwałe miejsce do przechowywania danych na potrzeby klastra Kubernetes, a także serwera FTP. Wykorzystuje zarówno Blob Storage jak i File Share.
  • App Service – platforma PaaS wykorzystana do uruchomienia obrazu z frontend aplikacji
  • Azure Backup – tworzy i przechowuje kopie zapasowe wybranych usług z środowiska
  • Azure Kubernetes Service - chmurowe wdrożenie usługi Kubernetes. Uruchomiono tutaj większość usług infrastruktury z wykorzystaniem Helm i GitOps. Umożliwia łatwe skalowanie podów i nodów i dostosowywanie do ruchu. Przed klastrem znajduje się Load Balancer który według reguł kieruje ruchem. Kluczowe elementy wdrożone w klastrze to:
    • Argo CD - zapewnia bardzo bogate GUI do zarządzania procesem ciągłego dostarczania z wieloma podejściami do synchronizacji z klastrem AKS. Zarządza większością aplikacji uruchomionych w klastrze dzięki nowoczesnemu podejściu GitOps.
    • ElasticSearch - umożliwia niezawodne i bezpieczne pobieranie danych z dowolnego źródła i w dowolnym formacie, a następnie wyszukiwanie, analizowanie i wizualizowanie ich w czasie rzeczywistym.
    • Redis - poprawia wydajność i skalowalność aplikacji, która intensywnie korzysta z magazynów danych
    • RabbitMQ - służy do kolejkowania wiadomości, które następnie są pobierane przez różne komponenty aplikacji
    • Aplikacje klienta – główne komponenty infrastruktury oparte na PHP i framework Laravel
    • Nginx Ingress – odpowiada za kierowanie ruchem HTTP i HTTPS.
  • Bastion – maszyna zapewniająca dostęp do infrastruktury wraz z konfiguracją potrzebnych narzędzi
  • BitBucket – hosting na potrzeby systemu kontroli wersji GIT dla aplikacji, a także ArgoCD.
  • DataDog – stack monitorujący i zbierający logi z klastra Kubernetes
  • CloudFlare - zewnętrzna usługa dostarczająca funkcjonalność DNS i SSL. Została również skonfigurowana jako Firewall dla niektórych usług.

Architektura:

Infrastruktura oparta na AKS dla platformy PartsClub i Automa.Net

Korzyści dla klienta:

Wdrażając Kubernetesa, zespół projektowy był w stanie zbudować skalowanie na żądanie i nowe zasady przełączania awaryjnego, a także uprościć ogólne wdrażanie i zarządzanie skomplikowanym elementem infrastruktury. Dzięki usłudze AKS platforma PartsClub i Automa.Net  może skalować użycie kontenera zgodnie z zapotrzebowaniem. Obciążenia mogą zmieniać się dynamicznie, umożliwiając uruchamianie niektórych procesów w tle, gdy klaster jest bezczynny, a następnie w razie potrzeby powrót do uruchamiania usług skierowanych do klienta.

Barbara Halska – na co dzień pracuje w Hostersi Sp. z o.o, gdzie odpowiada za działania presales i ewangelizację rynku w obszarze cloud computing. Od 2016 Microsoft Innovative Educator Expert, od 2017 Microsoft Innovative Educator Fellow. Współautorka podręcznika do kwalifikacji E13 i EE08 na kierunku technik informatyk oraz e-podręcznika „Wstęp do programowania” w projekcie Apki.org. Popularyzatorka większego udziału kobiet w IT i wykorzystywania nowych technologii w edukacji.

Case Studies
Referencje

Hostersi wsparli nas na każdym etapie projektowania i budowy infrastruktury. Finansowanie, które pomogli pozyskać nam od AWS, pozwoliło przetestować szereg różnych rozwiązań i wybrać konfigurację, która najlepiej odpowiada potrzebom naszej aplikacji. Hostersi stworzyli dla nas infrastrukturę „szytą na miarę”, którą dzięki programowi wsparcia startupów, pozyskaliśmy niemal bezkosztowo.

Wojciech Mróz
CEO & Co-founder Pagaspot
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.