AWS Notes Україна
282 subscribers
31 photos
1 video
1 file
219 links
AWS Notes Україна — освітньо-інформаційний канал Amazon Web Services

Чат: https://xn--r1a.website/aws_ua
Download Telegram
​​Як різко прискорити процес розгортання контейнерів на ECS:

https://nathanpeck.com/speeding-up-amazon-ecs-container-deployments/

#ECS
DynamoDB також можна використовувати локально. Для цього існує спеціальний образ Docker:

https://hub.docker.com/r/amazon/dynamodb-local/.

#DynamoDB
Деякі операції в AWS неможливі для користувача IAM і вимагають користувача root:

https://docs.aws.amazon.com/general/latest/gr/aws_tasks-that-require-root.html

Найболючіше-найчастіше-важливе:

🔹 Увімкнути відображення білінгу для користувачів IAM
🔹 Зміна плану підтримки.
🔹 Відновлення доступу до бакету S3, якщо ви допустили помилку з умовою - наприклад, встановіть доступ лише для певної VPC або IP (і зробили помилку).
🔹 Закрити (видалити) аккаунт AWS (найбільша проблема). 🔥

#IAM
При копіюванні aws s3 cp або aws s3 sync порожні каталоги не створюються, оскільки S3 працює з об’єктами і зовсім не знає каталогів (це лише шлях до об’єкта).

Якщо потрібно отримати саме з порожніми каталогами, то доведеться використовувати сторонні утиліти, наприклад, S3cmd.

Щоб скоріше додати такий функціонал в офіційну версію, можна поставити плюсик тут.

#s3
⁠Доступ до S3 бакета для всіх акаунтів організації

Буває потрібно швидко і просто розшарити якийсь бакет або його частину для всіх, але не "для всіх взагалі" (в інтернеті), а тільки "для своїх всіх".

У разі мульти-аккаунт стратегії дана задача перетворюється в "розшарити для всіх акаунтів організації". Для цього існує спеціальна опція PrincipalOrgID, яку і можна використовувати:

{
 "Version": "2008-10-17",
 "Statement": [
  {
   "Sid": "Full access to path /some-path for all of organization accounts",
   "Effect": "Allow",
   "Principal": {
    "AWS": "*"
   },
   "Action": "s3:*",
   "Resource": [
    "arn:aws:s3:::my-shared-bucket",
    "arn:aws:s3:::my-shared-bucket/some-path/*"
   ],
   "Condition": {
    "StringEquals": {
     "aws:PrincipalOrgID": "o-dtj1bor777"
    }
   }
  }
 ]
}

Це недосконале рішення з точки зору безпеки, але точно краще варіанту зробити S3 бакет публічним.
#S3
​​Amazon EKS Anywhere офіційно доступний всім:

https://aws.amazon.com/blogs/aws/amazon-eks-anywhere-now-generally-available-to-create-and-manage-kubernetes-clusters-on-premises/

З виходом в GA також з'явилася нова фіча EKS Connector за допомогою якої EKS Anywhere може працювати як і ECS Anywhere — можна бачити і управляти своїми кластерами On-Prem централізовано з амазоновской EKS консолі.

#EKS
​​Security group vs Network ACL

Відмінна картинка з документації - на яких рівнях вони працюють.

https://docs.aws.amazon.com/en_us/vpc/latest/userguide/VPC_Security.html

Network ACL (NACL) умовно можуть робити все те ж, що і Security Group, плюс дозволяють фільтрувати з урахуванням підмереж (subnets) - коли, наприклад, потрібно на мережевому рівні ізолювати якусь приватну підмережу.

Зазвичай фільтрацію реалізують лише з використанням Security group, однак якщо дістався чужої проект і там до чогось ніяк не виходить достукатися - є сенс глянути в VPCSecurityNetwork ACLs.

Варто також відзначити, що ні Security group, ні NACL не фільтрують трафік з 169.254.0.0/16 і що завжди можна отримати мета-дані інстанси звідти, в тому числі з запущених на інстанси докерів.

#security #VPC
​​Не всі знають, а воно є - пошук в AWS CLI::

https://awscli.amazonaws.com/v2/documentation/api/latest/search.html

#AWS_CLI
Не варто забувати простий спосіб серйозно заощадити, нічого не змінюючи в коді — Sheduled Actions для Auto Scaling Group:

https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html

Якщо у вас одна команда в одному часовому поясі і якийсь проект потрібен кожен день, але тільки в денні години, то заходите в консоль, тиснете додати дію за розкладом, додаєте подія на зменшення групи до нуля в кінці дня і збільшення до потрібного в початку.

#ASG #cost_optimization
​​Старенькі, але дуже показові тести продуктивності мережі віртуалок різних типів. Дуже допомагає візуально зрозуміти, що означає розпливчасте "up to" в описі.

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/general-purpose-instances.html#general-purpose-network-performance

Видно, що у burstable віртуалок максимальна швидкість триває менше трьох хвилин і після залишається на baseline рівні.

https://s3.amazonaws.com/cloudharmony/iperf_1_0/aws:ec2/t2.large/eu-west-1/2015-10-22/5580/760760-1/report.pdf

https://s3.amazonaws.com/cloudharmony/iperf_1_0/aws:ec2/m4.10xlarge/us-west-1/2015-06-30/5164/629745-1/report.pdf

https://s3.amazonaws.com/cloudharmony/iperf_1_0/aws:ec2/t2.small/us-west-1/2015-10-22/5573/760779-1/report.pdf

https://s3.amazonaws.com/cloudharmony/iperf_1_0/aws:ec2/c3.4xlarge/us-east-1/2015-10-22/5661/762030-1/report.pdf

#EC2
Знайти файли S3 бакета
aws s3api list-objects-v2 --bucket my-aws-notes-ua
за вересень місяць цього року
Contents[?LastModified>='2021-09-01'] | [?LastModified<='2021-10-01']
і щоб, якщо що, не надто багато, відобразити лише 20 штук
--max-items 20
для краси вивести табличкою
--output table
із зазначенням назв колонок File і LastDate
.{ File: Key, LastDate: LastModified }

Разом:

aws s3api list-objects-v2 --max-items 20 --bucket my-aws-notes-ua --query "Contents[?LastModified>='2021-09-01'] | [?LastModified<='2021-10-01'].{ File: Key, LastDate: LastModified }" --output table

#query
​​Infrastructure as SQL:

https://www.iasql.com/

П'ятничне. А може й ні.
​​Найближчі точки доступності України до AWS — Варшава, Будапешт, Бухарест:

https://www.google.com/maps/d/u/0/viewer?ll=50.39930046958295%2C45.245527217857216&z=5&mid=1cj0vZ2YZJNp39MHIbstZT3QKPkl3Xgw2

На зображенні нижче - на вересень 2021 (актуальне за посиланням вище).
Щоб розшарити ECR репозиторій (тільки на читання – лише завантажити) для всієї організації:

{
 "Version": "2008-10-17",
 "Statement": [
  {
   "Sid": "Organization ReadOnly access",
   "Effect": "Allow",
   "Principal": "*",
   "Action": [
    "ecr:BatchCheckLayerAvailability",
    "ecr:BatchGetImage",
    "ecr:GetDownloadUrlForLayer"
   ],
   "Condition": {
    "StringEquals": {
     "aws:PrincipalOrgID": "o-tb2dsr832"
    }
   }
  }
 ]
}

(Потрібно замінити aws:PrincipalOrgID на свій)

Дані правила (download only) застосовуються для інших акаунтів, а для AWS аккаунта, де знаходиться ECR – управляється за допомогою IAM політик, якими можна поставити потрібні права (в тому числі на upload).

#ECR
Forwarded from Lol Kek
Хороший репозиторій для EKS (1.20) з цікавою структурою:

https://github.com/aws-samples/aws-eks-accelerator-for-terraform

Main Purpose: This project provides a framework for deploying best-practice multi-tenant EKS Clusters, provisioned via Hashicorp Terraform and Helm charts on AWS.

Оновлюється регулярно, на даний момент вже купа всього є.
⁠SSE-S3 (AES 256) – що дає?

У багатьох виникає питання – що це за шифрування, що просто галочку поставили і все зашифровано. У чому його сенс, якщо нічого не потрібно робити і все запити видаються автоматично, якщо є доступ до S3 бакету?

Це не обман (і це безкоштовно), справа в дотриманні різних compliance. Умовно кажучи, якщо є вимога, щоб дані були зашифровані і вороги не могли підірвати центр обробки даних, перетягнути звідти жорсткі диски і скопіювати з них ваші дані, вони встановлюють цю галочку, і відповідність виконується. Та й це просто гріє душу – дані там не просто без нагляду, а в зашифрованому вигляді.

Не полінуйтеся поставити – це корисно, легко, безкоштовно і навіть відразу дає хоч якесь відчуття захищеності.

https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingServerSideEncryption.html

#S3 #compliance
​​Друзі, не дозволяйте друзям будувати датацентри!

#AWS
​​Жовтневий мітап від AWS User Group Ukraine! 🇺🇦

Цього разу обговоримо Lambda & scalable architecture з топовими спікерами:

🔹 Олександром Драгуновим – Senior Partner Solutions Architect в AWS
Тема: “Deep dive into AWS Lambda

🔹 Daniel Doppelt – System Architect у Bizzabo
Тема: “How bizzabo leverage aws to make scalable architecture

Модератор зустрічі — Єгор Шадрін, Startup Solutions Architect в AWS.

📆 13 жовтня о 19:00 (за Києвом) онлайн

Приєднуйтесь за посиланням 👉 https://bit.ly/39ysCKR