Наконец-то вышло обновление AWS Extend Switch Roles для переключения между аккаунтами с исправлением для работы в преобразившейся недавно AWS консоли.
Обратите внимание, что теперь список аккаунтов для переключения располагается не как раньше в менюшке самой AWS консоли, а при нажатии на сам ключик расширения (см. картинку).
Обратите внимание, что теперь список аккаунтов для переключения располагается не как раньше в менюшке самой AWS консоли, а при нажатии на сам ключик расширения (см. картинку).
Forwarded from Yet Another AWS channel
S5Cmd - S3 на стеройдах
Сегодня расскажу про проект S5Cmd - отличный open source инструмент (изначально написанный ребятами из Peak Games) для ускорения и кастомизации процессов между S3 и локальной файловой системой. Три ключевых момента:
- скорость - S5Cmd написан на Go, максимально использует возможности параллельной обработки и transfer acceleration; собственно perfomance тесты есть на странице проекта (и ниже напишу свои результаты)
- привычная работа по маске (wildcard support); без всех этих exclude и include, которыми оперирует aws-cli
- работа в пакетном режиме на основе текстового командного файла либо pipe конвеера, что открывает произвольные варианты интеграции с unix shell
Чтобы не быть голословным, приведу результаты локального теста. Исходные установки: есть бакет, в котором хранятся разбитые по датам данные нескольких проектов. То есть s3://bucket-name/YYYY/MM/DD/prj1..., prj2..., и т.д. Каждый проект состоит из нескольких файлов. Копирую себе данные за один день по одному проекту:
1. В aws-cli это выглядит так:
2. В s5cmd это выглядит лаконичнее:
Дополнительно попробовал batch-режим, собрав предварительно с помощью ls и awk файл, где каждая строка - это копирование одного объекта. Здесь получилось 54 секунды за счёт какой-то задержки на старте (видимо файл парсится во внутреннюю структуру для исключения конфликтов, например сочетания команд копирования и удаления). Однако это всё равно довольно хорошо, если использовать командный файл по назначению - как сценарий разнородных действий.
Рекомендую присмотреться, если у вас есть соответствующие задачи (например, работа с данными s3 на серверной стороне за рамками AWS-инфраструктуры). Авторы из Amazon инструмент также хвалят.
Сегодня расскажу про проект S5Cmd - отличный open source инструмент (изначально написанный ребятами из Peak Games) для ускорения и кастомизации процессов между S3 и локальной файловой системой. Три ключевых момента:
- скорость - S5Cmd написан на Go, максимально использует возможности параллельной обработки и transfer acceleration; собственно perfomance тесты есть на странице проекта (и ниже напишу свои результаты)
- привычная работа по маске (wildcard support); без всех этих exclude и include, которыми оперирует aws-cli
- работа в пакетном режиме на основе текстового командного файла либо pipe конвеера, что открывает произвольные варианты интеграции с unix shell
Чтобы не быть голословным, приведу результаты локального теста. Исходные установки: есть бакет, в котором хранятся разбитые по датам данные нескольких проектов. То есть s3://bucket-name/YYYY/MM/DD/prj1..., prj2..., и т.д. Каждый проект состоит из нескольких файлов. Копирую себе данные за один день по одному проекту:
1. В aws-cli это выглядит так:
s3 cp s3://bucket-name/2020/09/27/ ./ --exclude "*" --include "prj1*" --recursive- минута и 43 секунды. Замечу, что несмотря на плоскую структуру внутри дня, без recursive не обойтись
2. В s5cmd это выглядит лаконичнее:
cp 's3://bucket-name/2020/09/27/prj1*' ./- 37 секунд - в три раза быстрее
Дополнительно попробовал batch-режим, собрав предварительно с помощью ls и awk файл, где каждая строка - это копирование одного объекта. Здесь получилось 54 секунды за счёт какой-то задержки на старте (видимо файл парсится во внутреннюю структуру для исключения конфликтов, например сочетания команд копирования и удаления). Однако это всё равно довольно хорошо, если использовать командный файл по назначению - как сценарий разнородных действий.
Рекомендую присмотреться, если у вас есть соответствующие задачи (например, работа с данными s3 на серверной стороне за рамками AWS-инфраструктуры). Авторы из Amazon инструмент также хвалят.
GitHub
GitHub - peak/s5cmd: Parallel S3 and local filesystem execution tool.
Parallel S3 and local filesystem execution tool. Contribute to peak/s5cmd development by creating an account on GitHub.
Forwarded from Alexander Patrushev
Продолжаем тему PHP + Serverless, новый пост опубликован: https://aws.amazon.com/ru/blogs/rus/introducing-the-serverless-lamp-stack-part-2-relational-databases/
Amazon
Представляем новый бессерверный LAMP-стек, часть 2: Реляционные базы данных | Amazon Web Services
Из этой статьи вы узнаете, как использовать реляционную базу данных Amazon Aurora, совместимую с MySQL, в ваших бессерверных приложениях. Я покажу, как с помощью Amazon RDS Proxy объединить подключения к базе данных в пулы и использовать их повторно.
Продолжение отличной серии по стратегии тэгирования AWS:
https://www.cloudforecast.io/blog/maintain-aws-tags-when-you-fall-behind-part-3/
#tags #best_practices
https://www.cloudforecast.io/blog/maintain-aws-tags-when-you-fall-behind-part-3/
#tags #best_practices
Forwarded from CloudSec Wine
🔸Security Architecture Review Of A Cloud Native Environment
Walkthrough of a cloud security assessment performed on an organisation which had recently moved their infrastructure from an on-prem to a cloud native solution (AWS).
https://notsosecure.com/security-architecture-review-of-a-cloud-native-environment/
#aws
Walkthrough of a cloud security assessment performed on an organisation which had recently moved their infrastructure from an on-prem to a cloud native solution (AWS).
https://notsosecure.com/security-architecture-review-of-a-cloud-native-environment/
#aws
SCP и мастер (root) AWS-аккаунт
Стоит помнить, что "всемогущие" политики SCP, которые так удобно можно применять ко всей организации — не применяются к юзерам и ролям мастер аккаунта (root-аккаунта):
https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html
Потому, если, например, думаете, включать или не включать CloudTrail в регионах, что планируете запретить через SCP — однозначно стоит включать. Уже лишь как раз по причине того, что в мастере SCP не сработает, а две защиты лучше, чем одна (в подаккаунтах).
#SCP #Organizations
Стоит помнить, что "всемогущие" политики SCP, которые так удобно можно применять ко всей организации — не применяются к юзерам и ролям мастер аккаунта (root-аккаунта):
https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html
Потому, если, например, думаете, включать или не включать CloudTrail в регионах, что планируете запретить через SCP — однозначно стоит включать. Уже лишь как раз по причине того, что в мастере SCP не сработает, а две защиты лучше, чем одна (в подаккаунтах).
#SCP #Organizations
Теперь можно задать диапазон IP-адресов для EKS кластера:
https://docs.aws.amazon.com/eks/latest/userguide/create-cluster.html
#EKS
https://docs.aws.amazon.com/eks/latest/userguide/create-cluster.html
#EKS
Напомню, что сегодня CDK day. Начало в 17:00 по Киеву/Минску/Москве.
Кто не в курсе, CDK — возможность описывать инфраструктуру для AWS, Kubernetes или Terraform с помощью привычного языка программирования. Стоит посетить, чтобы просто ознакомиться с возможностями.
Кто не в курсе, CDK — возможность описывать инфраструктуру для AWS, Kubernetes или Terraform с помощью привычного языка программирования. Стоит посетить, чтобы просто ознакомиться с возможностями.
Telegram
aws_notes
30 сентября пройдёт CDK day:
https://www.cdkday.com/
Всё про AWS CDK, CDK8s (для куберов) и CDKtf (под Терраформ). Крутые спикеры, самые свежие и будущие фичи. Крайне рекомендуется даже просто ознакомиться.
https://www.cdkday.com/
Всё про AWS CDK, CDK8s (для куберов) и CDKtf (под Терраформ). Крутые спикеры, самые свежие и будущие фичи. Крайне рекомендуется даже просто ознакомиться.
Helm + ECR
Для стандартизации процессов в Kubernetes окружениях, использующих Helm для деплоя сервисов удобно иметь и чарты в виде докер-образов. Такая возможность на текущий момент в Helm доступна лишь в экспериментальном режиме:
В докер-реестрах других провайдеров такая поддержка уже была раньше, наконец, с сентября 2020-го года она есть и в ECR:
https://docs.aws.amazon.com/AmazonECR/latest/userguide/push-oci-artifact.html
Настроим переменные:
Сохраняем чарт:
Логинимся Хелмом в реестр (aws-cli version 2):
Пушим чарт в ECR:
Спулить чарт из ECR:
Распаковать чарт в текущую папку:
Распаковать чарт в нужную папку (останется изначально имеющаяся вложенность):
#ECR #Helm
Для стандартизации процессов в Kubernetes окружениях, использующих Helm для деплоя сервисов удобно иметь и чарты в виде докер-образов. Такая возможность на текущий момент в Helm доступна лишь в экспериментальном режиме:
export HELM_EXPERIMENTAL_OCI=1В докер-реестрах других провайдеров такая поддержка уже была раньше, наконец, с сентября 2020-го года она есть и в ECR:
https://docs.aws.amazon.com/AmazonECR/latest/userguide/push-oci-artifact.html
Настроим переменные:
ECR_AWS_ID=123456789012ECR_REGION=eu-central-1CHART_DIR=my-chartREPO_NAME=helm-repoIMAGE_TAG=build-1HELM_REGISTRY=${ECR_AWS_ID}.dkr.ecr.${ECR_REGION}.amazonaws.comHELM_ECR_ADDRESS=${HELM_REGISTRY}/${REPO_NAME}:${IMAGE_TAG}Сохраняем чарт:
helm chart save ${CHART_DIR} ${HELM_ECR_ADDRESS}Логинимся Хелмом в реестр (aws-cli version 2):
aws ecr get-login-password --region ${ECR_REGION} | helm registry login --username AWS --password-stdin ${HELM_REGISTRY}Пушим чарт в ECR:
helm chart push ${HELM_ECR_ADDRESS}Спулить чарт из ECR:
helm chart pull ${HELM_ECR_ADDRESS}Распаковать чарт в текущую папку:
helm chart export ${HELM_ECR_ADDRESS}Распаковать чарт в нужную папку (останется изначально имеющаяся вложенность):
helm chart export ${HELM_ECR_ADDRESS} --destination some-dir#ECR #Helm
Amazon
Pushing a Helm chart to an Amazon ECR private repository - Amazon ECR
Push Open Container Initiative (OCI) artifacts to an Amazon ECR private repository
Amazon Timestream:
https://aws.amazon.com/blogs/aws/store-and-access-time-series-data-at-any-scale-with-amazon-timestream-now-generally-available/
Timestream — serverless база данных для IoT и других систем с Time Series данными.
#Timestream
https://aws.amazon.com/blogs/aws/store-and-access-time-series-data-at-any-scale-with-amazon-timestream-now-generally-available/
Timestream — serverless база данных для IoT и других систем с Time Series данными.
#Timestream
Amazon
Store and Access Time Series Data at Any Scale with Amazon Timestream – Now Generally Available | Amazon Web Services
Time series are a very common data format that describes how things change over time. Some of the most common sources are industrial machines and IoT devices, IT infrastructure stacks (such as hardware, software, and networking components), and applications…
Рекомендации по удалённой сдаче AWS сертификации от производителя:
https://aws.amazon.com/blogs/training-and-certification/5-tips-for-a-successful-online-proctored-aws-certification-exam/
Если коротко:
• Во время сдачи есть/перекусить будет нельзя
• Прерывать сдачу (выходить или впускать кого-то в комнату) нельзя
• Общение с экзаменатором лишь на английском или японском
• Стоит протестировать соединение с интернетом
• Бронировать дату-время сдачи заранее
• Не пропустить письмо с подтверждением даты забронированного экзамена
• Присоединиться можно за полчаса до начала экзамена, чтобы решить все вопросы заранее
#AWS_Certification
https://aws.amazon.com/blogs/training-and-certification/5-tips-for-a-successful-online-proctored-aws-certification-exam/
Если коротко:
• Во время сдачи есть/перекусить будет нельзя
• Прерывать сдачу (выходить или впускать кого-то в комнату) нельзя
• Общение с экзаменатором лишь на английском или японском
• Стоит протестировать соединение с интернетом
• Бронировать дату-время сдачи заранее
• Не пропустить письмо с подтверждением даты забронированного экзамена
• Присоединиться можно за полчаса до начала экзамена, чтобы решить все вопросы заранее
#AWS_Certification
Amazon
5 tips for a successful online-proctored AWS Certification exam | Amazon Web Services
Online proctoring is a testing environment that allows you to take an exam from any private space, such as your home or office. In this post, I’ll share five tips that can help you be successful and confident taking an AWS Certification exam via online proctoring.
S3 Object Ownership — решение проблемы длиной в 15 лет:
https://docs.aws.amazon.com/AmazonS3/latest/dev/enable-object-ownership.html
В чём проблема вообще?
При копировании файла из аккаунта А в бакет аккаунта В (в котором есть права для работы с ним из аккаунта А) — владельцем файла (объекта) является/остаётся аккаунт А. То есть админ аккаунта В видит, что у него в бакете есть файл, но ни скачать, ни получить какие-то данные он нём не может.
»»» Вариант с переключением в роль аккаунта В исправляет проблему, однако это уже другой сценарий, решающий проблему с помощью IAM.
https://docs.aws.amazon.com/AmazonS3/latest/dev/enable-object-ownership.html
В чём проблема вообще?
При копировании файла из аккаунта А в бакет аккаунта В (в котором есть права для работы с ним из аккаунта А) — владельцем файла (объекта) является/остаётся аккаунт А. То есть админ аккаунта В видит, что у него в бакете есть файл, но ни скачать, ни получить какие-то данные он нём не может.
»»» Вариант с переключением в роль аккаунта В исправляет проблему, однако это уже другой сценарий, решающий проблему с помощью IAM.
Как было раньше? (с момента создания S3 в 2004-м году)
Для решения этой проблемы использовался ключик bucket-owner-full-control, который добавлял на копируемый объект
Скопируем файл из аккаунта А в бакет аккаунта В:
aws --profile=account-A s3api get-object-acl --bucket my-bucket-account-B --key file.txt
Теперь скопируем файл с ключиком
aws --profile=account-A s3 cp file.txt s3://my-bucket-account-B/ --acl
Но владелец
Чем это плохо? Какая разница — владелец или полные права?
Для аккаунта В без разницы. Но как только вы попытаетесь скачать этот файл из аккаунта С (который также имеет все права на работу с бакетом В) — получите отлуп! И понятно почему — ведь ему владелец файла из аккаунта А не разрешал доступ к объекту, его нет в списке
На этом неочевидном, сложном и крайне неприятном косяке сильно валились и валятся многие мульти-аккаунтные проекты. Тонкие вещи с добавлением прав аккаунту С с помощью флажка --grant-full-control это весьма специфичный и редко возможный вариант.
И как теперь?
Теперь, если включить для бакета S3 Object Ownership = bucket owner preferred, то при копировании файла без флажка
Итого
Потому отныне можно рекомендовать всегда включать S3 Object Ownership = bucket owner preferred — логику работы оно не меняет (точней — исправляет), при этом бесплатно и проблем будет меньше.
#S3
Для решения этой проблемы использовался ключик bucket-owner-full-control, который добавлял на копируемый объект
"Permission": "FULL_CONTROL" для владельца аккаунта бакета.Скопируем файл из аккаунта А в бакет аккаунта В:
aws --profile=account-A s3 cp file.txt s3://my-bucket-account-B/
Смотрим права сохранённого объекта:aws --profile=account-A s3api get-object-acl --bucket my-bucket-account-B --key file.txt
{
"Owner": {
"DisplayName": "account-A",
"ID": "c0123f42b8a1bed065b8a1b2fdbf76c1b6acda99e0778822e3cece21a8c71058"
},
"Grants": [
{
"Grantee": {
"Type": "CanonicalUser",
"DisplayName": "account-A",
"ID": "c0123f42b8a1bed065b8a1b2fdbf76c1b6acda99e0778822e3cece21a8c71058"
},
"Permission": "FULL_CONTROL"
}
]
}
Файл лежит в бакете аккаунта В, но полный владелец (Owner) лишь у аккаунта А. Владелец В ничего не сможет сделать с файлом (но будет платить за него).Теперь скопируем файл с ключиком
bucket-owner-full-control:aws --profile=account-A s3 cp file.txt s3://my-bucket-account-B/ --acl
bucket-owner-full-control
Теперь права изменились:{
"Owner": {
"DisplayName": "account-A",
"ID": "c0123f42b8a1bed065b8a1b2fdbf76c1b6acda99e0778822e3cece21a8c71058"
},
"Grants": [
{
"Grantee": {
"Type": "CanonicalUser",
"DisplayName": "account-A",
"ID": "c0123f42b8a1bed065b8a1b2fdbf76c1b6acda99e0778822e3cece21a8c71058"
},
"Permission": "FULL_CONTROL"
},
{
"Grantee": {
"Type": "CanonicalUser",
"DisplayName": "account-B",
"ID": "8933ecf5e61d2b67a525edee13f7667ab45d2be85b1fdb82a9338a60609ee5f9"
},
"Permission": "FULL_CONTROL"
}
]
}
В список Grantee имеющий полный доступ FULL_CONTROL добавился и аккаунт В.Но владелец
Owner по-прежнему аккаунт А!Чем это плохо? Какая разница — владелец или полные права?
Для аккаунта В без разницы. Но как только вы попытаетесь скачать этот файл из аккаунта С (который также имеет все права на работу с бакетом В) — получите отлуп! И понятно почему — ведь ему владелец файла из аккаунта А не разрешал доступ к объекту, его нет в списке
Grantee.На этом неочевидном, сложном и крайне неприятном косяке сильно валились и валятся многие мульти-аккаунтные проекты. Тонкие вещи с добавлением прав аккаунту С с помощью флажка --grant-full-control это весьма специфичный и редко возможный вариант.
И как теперь?
Теперь, если включить для бакета S3 Object Ownership = bucket owner preferred, то при копировании файла без флажка
bucket-owner-full-control ничего не изменится. А вот с ним - произойдёт чудо:{
"Owner": {
"DisplayName": "account-B",
"ID": "8933ecf5e61d2b67a525edee13f7667ab45d2be85b1fdb82a9338a60609ee5f9"
},
"Grants": [
{
"Grantee": {
"Type": "CanonicalUser",
"DisplayName": "account-B",Полноправным (и единственным) владельцем (
"ID": "8933ecf5e61d2b67a525edee13f7667ab45d2be85b1fdb82a9338a60609ee5f9"
},
"Permission": "FULL_CONTROL"
}
]
}
Owner) файла из аккаунта А стал акаунт В! Больше никаких проблем, характерных ранее для #shared_bucket! Итого
Потому отныне можно рекомендовать всегда включать S3 Object Ownership = bucket owner preferred — логику работы оно не меняет (точней — исправляет), при этом бесплатно и проблем будет меньше.
#S3
Telegram
aws_history
Некоторые думают, что первый сервис Амазона, который был запущен - это EC2, хотя большинство считают, что нет, сначала был запущен в 2006-м году Amazon S3. И лишь самые продвинутые знают - первым был Amazon SQS, вот анонс от 3 ноября 2004-го года:
http…
http…
❤1
Forwarded from CloudSec Wine
This media is not supported in your browser
VIEW IN TELEGRAM
🔸iam-policies-cli
A CLI tool for building simple to complex IAM policies based on CloudFormation templates.
https://github.com/mhlabs/iam-policies-cli
#aws
A CLI tool for building simple to complex IAM policies based on CloudFormation templates.
https://github.com/mhlabs/iam-policies-cli
#aws
Forwarded from CloudTechRU
Бесплатные имена доменов для опытов с Route53, и load balancers можно зарегать в https://my.freenom.com/
Не благодарите, Ваш капитан )
Не благодарите, Ваш капитан )
У Slack серьёзные проблемы со вчерашнего дня:
https://www.dailymail.co.uk/sciencetech/article-8807179/Slack-users-unable-send-receive-messages-chat-service.html
Страница статуса:
https://status.slack.com/
Если не работает десктоп-клиент — не забывайте про браузерный вариант, он может работать:
https://app.slack.com/ssb/add
#Slack
https://www.dailymail.co.uk/sciencetech/article-8807179/Slack-users-unable-send-receive-messages-chat-service.html
Страница статуса:
https://status.slack.com/
Если не работает десктоп-клиент — не забывайте про браузерный вариант, он может работать:
https://app.slack.com/ssb/add
#Slack