Każdy dzień zespołu DevOps zaczyna się tak samo – sprawdzeniem, czy system działa poprawnie i czy nagle coś się nie zmieniło. Krótko mówiąc, przegląd incydentów z systemu monitoringu. Czy można ten proces zautomatyzować, oszczędzając czas naszych specjalistów? TAK! Naprzeciw wychodzi AWS z usługa, która skutecznie w tym pomaga – Amazon DevOps Guru.
Jak wdrożyć i rozliczyć Amazon DevOps Guru?
Amazon DevOps Guru to połączenie dwóch elementów. Po pierwsze monitoringu, który na co dzień wykonujemy za pomocą Cloudwatch wraz z X-Ray i po drugie śledzenia zmian wykonywanych z użyciem AWS Config i CloudTrail (co w praktyce prawie zawsze pomijamy). W tym artykule znajdziesz praktyczne informacje pozwalające wdrożyć to rozwiązanie w Twojej firmie!
Funkcjonalności Amazon DevOps Guru
Uruchomienie usługi DevOps Guru to dosłownie kilka kliknięć. W tle tworzy się rola IAM nadająca uprawniania usłudze do analizy środowiska.
Po uruchomieniu pierwszy proces zapoznaje się z naszym środowiskiem.
Po zapoznaniu się widzimy, co znajduje się na naszej platformie.
Ponieważ DevOps Guru jest narzędziem z chmury AWS, to zgodnie z jej podejściem posiada integrację z SNS, czyli systemem powiadomień.
Na podstawie analizy naszego środowiska otrzymujemy zestawienie błędów wraz z rekomendacjami, co konkretnie powinniśmy wykonać w danym przypadku.
Kolejny raport przedstawia te same informacje, ale w formie proaktywnej, czyli jest wynikiem połączenia zagregowanych metryk z systemem napędzanym przez uczenie maszynowe, którego zadanie to wykrywanie anomalii.
Jak łatwo zauważyć, otrzymujemy dane, które przestawiają zestaw tego, co należy zweryfikować.
Integracja tego rozwiązania chociażby z platformą Pager Duty pozwala w reprodukowany sposób utworzyć scenariusze zarządzania i utrzymania środowiska przez zespół. Do tego upraszcza procesy utrzymania SLA, które deklarujemy jako zespół.
Amazon DevOps Guru – ile to kosztuje?
Skoro wszystko tak pięknie działa, to ile nas to będzie kosztować? Jak to zwykle jest płacimy za zasoby, a w tym przypadku za każdy analizowany zasób z dokładnością co do godziny.
Dla przykładu środowisko, które składa się z: 2 wiadra 😊 (bucket) S3 oraz 10 instancji EC2 będzie nas kosztować nie więcej niż 14 USD miesięcznie.
Środowisko zdecydowanie większe więc: 15 bucket-ów S3, 50 EC2, do tego 2 instancje RDS oraz ELB to koszt już blisko 100 USD.
Amazon DevOps Guru – jakie wspiera usługi?
Na chwilę obecną (a dokładnie dzień pisania tego artykułu) Amazon DevOps Guru integruje się z:
- Amazon API Gateway (API Gateway)
- Auto Scaling groups in Amazon EC2
- AWS CloudFormation (AWS CloudFormation)
- Amazon CloudFront (CloudFront)
- Amazon CloudWatch (CloudWatch)
- Amazon DynamoDB (DynamoDB)
- Amazon DynamoDB Stream
- AWS Elastic Beanstalk (Elastic Beanstalk)
- Amazon Elastic Compute Cloud (Amazon EC2)
- Amazon Elastic Container Service (Amazon ECS)
- Amazon Elastic Kubernetes Service (Amazon EKS)
- Elastic Load Balancing (Elastic Load Balancing)
- Amazon ElastiCache (ElastiCache)
- Amazon Elasticsearch Service
- Amazon Kinesis Data Streams (Kinesis Data Streams)
- AWS Lambda (Lambda)
- Amazon Redshift
- Amazon Relational Database Service (Amazon RDS)
- Amazon Route 53 (Route 53)
- Amazon SageMaker (SageMaker)
- Amazon Simple Notification Service (Amazon SNS)
- Amazon Simple Queue Service (Amazon SQS)
- Amazon Simple Storage Service(Amazon S3)
- Amazon Simple Workflow Service (Amazon SWF)
- Amazon Virtual Private Cloud (Amazon VPC)
- Amazon Virtual Private Cloud NATGateway
- AWS Step Functions (Step Functions)
Podsumowanie
Wprowadzanie tego rozwiązania jest kolejnym krokiem w zautomatyzowanej implementacji metodyki DevOps. Amazon DevOps Guru znacząco ułatwia zarządzanie środowiskiem zbudowanym w oparciu o platformę AWS. Ja już wykorzystałem Amazon DevOps Guru u jednego z naszych klientów. Zapytaj, czy Tobie to rozwiązanie również pomoże!