AWS Notes
5.59K subscribers
449 photos
42 videos
10 files
2.8K links
AWS Notes — Amazon Web Services Educational and Information Channel

Chat: https://t.iss.one/aws_notes_chat

Contacts: @apple_rom, https://www.linkedin.com/in/roman-siewko/
Download Telegram
⚠️ Starting June 1, 2024, Amazon RDS began automatically upgrading instances:

db.m4 => db.m5
db.r4 => db.r5
db.t2 => db.t3

Amazon RDS ends support for db.m4/r4/t2December 31, 2024.

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html

#RDS
👍8😱5👻1🤪1
AI посредственно пишет код, но неплохо его переписывает. Значит скоро все бросятся переписывать на Rust в промышленных масштабах.

TODO: Освоить Rust.
😁17👍4🤡4
Много лет топлю за IPv6. Опросы здесь 1, 2, 3. Все мои окружения всегда по дефолту dual stack: IPv4+IPv6. Даже начинающим IPv6 даю с самого начала (как и ARM).

Однако предположу, что на данный момент в среднем лишь половина ваших проектов имеют поддержку IPv6. В то время, как в самых продвинутых местах (см. картинку, ссылка на pdf) половина уже на IPv6 only.

Стоит задуматься.

#IPv6
🤝6👍3🤡2
AWS Notes
Чем больше я узнаю Kubernetes, тем больше я люблю ECS.
Что надёжнее — ECS или EKS?

Обратимся к объективной информации — глянем SLA.

ECS: 99.99%
EKS: 99.95%

Итого: ECS надёжнее EKS.

P.S. Fargate на ECS тоже 99.99%.

#reliability #ECS #EKS
👌15🤡13👍5🔥43
aws --debug

В случае проблем при работе с AWS CLI стоит помнить про стандартный ключик --debug, который покажет всё, что происходит под капотом во время выполнения команды aws.

https://awscli.amazonaws.com/v2/documentation/api/latest/reference/index.html#global-options

Любая команда выдаст простыню логов, в частности, если присмотреться, то можно увидеть, как команда aws перебирает источники credentials:

Looking for credentials via: env
Looking for credentials via: assume-role
Looking for credentials via: shared-credentials-file
Looking for credentials via: custom-process
Looking for credentials via: config-file
Looking for credentials via: ec2-credentials-file
Looking for credentials via: boto-config
Looking for credentials via: container-role
Looking for credentials via: iam-role

В результате наглядно видны приоритеты получения aws-cli credentials, что вполне может навести на мысль, почему не работает как нужно.

Если же думать и присматриваться лень, то скормив эту простыню ChatGPT, можно рассчитывать на максимально точные рекомендации.

#aws_cli
👍11😁1🤔1
Forwarded from Alex K
Начинающему Молодому инженеру
Что приходит на собес
Предлагают сразу выбор
Деньги или интерес

Выбирайте чётко деньги
Вот синьЁрский вам совет
Потому что где нет денег
Там и интереса нет
💯43👍10🔥3😁3🤡32🏆2👏1👌1👨‍💻1🤝1
Periodic Table of Cloud Security

https://threats.wiz.io/periodic-table

#security
3🔥2
Compare where to store static data for serverless apps:

🔹 DynamoDB
🔸 S3
🔹 SSM Parameter Store
🔸 AppConfig

https://www.serverlessguru.com/blog/cost-effective-management-of-static-data-in-serverless-apps

#serverless #cost_optimisation
👍11🔥7🥰2
👍4🔥1🎉1
Требование указывать EngineVersion для Amazon MQ наконец-то убрали:

EngineVersion field is optional for both broker and configuration and uses the latest available version by default.
AutoMinorVersionUpgrade field is also now optional for broker creation and defaults to true.

Вскоре они будут в Optional:

https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/mq_broker#engine_version

#AMQ
👍1
​​ECR + OCI v1.1 = добавляем любой файл к образу в ECR

0️⃣ Историческая справка

OCI 1.0 появился в далёком 2017-м. Поддержка OCI 1.0 появилась в ECR в 2020-м:

https://aws.amazon.com/blogs/containers/oci-artifact-support-in-amazon-ecr/

Это позволило добавлять Helm чарты сразу к запушенному в ECR образу.

Релиз OCI v1.1 вышел в начале 2024 г. и теперь он поддерживается ECR:

https://aws.amazon.com/about-aws/whats-new/2024/06/amazon-ecr-oci-image-distribution-version-1-1/

Релиз 1.1 позволяет стандартизированно, без костылей с созданием кучи спамовских тэгов, добавить нужное к любому образу.

Документация по поводу работы с OCI в AWS на момент написания крайне ограниченная:

https://docs.aws.amazon.com/AmazonECR/latest/userguide/images.html

Поэтому в качестве примера добавим к sbom.json и readme.md к образу в ECR. Я буду для этого использовать AWS CloudShell.


1️⃣ Ставим и настраиваем oras:

https://oras.land/docs/installation/

На момент написания CloudShell по-прежнему на Intel (ужас какой), у кого ARM — нужно будет поменять в ссылке скрипта на arm64.

⚠️ Без amazon-ecr-credential-helper он даст ошибку:

Error: basic credential not found

Ставим под вашу систему, в случае CloudShell это обычное:

sudo yum install amazon-ecr-credential-helper

⚠️ Без файла ~/.docker/config.json также будет ошибка:

Error: failed to decode config file at /home/cloudshell-user/.docker/config.json: invalid config format: EOF

Создаём, если такого не было:

mkdir ~/.docker
cat >> ~/.docker/config.json << EOF
{
"credsStore": "ecr-login"
}
EOF

Если уже был, то просто добавляем строчку:

{
"credsStore": "ecr-login",
"auths": {
...


2️⃣ Просмотр файлов у образа в ECR

oras discover 0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo:mytag

Получим что-то типа:

0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo@sha256:54408c668558c601e7fb564a912343af3edfe5f4f5a1922086a8be87d8f74923

То есть ничего нет.


3️⃣ Добавляем файлы к образу в ECR

oras attach 0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo:mytag --artifact-type my/sbom ./sbom.json:application/json

oras attach 0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo:mytag --artifact-type my/readme ./readme.md:text/markdown


4️⃣ Смотрим снова

(на картинке)


5️⃣ Получаем файлы из ECR

Сначала нужен digest файла:

oras discover --artifact-type 'my/readme' 0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo:mytag --format json | jq -r ".manifests[0].digest"

Теперь получаем сам файл в папку myfiles:

oras pull 0123456789012.dkr.ecr.us-east-1.amazonaws.com/myrepo@sha256:bdd414443ed04e69a09a9eab979d5e3950197341cc8c81a8d9001431685b571f --output myfiles


Итого: хорошая вещь, можно напихать всякого полезного в CI/CD пайплайны на каждый образ, пользуемся.

#ECR
🔥6👍4❤‍🔥1
Использование ресурсов в AWS:

https://www.datadoghq.com/state-of-cloud-costs/

Каждая шестая виртуалка — GPU

Каждая шестая виртуалка — ARM
• Каждая десятая виртуалка — T4g 💪

Треть клиентов крутят контейнеры (ECS/EKS)

Контейнеры загружены лишь на одну шестую 👀

Лишь шестая часть проектов не использует древние виртуалки

Количество GP3 в этом году обгонит GP2

Половина стоимости на трафик — это cross-AZ

Две трети используют SP/RI (Savings Plans / Reserved Instances)
• Но количество их снижается (-5%)

SP в четыре раза популярней RI

Большая половина покупает SP/RI меньше, чем на половину прайса

#cost_optimisation
👍12🤔1
AWS Notes
Использование ресурсов в AWS: https://www.datadoghq.com/state-of-cloud-costs/ Каждая шестая виртуалка — GPU Каждая шестая виртуалка — ARM • Каждая десятая виртуалка — T4g 💪 Треть клиентов крутят контейнеры (ECS/EKS) Контейнеры загружены лишь на одну шестую…
Интересные цифры по загрузке контейнеров. Получается, что в среднем контейнеры загружены чуть более, чем на половину (17/29=59%).

Однако из-за общего оверпровизионинга кластеров это даёт всего лишь 17% загрузки.

Итого.

Fargate на бумаге на 20-30% дороже EC2.
А на деле — в 2-3 раза выгоднее!

#Fargate #EC2 #cost_optimization
👍16😁2👎1
​​Мои базовые AI инструменты:

https://chatgpt.com/

ChatGPT точно знают все. Лидер и мастхэв инструмент уже не один год и, предположу, останется таковым в будущем.

https://www.perplexity.ai/

Многим уже сейчас заменил Google, т.к. понимает контекст и сложные запросы типа "Отсортируй по популярности AWS сертификаций в Бразилии".

https://claude.ai/

Claude исключительно хорош, глубокое понимание контекста и связей, субъективно лучше ChatGPT. Отдельно можно сказать, что это наверняка выбор интроверта. 😁

https://www.deepl.com/

И переводчик, и, особенно, "улучшатель" языка — удобный, быстрый, просто лучший. Остальные инструменты в этой нише, даже весьма популярные, типа Grammarly, позади.

https://myninja.ai/

Самый свежий из всех инструментов, на день написания позволяет выбрать ответ среди 20 популярных моделей, причём 14 из них, которые доступны через Amazon Bedrock (см. картинку). Уникален тем, что натренирован на Амазоновском железе, короче, вообще просто AWS-ный проект (хотя есть и OpenAI - 3 шт., и Google - 3 шт.). Выглядит очень перспективно, хоть пока есть прямые признаки недоделанности (например, нет простой возможности грузить картинки), но делать глубокий анализ с ним прямо очень круто, собирая ответ с разных моделей (правда не стоит ставить сразу много моделей — очень быстро кончатся деньги).

Поделитесь своими, ставшими обычными, AI инструментами — речь про базовые, широкого профиля, либо как-то привязанные к IT или DevOps.

P.S. AI инструменты для кодинга здесь не упомянуты — это отдельная категория.

#AI
14👍7🔥2🤡2👏1
Forwarded from AWS History
​​EC2 T2 виртуалкам 10 лет! 🎉

https://aws.amazon.com/blogs/aws/low-cost-burstable-ec2-instances/

Это было реально крутое событие. Супердёшево по сравнению со всем, что было доступно тогда. T1, которые были тоже в своё время дешёвыми, когда появились в 2010-м году, по сравнению с T2 выглядели уже тогда динозаврами — сильно медленней и сильно дороже (почти в два раза).

Начиная с T2 вместо фиктивных ECU (Effective Compute Units) для измерения производительности использовались "честные" vCPU, отражающие реальные ядра процессора, по крайней мере, без попытки пересчитать их по какому-то своему хитрому рейтингу.

Памяти у t2.micro был целый (почти) честный гигабайт! Ну, по крайней мере не позорные 0.6 GB как в t1.micro.

А скорость — да она просто летала! Intel Xeon E5-2686 v4 под капотом на тот момент был реальным лидером в серверах.

Просто так отдавать пользователю AWS такое счастье не захотел и добавил условие — такое счастье можно запускать только в VPC. А тогда, спустя 5 лет после появления VPC, всё ещё большинство нагрузок его не использовали. А зачем, если и так работает?

И, вот, появление столь аппетитного процессора дало сильный толчок для миграции в VPC. Сам тогда по сути окончательно мигрировал все нагрузки в VPC, оставив лишь то, что крутилось проде (и что пришлось в 2022-м году принудительно заапдейтить, т.к. кончилась поддержка EC2-Classic, как назывались инстансы без VPC).

В общем, T2 — реально самый эпохальный процессора на AWS. И, знаете, ещё почему?

А потому что T2 до сих пор "current generation" Processor! Да, да, это не ошибка, его нет в "previous generation" (как минимум, это верно на его десятилетие):

https://aws.amazon.com/ec2/previous-generation/

C4/M4, вышедшие в 2015-2016-м, уже отправлены на пенсию, даже A1 из 2018-го уже списали, а T2 всё ещё бодрячком! И по-прежнему в качестве дефолтного во Free Tier.

На текущий момент T2 единственный не из Nitro семейства. Понятно, что Nitro ещё не было, а он был. Он последний доступный процессор, умеющий в paravirtual и даже 32 bit!

T2 был один из самых популярных, вроде второй по популярности, из всех процессоров в 2020-м году. Так что, скорей всего, такая популярность и не даёт простой возможности отправить его, не Nitro-based на покой.

В общем, классный процессор T2. И не пишу "был". Много связано с ним хороших воспоминаний. И наверняка у вас до сих пор крутится что-то на T2, верно? И не только в проде, да? А если найду? 😁

#EC2
🎉172😁1