AWS Notes
Kanalga Telegram’da o‘tish
AWS Notes — Amazon Web Services Educational and Information Channel Chat: https://t.me/aws_notes_chat Contacts: @apple_rom, https://www.linkedin.com/in/roman-siewko/ No ads.
Ko'proq ko'rsatish5 801
Obunachilar
Ma'lumot yo'q24 soatlar
-27 kunlar
+230 kunlar
Postlar arxiv
5 802
Установка Sentry на AWS сервисах из CloudFormation шаблона:
https://github.com/Rungutan/sentry-performance-monitoring
Для различных вариантов установки приведены рассчёты по стоимости:
Element Cost per month in USD
RDS 65
Redis 55
Kafka 110
ClickHouse 140
VPC 30
1ELB+2ALB 90
ECS 200
#monitoring #CloudFormation5 802
Managed Workflows for Apache Airflow
Пока продолжаются прения между командой Elastic (авторами ELK стека) и Amazon на тему того кто из них более open-source-friendly, расскажу про другую недавнюю интеграцию в стек AWS - управляемый вариант Airflow.
Apache Airflow - это платформа для планирования, управления и мониторинга заданий, написанная на python. Это собственно тоже промышленный стандарт в мире ETL, для организации взаимодействия между процессами (формализованными в виде DAG - однонаправленных ациклических графов). Благодаря набору плагинов в рамках Airflow можно запускать достаточно разнородные пайплайны - от простых bash-команд, до модулей со сложной логикой - поверх тоже довольно разнородной инфраструктуры. У этого продукта не так много конкурентов (вот например Luigi разработки Spotify) и поэтому интеграция в AWS - это был только вопрос времени. Тем более что в GCP, например, Cloud Composer изначально реализован как управляемый Airflow.
Есть конечно разработчики, которые и этот новый сервис (официальное название AWS MWAA) восприняли настороженно, в духе "опять Amazon зарабатывает на open-source ". Ну во-первых, я уже упомянул GCP, а во-вторых, кажется, что получился на самом деле очень удобный сервис, который ребята из AWS адаптировали к остальному стеку. В сборке настроено много плагинов к остальным элементам AWS (тут и Athena, и DynamoDB, и Redshift, EKS, ECS, Firehose, SQS и прочие), код DAG (и зависимости) хранится в s3, настроен auto-scale воркеров для запуска заданий с тремя вариантами окружения: pw1.small (1 vCPU), pw1.medium (2 vCPU) или pw1.large (4 vCPU). Мониторинг настраивается в Cloudwatch.
Другими словами, получилась сборка которая помогает построить ETL процессы на полностью управляемых компонентах и сервисах. Конечно, если выбрать такое архитектурное решение для проекта - перейти потом в другую инфраструктуру будет сложно. Но с другой стороны, если есть периодический процесс, в котором источником служат, например, файлы в s3 (пусть от стороннего провайдера), задействована их трансформация с помощью python и sql и выгрузка в data-lake или наоборот в готовую витрину для визуализации, то сервис конкурентоспособен. Стоимость складывается из использованных часов работы окружения (scheduler/worker/web server), количества и мощности воркеров. То есть выбор - поднимать Airflow самостоятельно или использовать в виде сервиса - упирается в баланс между набором своих вычислительных мощностей и арендуемых.
Сервис пока доступен не во всех регионах и дата-центрах, но в наиболее крупных (N. Virginia, Frankfurt, Ireland, Sydney, Ohio) попробовать можно.
5 802
тут Джулия Эванс написала крутой гайд по запуску Firecracker: https://jvns.ca/blog/2021/01/23/firecracker--start-a-vm-in-less-than-a-second/
5 802
Утилита для удаления CloudFormation стэков по TTL (expiration time) или пул реквесту:
https://github.com/lendi-au/StackJanitor
#CloudFormation
5 802
Создать CloudFormation ресурс со случайным паролем, чтобы, например, после его передать для базы данных:
MySecretA:
Type: 'AWS::SecretsManager::Secret'
Properties:
Name: MySecretForAppA
Description: "This secret has a dynamically generated secret password."
GenerateSecretString:
SecretStringTemplate: '{"username": "test-user"}'
GenerateStringKey: "password"
PasswordLength: 30
ExcludeCharacters: '"@/\'
https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-secretsmanager-secret.html
#CloudFormation5 802
Что там случилось с Elasticsearch?
Супер кратко:
Elastic поменял лицензию для продуктов, и они перестали быть open source. Комьюнити это не понравилось.
Теперь вышел Amazon, у которого война с Elastic, и сказал - мы форкнем, и будем дальше развивать Elasticsearch + Kibana с ALv2 лицензией.
Итого, факты:
- Elastic announced moving Apache 2.0-licensed source code to be under Server Side Public License
- Elasticsearch 7.11 будет уже под SSPL, т.е. не open-source
- Elasticsearch 7.10.x, который еще ALv2 - будет получать секьюрити апдейты до May 11th, 2022
- AWS will step up to create and maintain a ALv2-licensed fork of open source Elasticsearch and Kibana
Кто бы мог подумать 🤔
https://aws.amazon.com/blogs/opensource/stepping-up-for-a-truly-open-source-elasticsearch
5 802
Персонажи в команде
Валера
Валера следит за трендами, профи в своей и не только области, знает про все модные фреймворки, регулярно посещает конференции и на ретроспективах периодически советует (грозит) переписать часть (всё) на Rust.
Валеру любят, над ним шутят, однако он нет. Через пару лет, задолбав тимлидов и не получив одобрения своих устремлений, Валера уходит в FAANG, где занимается тем, чем так давно хотел.
Саша
Саша не согласен, стопроцентный инженер, но не поддерживает, сомневается и против. Зачем переходить на куберы, если ещё докер не сносили? Зачем ставить
t3a.medium, да, дешевле, да, совсем нет нагрузки, но ведь c5.large надёжней, а там буковки подозрительные. Какой ещё пайплайн, если нажал, загрузил, написал письмо, объяснил, в крайнем случае можно написать в скайп, и работает. Всегда так было, зачем менять? А где доказательства, что такая архитектура лучше, дешевле, надёжней и сработает? И вообще, он не Саша, а Олександр, через О, потому что из Винницы.
Сашу (Олександра) никто не любит и он отвечает взаимностью. Через пару лет от него избавляются и радостная команда спокойно пилит свою плохую, дорогую, ненадёжную и оказавшуюся через пару лет совсем невостребованной, фигню.
Виктор
Виктор задаёт вопросы. Читает, задаётся вопросом и спрашивает. Почему так сложно – не понятно. Почему написано, что правильно через CodePipeline, а у них там один баш? Почему в буфере TLB нельзя сбросить запись как в кэше? Можно ли использовать yaml-ссылки в CloudFormation шаблоне, ведь это ж yaml? Как подключить t1.micro EC2-Classiс к MSK? И вообще, на собеседовании спрашивали Питон, а тут Ruby и Java – почему?
Виктора любят, ведь посылать всем приятно. Через пару лет он задаёт неправильный вопрос в неправильном месте и увольняется.
p.s. Все совпадения имён случайны.
p.s. p.s. Это было начало текста "Какие люди ценны в команде".
#персонажи5 802
Читы для работы с CloudFormation в VS Code:
https://dev.to/aws-builders/level-up-cloudformation-with-vs-code-32m9
#CloudFormation
5 802
PHP в Docker на Лямбде:
https://aws.amazon.com/blogs/compute/building-php-lambda-functions-with-docker-container-images/
#Lambda
5 802
Как с помощью AWS CDK поднять EKS-D кластер в полторы строчки:
https://github.com/pahud/cdk-eksdistro
#CDK
5 802
Federated EKS cluster:
https://aws.amazon.com/solutions/implementations/federated-amazon-eks-clusters-on-aws/
Данное решение позволяет развернуть федеративный EKS кластер в разных регионах для VPC, объединённых через VPC Peering.
#EKS
5 802
Проект для отладки Лямбд и API Gateway локально:
https://github.com/dherault/serverless-offline
#Lamda #API_Gateway
5 802
Интересный инструмент для конвертации on-demand виртуалок в spot и обратно:
https://github.com/jcjorel/ec2-spot-converter
#spot
5 802
Утилитка с удобным интерфейсом для работы с Athena:
https://github.com/OElesin/querypal
#Athena
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
