Andor
24.10.2018
07:25:24
появилась странная идея, а можно ли кубелет садить отдельно от докеров на другом хосте например?
очень теоретически
например у меня есть арм-железки с 256мб памяти, кубелет может жрать половину этой памяти просто чтобы запуститься
kvaps
24.10.2018
07:26:03
а что вместо докеров? - или зачем вообще это?
Google
kvaps
24.10.2018
07:26:10
а
Andor
24.10.2018
07:26:20
ну это у меня теоретический интерес, как можно на малом объёме памяти жить
пришла в голову идея например докеры по tcp-сокету юзать
хотя докер-демон тоже память ест конечно
kvaps
24.10.2018
07:27:25
ну kubelet с докером через сокет общается - с этим проблем не должно быть
Andor
24.10.2018
07:27:49
это да
kvaps
24.10.2018
07:28:11
и не юзать докер
Andor
24.10.2018
07:28:16
особый шик - запустить кубелет на x86, а докеры на arm :D
ну вот если не юзать докер, а cri-containerd, то как оно будет?
kvaps
24.10.2018
07:28:39
а какой-нибудь runtime полегче
кстати kubelet еще о системе информацию какую-то собирает
Andor
24.10.2018
07:29:07
вот да
повторюсь: интерес скорее теоретический
Google
kvaps
24.10.2018
07:29:26
но это все мелочи, я думаю
Andor
24.10.2018
07:29:45
думаю это можно как-то обработать или захакать
kvaps
24.10.2018
07:30:02
кстати не, не выйдет
Andor
24.10.2018
07:30:06
у меня есть домашняя х86 железка и куча мелких arm-железок
kvaps
24.10.2018
07:30:10
как же mounts ?
Andor
24.10.2018
07:30:20
а они делаются самим кубелетом?
kvaps
24.10.2018
07:30:33
attach/detach - кубелет этим занимается
Andor
24.10.2018
07:30:34
хммм
опять же можно наверное захакать чтобы маунты были например в инит-контейнерах? :)
но предположим что у меня без маунтов
а, блин
конфигмапы это же тоже маунты
kvaps
24.10.2018
07:32:12
перед запуском пода кубелет подгатавливает пространство для пода (создает папочку и маунтит в нее все волюмы) потом запускает контейнер с этими щарами
+ cni тот же
Andor
24.10.2018
07:32:52
ну вот типа если без конфигмапов, чисто на ENV и сети, то может взлететь кажется
хотя в поды же по-умолчанию прокидываются токены куберовские
но вроде это можно отключить
короче интересный вопрос! :)
kvaps
24.10.2018
07:33:53
не факт, контейнер скорее всего не взлетит если kubelet не подготовит почву для него
ну и от cni придется отказаться
Google
Andor
24.10.2018
07:34:49
ну в простейшем случае кубелет просто запускает контейнер точно так же как ты бы запустил например docker run blabla
если все волюмы отключить
kvaps
24.10.2018
07:36:08
если бы стояла такая задача, я бы запускал контейнеры с ssh-клиентом внутри, которые ходили бы на твои arm-железки и запускали какой-нибудь бинарник там :)
Andor
24.10.2018
07:36:36
а волюмы, теоретически, можно создавать запуская кубелетом специальный привелигированный контейнер на хосте
то есть реально не имея доступа к хосту кроме сокета докера/cri
kvaps
24.10.2018
07:37:01
логи через stdout + не расходуется память на docker/kubelet на железке
Andor
24.10.2018
07:37:05
bebebe
24.10.2018
07:37:10
kvaps
24.10.2018
07:37:23
задача есть - теоретическая :)
bebebe
24.10.2018
07:37:53
kvaps
24.10.2018
07:38:36
mosh - во
Andor
24.10.2018
07:39:16
не ну так же неинтересно!
так можно и без кубера решить вопрос
kvaps
24.10.2018
07:41:12
Andor
24.10.2018
07:41:45
конечно костыль
зато нативный!
kvaps
24.10.2018
07:42:10
если гошный бинарь запускать - то вообще норм вариант
Andor
24.10.2018
07:43:44
но он же опять будет всегда жрать памяти и мы возвращаемся к той же проблеме
kvaps
24.10.2018
07:44:00
@Andorka а паппет агент много ram отжирает?
Google
Andor
24.10.2018
07:44:13
крон мало
не знаю, я не мерял, сколько папет агент жрёт памяти, потому что он запускается кроном раз в 30 минут
он не висит демоном
bebebe
24.10.2018
07:45:06
Вас забанят
Andor
24.10.2018
07:45:36
Вас забанят
да ладно тебе, клёвая же тема для потрахаться с кубером :)
kvaps
24.10.2018
07:47:25
кстати еще вариант придумал средиректить rootfs с железки со всеми там /proc /sys и т.д. на хост с кубелетами и запустить kubelet в чруте
хз как оно работать будет, и заведется ли вообще :)
Andor
24.10.2018
07:48:02
а ты хорош!
теоретически
кубелеты можно в контейнерах пускать
а? а? как вам идейка?
bebebe
24.10.2018
07:49:54
Боян жи
Eugene
24.10.2018
07:49:55
Не одобряю
Andor
24.10.2018
07:49:58
но это не dind будет
kvaps
24.10.2018
07:50:11
а в контейнер фс маунтить с железок
Andor
24.10.2018
07:50:22
ну вот вам кейс: у меня есть одна х86 железка и куча мелких дохлых армов
и если кубелет научить работать с cri удалённо, то кто мешает запустить эти кубелеты внутри контейнеров на x86?
kvaps
24.10.2018
07:51:21
кстати sni опять не взлетит, т.к. вся конфигурация сети через системные вызовы в ядре осуществляется
Andor
24.10.2018
07:51:38
допустим я сделаю статик роуты
или ваще л2
Google
Andor
24.10.2018
07:51:50
ну то есть это ограничение можно обойти
достаточно безумная идея чтобы попробовать?
Vadim
24.10.2018
07:53:29
Andor
24.10.2018
07:53:53
Vadim
24.10.2018
07:54:06
Это утреннее обсуждение вообще легально?
Andor
24.10.2018
07:54:19
пока нет :)
давайте ещё проблем которые могут возникнуть накидайте
Vadim
24.10.2018
07:55:26
Кроме того что ты обманываешь аписерсер и получаешь ерунду в метриках cadvisor'а?
Andor
24.10.2018
07:55:40
а почему ерунду?
он же тоже по сокету общается
или нет?
блин
сложна
чота я думал что он по сокету общается, а теперь уже не уверен
kvaps
24.10.2018
07:57:38
если очень хочется, еще вариант swap-раздел через nbd
Andor
24.10.2018
07:57:59
кубелет же будет ругаться на своп
а при чём тут своп? чота не въехал
kvaps
24.10.2018
07:58:20
ну его отучить одной опцией можно
Vadim
24.10.2018
07:58:52
Тогда своп будет юзаться не только кубелетом
kvaps
24.10.2018
07:59:16
Andor
24.10.2018
07:59:29
не, это не пляски вокруг кубернетиса уже будут