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

Chat: https://xn--r1a.website/aws_notes_chat

Contacts: @apple_rom, https://www.linkedin.com/in/roman-siewko/
Download Telegram
Upgrading EKS clusters: from v1.23 to v1.30 — in-depth instructions

https://www.cncf.io/blog/2024/05/13/a-step-by-step-guide-to-securely-upgrading-your-eks-clusters/

1️⃣ Plan ahead: Regularly assess Kubernetes releases and upgrade in stages – development, staging, and production.
2️⃣ Control Plane & Data Plane sync: Ensure both are on the same Kubernetes version.
3️⃣ Tools & Automation: Utilize tools like Pluto and Nova for deprecated API checks and Helm releases.
4️⃣ AWS management: Leverage AWS's managed upgrade process for control planes but remember to manage your data plane.

#EKS
3👍1
​​EKS + Kubernetes 1.30 🎉

Спустя официального релиза 1.30 прошёл лишь месяц и теперь на AWS снова актуальная версия. 💪 Сделанный в прошлый раз прогноз на эту версию был 100% точным.

https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html

Версия 1.31 должна официально выйти 13 августа, так что поставлю, что 1.31 на AWS появится 20 сентября 2024 года.

На текущий момент на AWS доступны для установки версии Kubernetes: 1.23 - 1.30.

Рекомендации по версиям EKS:

EKS 1.22 и древнее — не поддерживаются.
EKS 1.23-1.25 — поддерживаются за дополнительную плату.

⚠️ EKS 1.26 — начнёт взимать дополнительную плату 12 июня.
⚠️ EKS 1.27 — начнёт взимать дополнительную плату 25 июля.

EKS 1.28 — минимально рекомендуемая на текущий момент (на дефолтной поддержке до 27 ноября).
EKS 1.29 — можно спать спокойно до 23 марта 2025 года.

#EKS
👍131
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
👍4🔥1🎉1
​​EKS 1.26-1.27 — end of standard support

В июне закончилась стандартная поддержка EKS 1.26.

⚠️ 24 июля закончится для EKS 1.27.

Если у кого-то крутился три года без обновления EKS 1.21, то у меня для вас две новости, хорошая и плохая.
Хорошая — поздравляю, у вас вчера версия кластера обновилась до EKS 1.22.
Плохая — не работает, потому что у вас вчера версия кластера обновилась до EKS 1.22.

https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html

#EKS
😈12😁3🔥1🆒1
Amazon EKS Terraform Workshop

https://catalog.us-east-1.prod.workshops.aws/workshops/afee4679-89af-408b-8108-44f5b1065cc7/en-US

- Install the Sample Application
- Observability
- Automation using Flux
- Using Kyverno Policy Manager
- Enabling GuardDuty
- VPC Lattice
- VPC CNI Network Policy
- Troubleshooting

#EKS #Terraform #workshop
👍17
EKS + Kubernetes 1.31 🎉

Спустя официального релиза 1.31 прошло лишь полтора месяца и теперь на AWS снова актуальная версия. 💪 Сделанный в прошлый раз прогноз на эту версию был точным с поправкой на неделю.

https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html

Версия 1.32 должна официально выйти 11 декабря, так что поставлю, что 1.31 на AWS появится 28 января 2025 года.

На текущий момент на AWS доступны для установки версии Kubernetes: 1.23 - 1.31.

Рекомендации по версиям EKS:

EKS 1.22 и древнее — не поддерживаются.

❗️ EKS 1.23принудительно обновится до 1.24 версии 11 октября (перестанет поддерживаться совсем).

EKS 1.23-1.27 — поддерживаются за дополнительную плату.

⚠️ EKS 1.28 — начнёт взимать дополнительную плату 27 ноября.

✔️ EKS 1.29 — минимально рекомендуемая на текущий момент (на дефолтной поддержке до 23 марта 2025).

EKS 1.30 — можно спать спокойно до 28 июля 2025 года.

#EKS
🎉10👍7
🆕 Amazon EKS Hybrid Nodes

https://aws.amazon.com/blogs/aws/use-your-on-premises-infrastructure-in-amazon-eks-clusters-with-amazon-eks-hybrid-nodes/

Теперь можно поднимать ноды EKS у себя в серверной, по-прежнему управляя кластером в консоли AWS.

#EKS
👍12🔥9
☸️ EKS автопилотEKS Auto Mode со встроенным Karpener-ом, dual stack сетью, поддержкой block storage, GPU и автообновлением нод по безопасности:

https://aws.amazon.com/blogs/aws/streamline-kubernetes-cluster-management-with-new-amazon-eks-auto-mode/

К сожалению, это не ECS обновлять EKS кластер на новую версию по-прежнему нужно будет самостоятельно.

#EKS
👍4🔥2
EKS + Kubernetes 1.32 🎉

Спустя официального релиза 1.32 прошло лишь полтора месяца и теперь на AWS снова актуальная версия. 💪 Сделанный в прошлый раз прогноз на эту версию был весьма точным (ошибка 4 дня).

https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html

Версия 1.33 должна официально выйти 23 апреля, так что поставлю, что 1.33 на AWS появится 7 мая 2025 года.

На текущий момент на AWS доступны для установки:

▫️ EKS Auto Mode: версии 1.29 - 1.32.
▫️ Custom configuration: версии 1.28 - 1.32.

Рекомендации по версиям EKS:

EKS 1.23 и древнее — не поддерживаются.
EKS 1.24-1.28 — поддерживаются за дополнительную плату.

❗️EKS 1.24 — перестанет поддерживаться совсем 31 января (будет принудительно обновлён до 1.25)
❗️EKS 1.25 — перестанет поддерживаться совсем 1 мая (будет принудительно обновлён до 1.26)

⚠️ EKS 1.29 — начнёт взимать дополнительную плату 23 марта.
⚠️ EKS 1.30 — начнёт взимать дополнительную плату 23 июля.

✔️ EKS 1.31 — минимально рекомендуемая на текущий момент (на дефолтной поддержке до 26 ноября).
EKS 1.32 — можно спать спокойно до 23 марта 2026 года.

#EKS
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍4🤬31🤔1🐳1
Get secrets from Secrets Manager to EKS using Pod Identity instead of IRSA:

▪️ No need to create and manage service accounts for each application.
▪️ More granular control over permissions at the Pod level.
▪️ Easier to implement in large-scale environments.
▪️ Best practices for security.

https://aws.amazon.com/blogs/security/announcing-ascp-integration-with-pod-identity-enhanced-security-for-secrets-management-in-amazon-eks/

There are examples for a single- and cross-account.

#EKS #SecretsManager
5👍16
Бросайте свои ArgoCD и Flux и переходите на тёмную сторону CodePipeline + EKS deployment!

https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-eks-deploy.html

Документация:

https://docs.aws.amazon.com/codepipeline/latest/userguide/action-reference-EKS.html

Пока можно лишь накликать в консоли, т.к. Terraform педалит issue выполнения команд в CodePipeline ещё с прошлого года (поставьте лайк, пожалуйста).

#CodePipeline #EKS
💩29🥴12😁8
#aws #eks #sqs #CostOptimization
Материал уровня middle.

Снова про экономию.

У нас есть AWS SQS.
В него прилетает миллион вебхуков с полезным и важным payload.
Бывают пики, бывают нет.
У нас есть AWS EKS и приложение в POD-e, который вычитывает SQS, процессит и всё ок.
Нам надо настроить масштабирование не за счёт CPU/memory usage, а за счёт количества сообщений.
В этом нам помогает KEDA. Опустим этапы установки/настройки/прав и авторизации.
У нас есть готовый манифест scaledobject.
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
...
spec:
cooldownPeriod: 300
maxReplicaCount: 50
minReplicaCount: 2
pollingInterval: 30
scaleTargetRef:
name: application
triggers:
- authenticationRef:
name: keda-aws-credentials
metadata:
awsRegion: us-east-1
identityOwner: operator
queueLength: "500"
queueURL: https://sqs.us-east-1.amazonaws.com/123456789/sqsname
type: aws-sqs-queue

Всё работает, всё скейлится, всё ок.
В HPA некрасиво выглядят цифры, хочется видеть точное количество мессаджем. Добавляем metricType
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
...
spec:
...
metricType: Value

И теперь в kubectl get hpa blablabla видим точное количество мессаджей в TARGETS(а не системы счисления инопланетян).
Этого нам мало, нужна точная подстройка.
Читаем дальше доку, у нас есть адвансед настройки.
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
...
spec:
advanced:
horizontalPodAutoscalerConfig:
behavior:
scaleDown:
policies:
- periodSeconds: 15
type: Pods
value: 1
stabilizationWindowSeconds: 300
scaleUp:
policies:
- periodSeconds: 15
type: Pods
value: 1
selectPolicy: Max
stabilizationWindowSeconds: 60
... (остальное так же)

Теперь у нас всё динамически скейлится, прописаны все триггеры, трешхолды.
Всё отлично и бизнес ликует(не вру, прям ликует, сильно помогло).

Однако меня, как рьяного и верного пса девопс церкви, напрягает, что в период высокой нагрузки всё упирается в максимум реплик. Да, можно поставить не 50, а 100, но я думаю, что настройка неверная.
Углубляемся дальше в доку(вру, я ничо не понял и просто спросил ребят-гуру-AWS-технологий в телеге) и вспоминаем про визибл/анвизибл настройки у sqs.
https://keda.sh/docs/2.14/scalers/aws-sqs/
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html

Окончательно пилим манифест.
---
apiVersion: keda.sh/v1alpha1
kind: ScaledObject
...
spec:
advanced:
...(тут тоже самое)
metadata:
...
scaleOnInFlight: "false" << - - вот это вот важное нам
...


Отлично. Теперь самая точная и потрясающая настройка.
👍14
#aws #eks #sqs #CostOptimization

scaleOnInFlight
- Indication of whether or not to include in-flight messages when calculating the number of SQS messages. (default: true, Optional)

Благодаря точной настройке мы неслабо экономим:
- во время нагрузки мы не скейлим так много реплик
- нет большого лишнего скейла реплик - нет и скейла нод кластера AWS EKS
- нет скейла нод - платим серьёзно меньше

Всего один параметр и в разы снижаем нагрузку и косты.

Прежде чем делать подобное, уточните у девелоперов и бизнеса - подойдёт ли это вам и продукту.
Не все процессинги можно переключить только на инфлайт режим.

Полный пример манифеста(код в телеге неудобно читать).
https://gist.github.com/kruchkov-alexandr/e6328137107e49c6a5e7c05c40851680
👍14🔥1
EKS Terraform demo

https://github.com/setheliot/eks_demo/

Deploys:

▪️ EKS cluster using EC2 nodes
▪️ DynamoDB table
▪️ EBS volume used as attached storage for the Kubernetes cluster (a PersistentVolume)
▪️ Demo "guestbook" application, deployed via containers
▪️ ALB to access the app

#EKS #Terraform
👍5💊5
EKS community Add-ons

https://aws.amazon.com/blogs/containers/announcing-amazon-eks-community-add-ons-catalog/

Теперь можно уменьшить набор стандартных чартов для установки и поставить их через эдд-оны:

metrics-server
kube-state-metrics
prometheus-node-exporter
cert-manager
external-dns

#EKS
🔥22👍12💩32
🔥25👍7🎉2
EKS + Kubernetes 1.33 🎉

Спустя официального релиза 1.33 прошло чуть больше месяца и теперь на AWS снова актуальная версия. 💪 Сделанный в прошлый раз прогноз на эту версию был весьма неточным (ошибка 3 недели).

https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html

Версия 1.34 должна официально выйти 27 августа, так что поставлю, что 1.34 на AWS появится 3 октября 2025 года.

На текущий момент на AWS доступны для установки:

▫️ EKS Auto Mode: версии 1.30 - 1.32.
▫️ Custom configuration: версии 1.26 - 1.33.

Рекомендации по версиям EKS:

EKS 1.25 и древнее — не поддерживаются.
EKS 1.26-1.29 — поддерживаются за дополнительную плату.

❗️EKS 1.26 — перестанет поддерживаться совсем 11 июня (будет принудительно обновлён до 1.27)
❗️EKS 1.27 — перестанет поддерживаться совсем 24 июля (будет принудительно обновлён до 1.28)

⚠️ EKS 1.30 — начнёт взимать дополнительную плату 23 июля.
⚠️ EKS 1.31 — начнёт взимать дополнительную плату 26 ноября.

✔️ EKS 1.32 — минимально рекомендуемая на текущий момент (на дефолтной поддержке до 23 марта 2026 года).

EKS 1.33 — можно спать спокойно до 29 июля 2026 года.

#EKS
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥111