dot dot dot

Terraform i Infrastructure as Code (IaC)

Nasz stack technologiczny.

Często na prezentacjach wykorzystania chmur obliczeniowych możemy spotkać się z tworzeniem usług “wyklikiwanych” przez interfejs graficzny. Wszystko dzieje się szybko i efektownie, jest atrakcyjne wizualnie i przyciąga naszą uwagę. W praktyce jednak taka metoda zarządzania infrastrukturą w chmurze ma swoje bardzo istotne wady.
 
Budowanie wielu środowisk trwa długo i najczęściej nie jesteśmy w stanie uniknąć rozbieżności a popełnione błędy trudno jest wykryć. Stosowanie narzędzi IaaC (infrastructure as a code), które opisują infrastrukturę kodem jest rozwiązaniem. Kod automatyzuje budowanie środowiska, zapewnia spójność i powtarzalność środowisk. Dodatkowo możemy wersjonować taki kod, dzięki czemu zawsze mamy dostęp do historii zmian.
 
Budując infrastrukturę w chmurach dla naszych klientów, zawsze opisujemy infrastrukturę kodem, zgodnie z dobrymi praktykami tworzenia i administrowania takimi środowiskami. Najczęściej używamy do tego celu Terraform ale na życzenie klientów stosujemy też natywne narzędzia dostawców chmur obliczeniowych. 

Other Technologies

Rozwój aplikacji w technologiach serverless

Na co dzień, budując rozwiązania bezserwerowe (serverless) w chmurach obliczeniowych, stosujemy języki Python i Go. Usługi bezserwerowe pozwalają na najbardziej optymalne wykorzystanie zasobów chmury, pozwalając płacić tylko za to, co się wykorzystuje (pay-as-you-go) pozbywając się ograniczeń wydajnościowych. 

Procesy CI/CD

Narzędzia Continuous Integration i Continuous Delivery pozwalają na zbudowanie procesu nieprzerwanego wdrażania oprogramowania w środowisku serwerowym. Dobrze przygotowane systemy umożliwiają testowanie i wdrażanie nawet kilku tysięcy zmian dziennie, w sposób niezauważalny dla klienta. Obecnie na rynku dostępne są różne narzędzia CI/CD, a ich wybór zależy od wielu czynników.

Apache, Nginx oraz inne narzędzia WWW

Technologie WWW pozwalają na dostęp do usług i stron internetowych za pomocą przeglądarek. Najczęściej spotykanymi serwerami WWW są Apache, Nginx oraz IIS. Wokół tych serwerów stosuje się też dużo innych dodatkowych komponentów, których celem jest zapewnienie dostępności i szybkości działania stron internetowych. 

Kafka oraz systemy strumieniowo-kolejkowe

Systemy strumieniowe i kolejkowe są wykorzystywane do wymiany informacji pomiędzy różnymi częściami systemu informatycznego. Są one szczególnie pomocne w środowiskach mikroserwisów, które wykorzystują mechanizmy publikowania i subskrypcji, aby zagwarantować, że wiadomości trafiają do zamierzonych odbiorców. Systemy kolejkowania mogą być również wykorzystywane jako ochrona przed utratą wiadomości, która zdarza się, gdy wiadomości trafiają do bardzo obciążonych usług back-end.  

Bazy danych, składowanie i analiza danych

Firmy ogromadzą i przetwarzają ogromne ilości informacji. Sposób przechowywania danych, szybkość dostępu do nich i możliwości dokonywania analiz są znaczące dla rozwoju biznesu. Na przestrzeni lat, bazy danych ewoluowały. Aby otrzymać najlepsze efekty, musimy zadbać o właściwy dobór technologi w zależności do ilości i przyrostu danych, czasu dostępu, czy też ich struktury. 

Ansible, automatyzacja i orkiestracja systemów

Narzędzia do automatyzacji i orkiestracji systemów wspomagają zarządzenie grupami serwerów, szczególnie wtedy gdy środowiska informatyczne korzystają z mechanizmów automatycznego skalowania. Narzędzia automatyzacji i orkiestracji zadbają o spójność środowisk i ich konfigurację, dzięki czemu będziesz mógł skupić się na swoim biznesie.

Kubernetes, docker i inne technologie związane z konteneryzacją

Kontenery wraz ze zbiorem narzędzi do ich zarządzania oraz deploymentu aplikacji to niezbędny element wykorzystywany do budowania nowoczesnych środowisk mikrousługowych. W porównaniu do monolitycznych dużych aplikacji, środowiska mikrousługowe wykazują się większą niezawodnością, łatwością rozwoju i skalowania.

Chmury obliczeniowe i technologie chmurowe

Chmury obliczeniowe to rozproszona na całym świecie infrastruktura, która zapewnia dostęp do usług informatycznych w modelu opłaty za wykorzystanie pay-as-you-go. Chmury obliczeniowe umożliwiają szybki rozwój aplikacji z wykorzystaniem gotowych rozwiązań. Gwarantują najwyższe standardy bezpieczeństwa i automatyczne dostosowanie zasobów do potrzeb klienta. Dla wielu firm rozwiązanie to jest jednym z najważniejszych elementów składających się na ich sukces.

scroll