в k8s. С affinity понятно, а вот где применить taints и toleration, кроме мастер ноды не понял.
Или их нужно использовать вместе, чтобы точно быть уверенным, что нужные поды на нужной ноде?
Просто с позиции практического опыта.
например, если есть группа каких-то "мощных" нод, на которые не надо шедулить "обычные" поды, а только те, которые занимаются какими-то нагруженными тасками... или, например, "выделенные" ноды под какую-то цель (у меня, например, есть infra-ноды, на которых крутятся ElasticSearch, Graylog, Prometheus/Grafana и некоторые другие сервисы, которые не связаны напрямую с приложением, но нужны для целей мониторинга/логгинга) и я точно знаю, что никакой из подов приложений "случайно" туда не зашедулится, если разраб криво укажет affinity
Большое СПАСИБО! Т.е. у тебя на всех служебных подах добавлен toleration и если у тебя на служебных подах не будет хватать ресурсов эти поды зашедулятся на других нодах.
ага 😊 ну только там еще и affinity указаны так, чтобы "служебные" сервисы только на выделенных нодах тусили... так что если не будет хватать ресурсов, то там или autoscaler добавит ноду, или алерты налетят и надо будет смотреть, че там жрет столько 😊
Да как раз хотел еще это уточнить )
А на чем поднят k8s dedicated или cloud? Хочу себе поднять на одном сервере какую-то виртуализацию или Vmware или OpenStack, но не знаю на чем будет работать autoscaler для K8s. Наверное на single server без vmsphere работать autoscaler не будет.
Yandex.Cloud а на локалке kind, но autoscaler на локалке не пробовал 😊
Обсуждают сегодня