Forwarded from Mops DevOps
Pro K8s
Что тут скажешь? Просто классные схемы по архитектуре Kubernetes 🤩
👉 https://bit.ly/3gcwjdX
#kubernetes
Что тут скажешь? Просто классные схемы по архитектуре Kubernetes 🤩
👉 https://bit.ly/3gcwjdX
#kubernetes
Common Kubernetes Errors Made by Beginners
Из-за огромной насмотренности статей по DevOps и около DevOps тематике, начинаешь различать хорошие и плохие статьи.
И мне попался отличный кандидат второй категории.
📍Содержание статьи можно обощить в следующем: я видел, что такие ошибки совершают, значит они наиболее частые. И далее приведен список из "ошибок", которые на самом деле встречаются в каждой второй статье подобного рода.
📍Как мне кажется, основная ошибка начинающих в Kubernetes - они не читают документацию.
К слову, у Kubernetes лучшая документация из тех, что мне довелось видеть. В ней большое количество примеров и разобранных практических кейсов. Она переведена на несколько языков, своевременно обновляется, есть отдельная версия для каждого мажорного релиза Kubernetes и ее приятно читать. Любой вопрос можно смело "загуглить" там и я уверена, что вы найдете желаемый ответ.
Касательно содержания статьи я хочу привести один пример. В одном из пунктов, автор указывает, что отсутствие указанных реквестов и лимитов по ресурсам может привести к проблемам. С этим заключением я спорить не буду, но нюанс заключается в том, что его ответ не содержит абсолютно никакой информации, кроме наставлений как нужно делать.
Естественно, правильный и полный ответ находится первой ссылкой в документации. Из нее мы узнаем, зачем на самом деле нужны реквесты и лимиты, какой физический смысл стоит за ними и какими способами эти параметры можно выставить.
🤝 Вывод: читайте документацию и не верьте тем, кто пишет в интернетах 🙂
#kubernetes
Из-за огромной насмотренности статей по DevOps и около DevOps тематике, начинаешь различать хорошие и плохие статьи.
И мне попался отличный кандидат второй категории.
📍Содержание статьи можно обощить в следующем: я видел, что такие ошибки совершают, значит они наиболее частые. И далее приведен список из "ошибок", которые на самом деле встречаются в каждой второй статье подобного рода.
📍Как мне кажется, основная ошибка начинающих в Kubernetes - они не читают документацию.
К слову, у Kubernetes лучшая документация из тех, что мне довелось видеть. В ней большое количество примеров и разобранных практических кейсов. Она переведена на несколько языков, своевременно обновляется, есть отдельная версия для каждого мажорного релиза Kubernetes и ее приятно читать. Любой вопрос можно смело "загуглить" там и я уверена, что вы найдете желаемый ответ.
Касательно содержания статьи я хочу привести один пример. В одном из пунктов, автор указывает, что отсутствие указанных реквестов и лимитов по ресурсам может привести к проблемам. С этим заключением я спорить не буду, но нюанс заключается в том, что его ответ не содержит абсолютно никакой информации, кроме наставлений как нужно делать.
Естественно, правильный и полный ответ находится первой ссылкой в документации. Из нее мы узнаем, зачем на самом деле нужны реквесты и лимиты, какой физический смысл стоит за ними и какими способами эти параметры можно выставить.
🤝 Вывод: читайте документацию и не верьте тем, кто пишет в интернетах 🙂
#kubernetes
Kubernetes
Resource Management for Pods and Containers
When you specify a Pod, you can optionally specify how much of each resource a container needs. The most common resources to specify are CPU and memory (RAM); there are others.
When you specify the resource request for containers in a Pod, the kube-scheduler…
When you specify the resource request for containers in a Pod, the kube-scheduler…
Никому не доверяем - читаем все сами.
Из важного - токены для ServiceAccount больше не будут автоматом генерироваться. Если нужен секрет с токеном, то можно использовать официальный гайд из документации Kubernetes.
#kubernetes
Из важного - токены для ServiceAccount больше не будут автоматом генерироваться. Если нужен секрет с токеном, то можно использовать официальный гайд из документации Kubernetes.
#kubernetes
GitHub
kubernetes/CHANGELOG/CHANGELOG-1.24.md at master · kubernetes/kubernetes
Production-Grade Container Scheduling and Management - kubernetes/kubernetes
Kubernetes descheduler
Продолжая тему управления ворклоадами внутри Kubernetes кластера - наткнулась на descheduler, основная задача которого помочь равномерно распределить нагрузку по нужным нодам в кластере.
Умеет запускаться как Job, CronJob и Deployment.
В readme проекта описаны все поддерживаемые политики и примеры их конфигурации.
Например:
📍 RemoveDuplicates - решедулим поды одного репликасета/деплоймента, оказавшиеся на одной ноде
📍 RemovePodsViolatingInterPodAntiAffinity - решедулим поды, если правила описанные в PodAntiAffinity не выполняются, например, потому что были заданы после того, как подходящие поды были задеплоены на ноду
📍 PodLifeTime - решедулим поды старше N-времени. Может быть полезно для периодического редеплоя/перераспределения приложений, находящейся в стадии поддержки
#kubernetes
Продолжая тему управления ворклоадами внутри Kubernetes кластера - наткнулась на descheduler, основная задача которого помочь равномерно распределить нагрузку по нужным нодам в кластере.
Умеет запускаться как Job, CronJob и Deployment.
В readme проекта описаны все поддерживаемые политики и примеры их конфигурации.
Например:
📍 RemoveDuplicates - решедулим поды одного репликасета/деплоймента, оказавшиеся на одной ноде
📍 RemovePodsViolatingInterPodAntiAffinity - решедулим поды, если правила описанные в PodAntiAffinity не выполняются, например, потому что были заданы после того, как подходящие поды были задеплоены на ноду
📍 PodLifeTime - решедулим поды старше N-времени. Может быть полезно для периодического редеплоя/перераспределения приложений, находящейся в стадии поддержки
#kubernetes
GitHub
GitHub - kubernetes-sigs/descheduler: Descheduler for Kubernetes
Descheduler for Kubernetes. Contribute to kubernetes-sigs/descheduler development by creating an account on GitHub.
Короткая статья о том, как можно быстро написать приложение-хелпер для работы с ресурсами внутри Kubernetes
В дополнение похожая статья про написание своего port forward приложения.
Статьи объединяет один и тот же автор, простота понимания и большое количество комментариев в коде :)
#kubernetes
В дополнение похожая статья про написание своего port forward приложения.
Статьи объединяет один и тот же автор, простота понимания и большое количество комментариев в коде :)
#kubernetes
gianarb.it
Extend Kubernetes via a Shared Informer
Kubernetes is designed to be extended. There a lot of way to do it via Custom Resource Definition for example. Kubernetes is an event-based architecture and you can use a primitive called Shared Informer to listen on the events triggered by k8s itself.
Отличный ресурс для того, чтобы изучить сетевые абстракции в Kubernetes.
Часть разделов еще находятся в разработке, но уже есть описание и лабы по Service, Ingress и Gateway API.
От создателя сайта есть еще не менее интересная статья-демистификация
#kubernetes
Часть разделов еще находятся в разработке, но уже есть описание и лабы по Service, Ingress и Gateway API.
От создателя сайта есть еще не менее интересная статья-демистификация
kubernetes.default
- как, зачем и почему с примерами source-кода. #kubernetes
www.tkng.io
The Kubernetes Network Model
The Kubernetes Networking Guide
Kubernetes resources under the hood
Отличный обзорный цикл статей про работу с ресурсами в Kubernetes. Рассматриваются следующие аспекты:
📌 виды ресурсов
📌 QoS для подов
📌 особенности работы с CPU в Linux, CFS шедулер
📌 различные сценарии с использованием resources requests/limits
📌 CPUs best-practices
👀 tl;dr by Tim Hockin:
1. Always set memory limit == request 2)
2. Never set CPU limit
Kubernetes resources under the hood — Part 1
Kubernetes resources under the hood — Part 2
Kubernetes resources under the hood — Part 3
#kubernetes
Отличный обзорный цикл статей про работу с ресурсами в Kubernetes. Рассматриваются следующие аспекты:
📌 виды ресурсов
📌 QoS для подов
📌 особенности работы с CPU в Linux, CFS шедулер
📌 различные сценарии с использованием resources requests/limits
📌 CPUs best-practices
👀 tl;dr by Tim Hockin:
1. Always set memory limit == request 2)
2. Never set CPU limit
Kubernetes resources under the hood — Part 1
Kubernetes resources under the hood — Part 2
Kubernetes resources under the hood — Part 3
#kubernetes
Tim Hockin недавно поделился диаграммами, которые описывают флоу работы различных проб в Kubernetes.
Как всегда подробнее про пробы можно прочитать в официальной документации Kubernetes и также рекомендую ознакомиться с жизненным циклом пода.
Также по теме жизненного цикла пода есть отличные детальные статьи:
📌 What happens when ... Kubernetes edition!
📌 Kubernetes Pod Lifecycle
📌 What Happens When Deleting a Pod
#kubernetes
Как всегда подробнее про пробы можно прочитать в официальной документации Kubernetes и также рекомендую ознакомиться с жизненным циклом пода.
Также по теме жизненного цикла пода есть отличные детальные статьи:
📌 What happens when ... Kubernetes edition!
📌 Kubernetes Pod Lifecycle
📌 What Happens When Deleting a Pod
#kubernetes
Twitter
I am a visual-thinker, so I really appreciate diagrams. I spent a bit of time thinking about pod probes in Kubernetes and drew it up.
https://t.co/PBQljimyiX
https://t.co/PBQljimyiX
What David Flanagan Learned Fixing Kubernetes Clusters
Отличная статья про то, как ломались и чинились куб кластера на ютуб канале Дэвида (рекомендую подписаться, если нравится смотреть технический контент).
- классическая история про корявый символ “c”
- интересный случай, в котором убрали бит выполнения с различных бинарников Kubernetes и не только
- ну и куда без сетевых проблем 🤡
Полное интервью
#kubernetes
Отличная статья про то, как ломались и чинились куб кластера на ютуб канале Дэвида (рекомендую подписаться, если нравится смотреть технический контент).
- классическая история про корявый символ “c”
- интересный случай, в котором убрали бит выполнения с различных бинарников Kubernetes и не только
- ну и куда без сетевых проблем 🤡
Полное интервью
#kubernetes