Browsed by
Tag: CloudNative

AWS Lambda i idempotentność

AWS Lambda i idempotentność

Czym jest idempotentność? Według Wikipedii to właściwość pewnych operacji, która pozwala na ich wielokrotne stosowanie bez zmiany wyniku. Jaki to ma związek z nami? W tym artykule pokażę jak mają się do siebie AWS Lambda i idempotentność. W świecie aplikacji, szczególnie tych opartych o mikrosierwisy może wystąpić sytuacja, że np. jakaś wiadomość z kolejki zostanie przekazana do serwisu więcej niż jeden raz. To na nas spoczywa odpowiedzialność, żeby takie wielokrotne wywołanie np. funkcji Lambda poprzez takie samo zdarzenie przynosiło za każdym…

Read More Read More

Jak skasować pliki w S3 przy usuwaniu stacka Cloudformation

Jak skasować pliki w S3 przy usuwaniu stacka Cloudformation

Często, a właściwie prawie zawsze, jeżeli tworzymy buckety S3 za pomocą CloudFormation, to przy usuwaniu stacka mamy problem. AWS nie usunie bucketa, jeżeli są w nim jakieś pliki. A przewaznie są, bo po coś go w końcu tworzyliśmy. Dziś pokażę, jak skasować pliki w S3 przy usuwaniu stacka Cloudformation. Jeżeli ktoś nie napotkał jeszcze tego problemu, to szybko go zobrazujemy. Utworzymy bucket za pomocą poniższego template: AWSTemplateFormatVersion: 2010-09-0920 Description: — Resources: Bucket: Type: 'AWS::S3::Bucket’ Properties: LifecycleConfiguration: Rules: – Id: expiration…

Read More Read More

CI/CD za pomocą AWS Copilot

CI/CD za pomocą AWS Copilot

W poprzednim artykule o AppRunner pokazałem w jaki sposób łatwo wdrożyć w AWS skalowalną aplikację opartą o kontenery. Dziś zajmiemy się zbudowaniem procesu CI/CD za pomocą AWS Copilot. Zakładam, że mamy nasze źródła w repozytorium na GitHubie. Możecie zrobić forka z mojego lub utworzyć nowe. Mamy więc działającą aplikację w AWS App Runner, źródła w repozytorium. Przechodzimy do działania. CI/CD za pomocą AWS Copilot AWS Copilot potrafi utworzyć dla nas proces CI/CD. Cały proces deploymentu aplikacji będzie mógł być dzięki…

Read More Read More

Filtrowanie zdarzeń wyzwalających Lambdę

Filtrowanie zdarzeń wyzwalających Lambdę

Wczoraj AWS umożliwił filtrowanie zdarzeń pochodzących z usług SQS, DynamoDB oraz Kinesis, które wyzwalają wykonanie funkcji Lambda. Szkoda, że nie jakieś dwa tygodnie temu. Przydałoby się w jednym rozwiązaniu wdrożonym u klienta, gdzie filtrowanie zdarzeń wyzwalających Lambdę, a właściwie filtrowanie samych wiadomości, które były procesowane zaimplementowaliśmy wewnątrz funkcji. To bardzo fajna możliwość. Pozwoli, w niektórych przypadkach dość znacząco, zmniejszyć koszty. Ponad to uprości implementację samych funkcji. Będzie w nich mniej warunków. Przetestowałem to sobie, zobaczmy więc jak to wygląda. Filtrowanie…

Read More Read More

AWS Copilot CLI i AWS App Runner

AWS Copilot CLI i AWS App Runner

Pisałem już kilka razy o różnych usługach AWS umożliwiających wdrażanie skonteneryzowanych aplikacji. Było między innymi o tym, jak skalować aplikacje w usłudze ECS. Jednak kontenery można wdrożyć w AWS o wiele łatwiej. W tym artykule pokażę jak za pomocą AWS Copilot CLI i AWS App Runner uruchomić aplikację w chmurze AWS. Co to jest AWS App Runner AWS App Runner to usługa, która umożliwia uruchamianie w AWS skonteneryzowanych aplikacji typu response-request bez konieczności budowania całej infrastruktury pod spodem. Korzystanie z…

Read More Read More

Izolacja namespaces za pomocą Istio

Izolacja namespaces za pomocą Istio

Jakiś czas temu potrzebowałem odseparować od siebie trzy instancje aplikacji uruchamianej na jednym klastrze. W tym przypadku chodziło o OpenShift, ale nie to jest najważniejsze. Miałem do dyspozycji Istio. Każda z instancji aplikacji byłą zainstalowana w osobnej przestrzeni nazw klastra. Pokażę więc jak wygląda izolacja namespaces za pomocą Istio. Klaster i instlacja Istio Na nasze potrzeby utworzyłem klaster Kubernetes w usłudze GKE na platformie Google. Ale nie ma to większego znaczenia. Wszystko powinno zadziałać w każdym klastrze. Instalację Istio wykonałem…

Read More Read More

Łączymy Amazon GuardDuty z MS Teams i Slackiem

Łączymy Amazon GuardDuty z MS Teams i Slackiem

Nie będę się rozpisywał o usłudze GuardDuty. W dużym skrócie, na podstawie różnych danych potrafi wykryć na naszych kontach rzeczy, które nie powinny mieć miejsca. Ktoś na przykład zacznie kopać bitcoiny, to usługa powinna to wykryć i nas o tym powiadomić. No właśnie, powiadomić. Domyślnie dostajemy w konsoli tak zwane znaleziska   Tylko trzeba tam zaglądać. A to nie zawsze będzie miało miejsce. Jest tyle rzeczy, które mogą nam w tym przeszkodzić. Sporo z nas używa dziś MS Teams. Pokażę…

Read More Read More

Jak wykryć aktywność roota na koncie AWS

Jak wykryć aktywność roota na koncie AWS

Zakładając nowe konto w AWS musimy podać unikalny adres e-mail. Z tym adresem powiązany jest użytkownik typu root, który jest sterem i okrętem. Może w ramach konta zrobić wszystko. I między innymi dlatego nie powinniśmy tego konta używać. Jako odpowiedzialni użytkownicy AWS chcielibyśmy na pewno wiedzieć jeżeli root zacznie działać. Więc rodzi się pytanie, jak wykryć aktywność roota na koncie AWS? CloudTrail Jak zapewne wiecie, każda aktywność na naszym koncie zapisywana jest w usłudze CloudTrail. Możemy te logi przeglądać, możemy…

Read More Read More

EventBridge i API Destinations

EventBridge i API Destinations

Kilka dni temu AWS umożliwił dodanie do naszego EventBridge subskrybentów, do których zdarzenia będą wysyłane przez zwykły endpoint REST. EventBridge i API Destinations pozwolą na uproszczenie wielu rozwiązań. Tam gdzie do tej pory korzystaliśmy z funkcji Lambda, teraz wystarczy tylko EventBridge i odpowiedni target. Sprawdziłem jak to działa i pokażę w jaki sposób można wysłać na jakikolwiek endpoint (oczywiście także poza AWS) zdarzenia zarówno z naszych aplikacji jak i samego AWS. Zdarzenia Na potrzeby naszego rozwiązania przygotujemy dwie Event rules….

Read More Read More

Ten cały Cloud Native

Ten cały Cloud Native

Czym jest ten cały Cloud Native Na pytanie czym jest ten cały Cloud Native zdarza mi się odpowiadać dość często. Nie ma jednej dobrej odpowiedzi. Pięć osób będzie miało 10 odpowiedzi na ten temat. A ja także czasem mam nowe przemyślenia na ten temat. Na to pytanie postaram się odpowiedzieć za chwilę. Na razie odpowiedzmy sobie na pytanie Po co idziemy do chmury? No właśnie. To pytanie powinno się zadać każdemu, kto się wybiera do AWS, GCP lub Azure. Czego…

Read More Read More