Уважаемые коллеги. Кто не знаком, позвольте представить заслуженного мастера спорта международного класса по IAM и другим видам амазоноборства, спикера крупнейших конференций и при этом надёжного информатора о том, что происходит у них там в Европах, Карена Товмасяна.
У Карена есть отличный канал @manandthemachine, где можно прочитать не только про AWS (этого и здесь хватает), но и про тяжёлую судьбушеньку нашего простого человека, попавшего в незаморскую страну Нидерландию. Плюсы, минусы, подводные камни - всё, как вы любите, короче. Не то, чтобы сам лично согласен с излагаемым там, однако это мнение с большой буквы Мэ и кому-то может быть от интересно до помочь.
https://xn--r1a.website/manandthemachine
У Карена есть отличный канал @manandthemachine, где можно прочитать не только про AWS (этого и здесь хватает), но и про тяжёлую судьбушеньку нашего простого человека, попавшего в незаморскую страну Нидерландию. Плюсы, минусы, подводные камни - всё, как вы любите, короче. Не то, чтобы сам лично согласен с излагаемым там, однако это мнение с большой буквы Мэ и кому-то может быть от интересно до помочь.
https://xn--r1a.website/manandthemachine
CI/CD на AWS
С учётом пояснений и пожеланий сделанных в чате канала, нужно повторить голосовалку - теперь с возможностью выбрать несколько вариантов и в более очевидной постановке вопроса.
Какие инструменты вы используете для CI/CD на AWS?
(можно выбрать несколько вариантов)
Jenkins - 65
👍👍👍👍👍👍👍👍 46%
GitLab CI - 47
👍👍👍👍👍 33%
AWS CodePipeline + Code* services - 12
👍 8%
Azure DevOps (Microsoft VSTS/TFS) - 3
👍 2%
Bitbucket Pipelines - 15
👍 10%
TeamCity - 15
👍 10%
Bamboo - 5
👍 3%
CircleCI - 5
👍 3%
Drone.io - 2
👍 1%
BuildMaster - 1
👍 0%
GoCD - 3
👍 2%
Travis CI - 2
👍 1%
GitHub Actions - 4
👍 2%
Codeship - 0
▫ 0%
Buddy - 0
▫ 0%
Wercker - 0
▫ 0%
Buildbot - 0
▫ 0%
Другой - 2
👍 1%
👥 141 people voted so far.
С учётом пояснений и пожеланий сделанных в чате канала, нужно повторить голосовалку - теперь с возможностью выбрать несколько вариантов и в более очевидной постановке вопроса.
Какие инструменты вы используете для CI/CD на AWS?
(можно выбрать несколько вариантов)
Jenkins - 65
👍👍👍👍👍👍👍👍 46%
GitLab CI - 47
👍👍👍👍👍 33%
AWS CodePipeline + Code* services - 12
👍 8%
Azure DevOps (Microsoft VSTS/TFS) - 3
👍 2%
Bitbucket Pipelines - 15
👍 10%
TeamCity - 15
👍 10%
Bamboo - 5
👍 3%
CircleCI - 5
👍 3%
Drone.io - 2
👍 1%
BuildMaster - 1
👍 0%
GoCD - 3
👍 2%
Travis CI - 2
👍 1%
GitHub Actions - 4
👍 2%
Codeship - 0
▫ 0%
Buddy - 0
▫ 0%
Wercker - 0
▫ 0%
Buildbot - 0
▫ 0%
Другой - 2
👍 1%
👥 141 people voted so far.
AWS IAM поломался:
Update: AWS IAM починился.
Between 7:30 AM and 9:45 AM PST, we experienced increased error rates due to higher latency for IAM requests. The system has recovered and is operating normally.
Http request timed out enforced after 999msImpact is confirmed -- we are actively investigating.
Update: AWS IAM починился.
Between 7:30 AM and 9:45 AM PST, we experienced increased error rates due to higher latency for IAM requests. The system has recovered and is operating normally.
Действительное очень годная возможность не зря потратить какие-то выходные - удивительно качественный и при этом бесплатный контент.
https://www.youtube.com/watch?v=Ia-UEYYR44s
Ссылку на минус 10 часов личной жизни по доброте душевной презентовали в AWS User group Kazakhstan.
https://www.youtube.com/watch?v=Ia-UEYYR44s
Ссылку на минус 10 часов личной жизни по доброте душевной презентовали в AWS User group Kazakhstan.
YouTube
AWS Certified Solutions Architect - Associate 2020 (PASS THE EXAM!)
AWS Certified Solutions Architect is one of the most popular cloud computing certifications. In this full course taught by an expert trainer, you will learn the major parts of Amazon Web Services, and prepare for the associate-level AWS Certified Solutions…
AWS и доброта в (бесконечном) цикле
Такие вещи случаются:
https://twitter.com/__steele/status/1218453873834086401
Как-то писал про это в "AWS и доброта", по ссылке из твиттера можно прочитать десятки таких реальных случаях на тысячи долларов в том числе.
===
Несколько выводов оттуда.
• Настоятельно рекомендуется включить и настроить биллинг-алерты:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html
• Не забывайте удалять ненужные/тестовые ресурсы. (Да, Капитан!)
• Не бойтесь писать в техподдержку, даже, если вы были не правы и эта полностью ваша вина. Например, сами выложили ключ в паблик и враги намайнили ресурсов, неправильно поняли стоимостную модель или просто неочевидно накликали в конслоли (и даже много раз подряд). Всё распишите и объясните. Шансы, что спишут полностью или хотя бы часть (50-75%) очень велики.
===
Популярные скрытые угрозы незаметных расходов.
• NAT GW из примера - вы думаете, что у вас чистый аккаунт и нет виртуалок и прочих сервисов, а забываете, что он стоит денег (33$ в месяц и больше). И если вы "поигрались" с Control Tower либо Langing Zones, где насоздавали кучу "пустых" (как вы думали) аккаунтов - нужно помнить про засаду с NAT GW.
• AWS Rekognition - запросто можно распознать в цикле миллионы чего-нибудь ненужного или одного и того же.
• Route 53 Resolver endpoints - 90$ в месяц за каждый ENI.
• ACM Private CA - 400$ в месяц.
А также эти и другие в составе различных тестовых CloudFormation шаблонов, которые вы развернули и забыли удалить.
Будьте внимательны, тренируйте память, бегайте по утрам и настраивайте алерты!
#cost_optimization
Такие вещи случаются:
https://twitter.com/__steele/status/1218453873834086401
Как-то писал про это в "AWS и доброта", по ссылке из твиттера можно прочитать десятки таких реальных случаях на тысячи долларов в том числе.
===
Несколько выводов оттуда.
• Настоятельно рекомендуется включить и настроить биллинг-алерты:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html
• Не забывайте удалять ненужные/тестовые ресурсы. (Да, Капитан!)
• Не бойтесь писать в техподдержку, даже, если вы были не правы и эта полностью ваша вина. Например, сами выложили ключ в паблик и враги намайнили ресурсов, неправильно поняли стоимостную модель или просто неочевидно накликали в конслоли (и даже много раз подряд). Всё распишите и объясните. Шансы, что спишут полностью или хотя бы часть (50-75%) очень велики.
===
Популярные скрытые угрозы незаметных расходов.
• NAT GW из примера - вы думаете, что у вас чистый аккаунт и нет виртуалок и прочих сервисов, а забываете, что он стоит денег (33$ в месяц и больше). И если вы "поигрались" с Control Tower либо Langing Zones, где насоздавали кучу "пустых" (как вы думали) аккаунтов - нужно помнить про засаду с NAT GW.
• AWS Rekognition - запросто можно распознать в цикле миллионы чего-нибудь ненужного или одного и того же.
• Route 53 Resolver endpoints - 90$ в месяц за каждый ENI.
• ACM Private CA - 400$ в месяц.
А также эти и другие в составе различных тестовых CloudFormation шаблонов, которые вы развернули и забыли удалить.
Будьте внимательны, тренируйте память, бегайте по утрам и настраивайте алерты!
#cost_optimization
Twitter
Aidan W Steele
Oh my god. 13 years after I sign up for AWS it finally happened to me: my first terrifying bill. $1300. 😱 I’d been playing with Control Tower and set up a handful of accounts. Forgot about it for a month. Turns out it deploys a LOT of NAT gateways.
Больше для новичков в AWS, но из той же годной серии - качественные 4 часа курса для подготовки к Cloud Practitioner:
https://www.youtube.com/watch?v=3hLmDS179YE
Добавлю ещё, что если вы - руководитель компании, работающей с AWS, то очень стоит подумать о том, дабы все ваши сотрудники прошли такой курс. Самое важное, быстро учится и просто сдаётся, но главное - позволяет закрыть кучу вопросов, которые возникают в результате элементарного незнания элементарно доступного.
Повышайте эффективность своих подчинённых, уменьшая коэффициент велосипедостроительства.
#AWS_Certification
https://www.youtube.com/watch?v=3hLmDS179YE
Добавлю ещё, что если вы - руководитель компании, работающей с AWS, то очень стоит подумать о том, дабы все ваши сотрудники прошли такой курс. Самое важное, быстро учится и просто сдаётся, но главное - позволяет закрыть кучу вопросов, которые возникают в результате элементарного незнания элементарно доступного.
Повышайте эффективность своих подчинённых, уменьшая коэффициент велосипедостроительства.
#AWS_Certification
YouTube
AWS Certified Cloud Practitioner Training 2020 - Full Course
This course will help you become an AWS Certified Cloud Practitioner. You will get a complete understanding of the AWS Cloud platform and be prepared to take the certification exam.
This knowledge and certification will open up job opportunities. You will…
This knowledge and certification will open up job opportunities. You will…
Отдельные граждане тут просили не путать сервис Control Tower и Solution Landing Zone. Посмотрим, что они теперь скажут на это:
https://aws.amazon.com/solutions/customizations-for-aws-control-tower/
Краткое содержание предыдущих серий. Для помощи в реализации Multi Account Strategy Амазон выпустил в 2018-ом Solution (не путать с сервисом) AWS Landing Zone, а 2019-ом полноценный сервис (а не какое-то там решение) AWS Control Tower.
И вот теперь, чтобы жизнь мёдом не казалась, и чтобы было больше ошибок на экзаменах по сертификации, они выпустили Solution для улучшения сервиса Control Tower.
Поставить такое решение можно лишь тем, кто развернул свою организацию с помощью сервиса Control Tower. Остальные (в том числе я) ждём, пока Control Tower научится работать с существующими организациями. И выход данного решения показывает, что прогнозы на получение такого функционала летом весьма реальны.
#Control_Tower
https://aws.amazon.com/solutions/customizations-for-aws-control-tower/
Краткое содержание предыдущих серий. Для помощи в реализации Multi Account Strategy Амазон выпустил в 2018-ом Solution (не путать с сервисом) AWS Landing Zone, а 2019-ом полноценный сервис (а не какое-то там решение) AWS Control Tower.
И вот теперь, чтобы жизнь мёдом не казалась, и чтобы было больше ошибок на экзаменах по сертификации, они выпустили Solution для улучшения сервиса Control Tower.
Поставить такое решение можно лишь тем, кто развернул свою организацию с помощью сервиса Control Tower. Остальные (в том числе я) ждём, пока Control Tower научится работать с существующими организациями. И выход данного решения показывает, что прогнозы на получение такого функционала летом весьма реальны.
#Control_Tower
Amazon Web Services, Inc.
Customizations for AWS Control Tower | AWS Solutions
Продолжая серию видео, чтобы разбить многочасовые оперы по курсам, есть отличный набор коротких (5-10 минут) видео-роликов по архитектуре на амазоне:
https://aws.amazon.com/this-is-my-architecture/
Роликов много (сотни), можно поискать по нужному направлению, а можно просто смотреть подряд. Отличный и наглядный способ посмотреть, как кто что где и зачем у себя пилит.
#design #video
https://aws.amazon.com/this-is-my-architecture/
Роликов много (сотни), можно поискать по нужному направлению, а можно просто смотреть подряд. Отличный и наглядный способ посмотреть, как кто что где и зачем у себя пилит.
#design #video
Amazon
This Is My Architecture | Video Series | AWS
This is My Architecture (TMA) highlights innovative architectural solutions on the AWS Cloud by customers and partners. These 2-5 minute videos are designed for a technical audience and showcase the most interesting and technically creative elements of each…
Отличный источник примеров работы с #CloudFormation #templates (а также #Terraform и #aws_cli) плюс прямые ссылки на документацию, официальные блоги, всяческие безопасности и различные #best_practices:
https://asecure.cloud/
Однозначно в закладки.
#security #info
https://asecure.cloud/
Однозначно в закладки.
#security #info
Появился экспорт #RDS снэпшотов на S3:
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ExportSnapshot.html
Аналогично для #Aurora:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_ExportSnapshot.html
Можно экспортировать не весь снэпшот, а лишь часть, сохраняется в parquet-формате.
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ExportSnapshot.html
Аналогично для #Aurora:
https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_ExportSnapshot.html
Можно экспортировать не весь снэпшот, а лишь часть, сохраняется в parquet-формате.
Туториал использования SRR (Same-Region Replication) для сбора логов из разных аккаунтов в один бакет:
https://aws.amazon.com/blogs/storage/aggregating-logs-with-s3-same-region-replication/
Подход применим не только для логов, но и, к примеру, для автоматической синхронизации свежедобавленной информации для
#SRR
https://aws.amazon.com/blogs/storage/aggregating-logs-with-s3-same-region-replication/
Подход применим не только для логов, но и, к примеру, для автоматической синхронизации свежедобавленной информации для
dev-бакета в какой-то test-бакет, расположенный в другом аккаунте (того же региона). Кроме того реплицировать можно не весь бакет, а лишь нужную папку.#SRR
AWS Organization Formation = CloudFormation для Organizations
https://github.com/OlafConijn/AwsOrganizationFormation
Утилита реализует IaC (Infrastructure as Code) подход в рамках AWS Organizations, когда описывать аккаунты организации и их характеристики можно (нужно) через привычные по шаблонам CloudFormation
Хороший подход для описания новых организаций, а для имеющихся - хороший повод подсмотреть и реализовать сходные идеи у себя.
#Organizations
https://github.com/OlafConijn/AwsOrganizationFormation
Утилита реализует IaC (Infrastructure as Code) подход в рамках AWS Organizations, когда описывать аккаунты организации и их характеристики можно (нужно) через привычные по шаблонам CloudFormation
yaml-файлы (пример).Хороший подход для описания новых организаций, а для имеющихся - хороший повод подсмотреть и реализовать сходные идеи у себя.
#Organizations
Чтобы расшарить ECR репозиторий (только на чтение - лишь скачать) для всей организации (нужно заменить на свой
Данные правила (download only) применяются для других аккаунтов, а для аккаунта, где расположен ECR - регулируется с помощью IAM, которыми можно поставить нужные права (в том числе на upload).
#ECR
aws:PrincipalOrgID):{ "Version": "2008-10-17", "Statement": [ { "Sid": "Organization ReadOnly access", "Effect": "Allow", "Principal": "*", "Action": [ "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer" ], "Condition": { "StringEquals": { "aws:PrincipalOrgID": "o-gs1bsr375" } } } ]}Данные правила (download only) применяются для других аккаунтов, а для аккаунта, где расположен ECR - регулируется с помощью IAM, которыми можно поставить нужные права (в том числе на upload).
#ECR
Уважаемые москвичи, напоминаю про AWS Meetup 29-го января в 19:00 (случайно совпавший с юбилеем @aws_ru).
Telegram
Alexey Stekov in AWS_ru
Как и обещал, митап от @aws_ru! И не просто митап - у нас День Рождения, нам 3 годика!
29 января в 19:00 в офисе Райффайзен банка пройдет митап, посвященный нашему 3-летию! (много_радостных_эмоджи, салюты, и тд.)
Итак, список докладов на нашем совместном…
29 января в 19:00 в офисе Райффайзен банка пройдет митап, посвященный нашему 3-летию! (много_радостных_эмоджи, салюты, и тд.)
Итак, список докладов на нашем совместном…
Amazon Linux 1 отправлен на пенсию:
https://aws.amazon.com/blogs/aws/update-on-amazon-linux-ami-end-of-life/
10 лет продержался, хватит, пора. Amazon Linux 2 уже два года как правильная замена.
https://aws.amazon.com/blogs/aws/update-on-amazon-linux-ami-end-of-life/
10 лет продержался, хватит, пора. Amazon Linux 2 уже два года как правильная замена.
Amazon
Update on Amazon Linux AMI end-of-life | Amazon Web Services
Update Jan 2, 2024 – The Amazon Linux AMI (also called Amazon Linux 1) reached its end of life on December 31, 2023. Amazon Linux AMI will no longer receive any security updates or bug fixes. We encourage customers to upgrade their applications to use Amazon…
AWS Notes
Уважаемые москвичи, напоминаю про AWS Meetup 29-го января в 19:00 (случайно совпавший с юбилеем @aws_ru).
YouTube
AWS_RU MeetUp - Райффайзенбанк, AWS, независимые эксперты Владимир Попов и Петр Сальников
Приглашаем на митап AWS_Ru: будем слушать интересные доклады и отмечать три года сообщества, ура!
О чём будем говорить:
«AWS как заначка на черный день, или как мы расширяем внутренние ресурсы при пиковых нагрузках»
Андрей Соловьев, Райффайзенбанк
«Как…
О чём будем говорить:
«AWS как заначка на черный день, или как мы расширяем внутренние ресурсы при пиковых нагрузках»
Андрей Соловьев, Райффайзенбанк
«Как…
SCP для запрета запуска мощных виртуалок
Удобно применять для каких-то sandbox или каких-то личных аккаунтов, чтобы ограничить разработчиков возможностью запускать лишь слабые виртуалки.
#Organizations #SCP #policy
{ "Effect": "Deny", "Action": "ec2:RunInstances", "Resource": "arn:aws:ec2:*:*:instance/*", "Condition": { "StringNotLike": { "ec2:InstanceType": [ "*.nano", "*.micro", "*.small", "*.medium" ] } }}Удобно применять для каких-то sandbox или каких-то личных аккаунтов, чтобы ограничить разработчиков возможностью запускать лишь слабые виртуалки.
#Organizations #SCP #policy
Загадка по IAM
Имеем policy из примера выше про расшаривание ECR репозитория для других аккаунтов.
Однако вопрос будет не про мультиаккаунты, а на счёт того аккаунта, где находится данный ECR репозиторий.
Есть инстанс (в этом же аккаунте, где ECR), к которому нужно прикрепить роль с минимальными правами, чтобы спулить образ из расшаренного приведенным способом ECR-репозитория.
Имеются следующие варианты:
1.
2. то же, что 1 плюс
3. то же, что 2 плюс еще на
Какой роли минимально достаточно?
#загадка #IAM
Имеем policy из примера выше про расшаривание ECR репозитория для других аккаунтов.
Однако вопрос будет не про мультиаккаунты, а на счёт того аккаунта, где находится данный ECR репозиторий.
Есть инстанс (в этом же аккаунте, где ECR), к которому нужно прикрепить роль с минимальными правами, чтобы спулить образ из расшаренного приведенным способом ECR-репозитория.
Имеются следующие варианты:
1.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "*", "Action": [ "ecr:GetAuthorizationToken" ] } ]}2. то же, что 1 плюс
GetDownloadUrlForLayer:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "*", "Action": [ "ecr:GetAuthorizationToken", "ecr:GetDownloadUrlForLayer" ] } ]}3. то же, что 2 плюс еще на
Batch:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "*", "Action": [ "ecr:GetAuthorizationToken", "ecr:GetDownloadUrlForLayer", "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage" ] } ]}Какой роли минимально достаточно?
#загадка #IAM
Telegram
aws_notes
Чтобы расшарить ECR репозиторий (только на чтение - лишь скачать) для всей организации (нужно заменить на свой aws:PrincipalOrgID):
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "Organization ReadOnly access",
"Effect": "Allow",
"Principal":…
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "Organization ReadOnly access",
"Effect": "Allow",
"Principal":…
Какая минимальная роль нужна, чтобы спулить образ из расшаренного ECR репозитория в том же аккаунте?
Anonymous Quiz
26%
1. GetAuthorizationToken
28%
2. ... + GetDownloadUrlForLayer
47%
3. ... + BatchCheckLayerAvailability + BatchGetImage
Загадка по IAM с одной стороны примитивно простая, а с другой ненормально сложная. Из разряда тех, которыми можно ставить в ступор даже знающих AWS профессионалов. Хороший пример, как и откуда потом берутся утечки информации.
Правильный ответ 1 - по сути, никаких прав IAM роли не нужно (чисто лишь залогиниться на докере
Проблема тут на уровне IAM, точней отношения к нему, как к главному способу выделения доступа. Ведь так учат в документации — IAM предназначен для управления доступом, а что не разрешно, то запрещено.
И правильно учат. Только, как говорится, есть нюансы. И нюанс в том, что управление доступом это не только IAM, но Resource-based политики (JSON, прикреплённый в данном случае к ECR-репозиторию)
В случае мульти-аккаунт схемы для внешних аккаунтов происходит проверка IAM прав юзера (другого аккаунта) и Resource-based policy по очереди. Нет прав IAM - до свидания. Не важно, что там написано в Resource-based policy ресурса.
В случае же одного и того же аккаунта, IAM и Resource-based policy разрешаются одновременно. Т.е. складываем и смотрим. IAM не разрешает (но и не запрещает), а Resource-based policy - разрешает, итого - разрешено!
Кому интересны подробности, то на примере S3 Bucket policy и с разбором исторического подтекста - можно почитать здесь.
#отгадка #IAM
Правильный ответ 1 - по сути, никаких прав IAM роли не нужно (чисто лишь залогиниться на докере
GetAuthorizationToken). Кто не верит, может попробовать и убедиться.Проблема тут на уровне IAM, точней отношения к нему, как к главному способу выделения доступа. Ведь так учат в документации — IAM предназначен для управления доступом, а что не разрешно, то запрещено.
И правильно учат. Только, как говорится, есть нюансы. И нюанс в том, что управление доступом это не только IAM, но Resource-based политики (JSON, прикреплённый в данном случае к ECR-репозиторию)
В случае мульти-аккаунт схемы для внешних аккаунтов происходит проверка IAM прав юзера (другого аккаунта) и Resource-based policy по очереди. Нет прав IAM - до свидания. Не важно, что там написано в Resource-based policy ресурса.
В случае же одного и того же аккаунта, IAM и Resource-based policy разрешаются одновременно. Т.е. складываем и смотрим. IAM не разрешает (но и не запрещает), а Resource-based policy - разрешает, итого - разрешено!
Кому интересны подробности, то на примере S3 Bucket policy и с разбором исторического подтекста - можно почитать здесь.
#отгадка #IAM