Mikhail [azalio]
Ок, попробую так. Возможно просто делит одного пода поможет
Maksim
если удалит один под, только удалённый под и запустится на одной из новых нод
Maksim
старые останутся на своих местах
Mikhail [azalio]
Ну да, но хотелось удобств :)
Maksim
ну нет livemigration механизма для контейнеров в принцепе
Maksim
так что мигрировать под может только через свою смерть
Maksim
Логично что Кубер не должен убивать Под просто потому что
Oleg
Можно кластер на одну железку поставить?
Maksim
а какой же это тогда кластер?)
Oleg
Куберовый
Maksim
мм нет)
Maksim
ну всякие там мастер компоненты и кубелет запустить на одной машине можно
Vik
Всем Дратути.
Гоняет ли тут кто кафку пол кубером?
Vik
Витя Гамов, подкаст Разбор Полетов, SA в Confluent
Maksim
Oleg
супер, спс
Anonymous
https://techcrunch.com/2017/10/17/docker-gives-into-invevitable-and-offers-native-kubernetes-support/?ncid=rss
Logan
Logan
как минимум в нем нет такого впечатляющего количества глюков. Судя по историям тех, кто внедрил докер в прод – попытка обновления докера напоминает ремонт самолета в полете. Одно починил – другое отвалилось
Logan
как там оверлей2, тар починили в нем?
Anonymous
Oleg
поставил через kubespray кластер на одну железку. Это нормально что ядра что-то молотят по дефолту?
Oleg
bebebe
ну после плейбуки еще некоторое время требуется на шедулинг и запуск подов
Oleg
по-ходу это нормальное состояние
Oleg
не, не нормальное. проблема с днс была
Oleg
Oleg
вот нормальное
G72K
G72K
Ivan
а расскажите мне пожалуйста в двух словах такую вещь...
вот я хочу запилить мастер-компоненты кубернета в сам кубернет, чтобы при падении ноды, на которой они находились, они сами средствами кубера поднялись на другой ноде.
но, я так подозреваю, что если упадёт нода с апи-сервером, то некому будет дать команду на деплой самого апи-сервера на другой ноде...
я правильно понимаю?
Anonymous
Правильно
Владимир
А на свежей установке:
Владимир
kubectl describe storageclass default
Error from server (NotFound): storageclasses.storage.k8s.io "default" not found
это нормально?
Anonymous
Anonymous
Без него сервисы будут работать
Anonymous
держи https://kubernetes.io/docs/admin/high-availability/
Ivan
Спасибо!
Volodymyr
Anton
можно еще net.ipv4.ip_local_port_range увеличить. но может на keepalive переходить?
Nomadic
Есть php сервис, для нормальной работы которого нужен хорошо разогретый memcache который крутится в том же поде.
Надо перед тем как пускать на него трафик запустить php-скрипт который заполнит кеш, а потом уже отвечать на запросы
Как это лучше в кубере сделать? initContainer не подходит так как мемкеш еще не будет запущен, отдельный контейнер в поде для разогрева кеша как по мне уже слишком, да и не нужен он после разогрева...
Magistr
Nomadic
и как ее запускать при каждом старте контейнера? и не обязательно при деплое
Magistr
Nomadic
я и думал readinessProbe повесить на приложение которое отдаст 200 как только мемкеш будет запущен
вопрос как инициировать запуск срипта отдельно от приложения
Magistr
супервизором ?
Nomadic
не dockerway-но 😀
Etki
сделать entrypoint, который сначала запустит скрипт, а по его выходу запустит само приложение?
Nomadic
Etki
разве?
Nomadic
кроме того надо отслеживать сигналы, корректно завершать дочерние процессы...
Etki
exec просто в конце скрипта и всё
Etki
он вытеснит текущий процесс тем, что ему будет передано
Oleksandr
https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
Oleksandr
прогревай экзеком
Etki
насколько помню, официальные образы sql бд так и работают, сначала инициализируют окружение, потом через exec запускают сам процесс
Nomadic
прогревай экзеком
так проба запускается периодически, а прогрев может быть до нескольких минут
Anton
в прогреве можно сделать проверку, грелось уже или нет =))
Etki
если честно, не вижу большой разницы из-за временных рамок
Etki
порядок действий должен остаться тем же
Nomadic
Oleksandr
та хоть файл-флажок и проверка башем
Nomadic
я надеялся на что у кубера есть какието дополнительные возможности, но придется таки костыли скриптовать 😔
Anton
job же предложен был
Anton
а probe пускай опирается на прогретость кэша
Nomadic
а readinessProbe после удачной отработки еще запускается периодически?
Oleksandr
The kubelet uses readiness probes to know when a Container is ready to start accepting traffic. A Pod is considered ready when all of its Containers are ready. One use of this signal is to control which Pods are used as backends for Services. When a Pod is not ready, it is removed from Service load balancers.
Oleksandr
насколько понимаю готовность для того чтобы трафик на него пустить а живучесть для того чтобы принять решение что с ним делать если не отвечает
Nomadic
это понятно, по доке не ясно проверяется ли готовность все время или достаточно одного удачного срабатывания?
Роман
Я хочу, чтобы поды взаимодействовали по внутренней сети, через физический свитч, а не через интернет. В старой версии kubespray (где calico и flannel ставились отдельным докер-контейнером) я правил темплейт systemd-юнита плагина, где указывал IP сети, поверх которой будет работать плагин.
Теперь calico/flannel ставятся, как Daemonset. Внутреннюю сеть не указать...
Создал ишшью: https://github.com/kubernetes-incubator/kubespray/issues/1741
Но там сделали изменение в темплейте kubelet. Типа ему указать ip адрес. Но kubespray при деплое падает с ошибкой, что не может получить ответ от etcd. Как бы это и понятно - я же ему адрес внутренней сети указываю, у которой нет доступа в интернет...
Вот теперь я начинаю сомневаться: это я что-то не правильно делаю, или я хочу непонятного? Как мне пустить весь трафик через внутреннюю сеть и сделать доступными поды извне, где hostNetwork: true?
Etki
Nomadic
ну а если приложение в процессе своей работы временно не может принимать трафик изза проблем с БД например?
Etki
за это отвечает liveness probe, которая должна кильнуть под
Etki
но если это именно проблемы с БД, то приложение должно проходить liveness probe, потому что это не его проблемы