Andrey
error: cannot expose a {extensions DaemonSet} - кругом враги, походу ds нельзя заекспозить культуро :(
Anonymous
Пробую kubernetes+traefik.
При создании deployment+service+ingress вида whoami1
при доступе по PathPrefixStrip:/whoami1 не могу достучаться к сервису.
При создании доп реплик запросы приходят через раз.
При использовании имени вида whoami все норм.
Сталкивался кто-то с этим?
Maksim
Роман
Эх, а было бы круто. Как с сетью!
Nomadic
Роман
Роман
Nomadic
spec:
containers:
- image: образ:latest
name: php-fpm
command: ["/usr/sbin/php-fpm7.0"]
args: ["--nodaemonize", "--force-stderr"]
- image: образ:latest
name: nginx
command: ["/usr/sbin/nginx"]
args: ["-g", "daemon off;"]
Ivan
Nomadic
а смысл копировать статику при каждом создании пода если она и так лежит в едином образе?
Ivan
в случае со статикой нет смысла.
Nomadic
у меня статика и код в одной репе и довольно сильно перемешана чтоб разделять ее на разные образы
Vitalii
я для mediawiki делал образы для nginx и fpm с одинаковым кодом. Там php и статика вперемешку в исходниках (как и в большинстве легаси php приложений наверно)
Nomadic
два разных образа - это двойной набор одинаковых файлов, дольше грузится из реестра, больше места на диске занимает...
потому решил единым образом
Sergei
Sergei
никакого дублирования
Nomadic
Dmitry
Наконец это произошло! Мы нормально оформили свой проект на гитхабе, который пилили для себя внутри команды. https://github.com/smpio/kubernator
Dmitry
Кто то здесь уже интересовался, поэтому разрешите попиарить
Alexey
Вчера жаловался, что кубеспрей криво деплоит калику, на самом деле всё дело в провайдере, не разворачивайте кубернетес на диджитал оушене
Vitalii
Dmitry
Dmitry
при попытке сохранить манифест, который уже был изменен api server определяет конфликт. мы в этом случае показываем diff. там на гифках это показано
Vitalii
я скорее про историю изменений
Vitalii
у нас всё в репозитории например, и я очень ругаюсь если в кластер лазят руками через kubectl edit
Dmitry
тут такого нет. это скорее как альтернатива kubectl edit, а не helm
Dmitry
да, в этом плане у всех разный workflow
Dmitry
мне наоборот не удобно держать манифесты и тут и там, не забывать их применять и коммитить
Dmitry
а для сохранения истории делаю каждый день дамп
Dmitry
всех манифестов
Shamil
Ребятушки! У меня выше была проблема с k8s on OpenStack, и мне помогли её благополучно решить, хочу оставить подробную инструкцию, для потомков. Где лучше это сделать?
Vitalii
Shamil
Dmitry
Vitalii
Issue сделать?
Не знаю:) у них есть слак канал. Может это в доку стоит добавить
Shamil
Точно! Я ж в слаке уже есть у них! Спрошу там... Блин на англицком буду дольше писать )-: Ладно, заодно прогоню все еще раз — нет худа без добра.
Anatoliy
Ну могу понять что не так делаю, пробую создать SteatefulSets, вроде всё прописал, но claim не выходит. persistent volumes создается и остается свободным, ничего не линкуется(
Что у меня не так: https://pastebin.com/tV0bYipp ?
Anatoliy
В общем в итоге не там пытался прописать volumes. JSON судя по всему будет удобнее в этом плане...
Anatoliy
Блин, теперь другоая проблема( Эта зараза не хочет просто брать и создавать контейнер, и даже не понятно в чем дело(
Anton
describe поможет думаю
Anatoliy
Да с этим разобрался, я там с сетями намудрил
Anatoliy
Я вот сейчас думаю как бы мне динамическое хранилище сотворить....
bebebe
@Visteras давно бы уже расшарили свой env, всем миром бы помогли
Anatoliy
bebebe
издеваетесь да?)
нисколько, если у вас есть окружение в которое вы могли бы нас пригласить, думаю вы бы получили больше профита чем сейчас
bebebe
shellinabox или другой web terminal emulator
Anatoliy
Сейчас у меня есть два железных и чистых сервера только на которых я ставлю кубер в текущий момент) Хочу убедиться что все понял верно и проблем не будет)
Anatoliy
А так я хочу еще разобраться с тем что бы запускать glusterfs или ceph или нечто подобное для того что бы можно было дублировать данные
bebebe
у меня есть похожее окружение
железные нодыпровижинтся через MAAS, и туда накатывается k8s
все это обернуто в CI/CD чего и вам советую, для того чтобы цена передеплоя сводилась к минимуму
bebebe
это из разряда - долго запрягаешь - быстро едешь
bebebe
ceph не советую, большой входной порог
bebebe
glusters через heketi
Anatoliy
так я как раз и хочу сейчас разобраться как это с CI/CD подружить. Я хочу иметь возможность разворачивать этот кластер достаточно быстро, добавть к нему новые сервера в процессе его работы. Возможно выводить эти сервера. Плюс - еще хочу что бы часть данных между этими серверами дублировалась. Ну и деплой приложений в сам кластер само собой
Anatoliy
А так да, долго запрягать но быстро ехать. В итоге хочу свести к тому что для нового приложения мне достаточно просто создать репу и запушить в нее исходники
bebebe
да, примерно к этому и стремятся большинство местных обитателей
CI/CD интегрируется с MAAS'ом который готовит чистый baremetal ноды
разворачивать через kubespray
добавлять - то же через него, есть возможность LCM и scale
деплой приложения - helm chart
storage сначала сделать на glusterfs
Anatoliy
Хм.. не сталкивался с понятием MAAS
bebebe
так же советую разрабатывать или держать в уме CI/CD таким образом, что между baremetal провижинингом и например amazon'ом(gke/azure/etc) не было большой разницы
bebebe
bebebe
более-менее внятная штука, а главное с внятным api
Anatoliy
Стоп, глупый судя по всему вопрос, но зачем она вообще нужна?
Anatoliy
Если кубер сам создает этот кластер ?
bebebe
у вас есть N железных нод
на них были проведены некие работы, поставлена ОС, пакеты, развернут кубер
MAAS позволит развернуть на этих нодах чистую ОС что для возпроизведения результата
Anatoliy
Последнее предложение не понятно, зачем там чистая ОС если там кубер?
bebebe
когда вы получите готовый рабочий кубер, у вас появится задача повторить тот же результат, но например на другом железе, другом окружении?
Anatoliy
тот же - это какой? если там контейнеры? в контейнер при сборке все собирается и вот вам окружение
bebebe
кубер кто готовит?
bebebe
на котором эти котейнеры крутятся?
Anatoliy
В каком смысле готовит? Есть kubespray, оттуда оно должно разворачиваться вроде?
Anatoliy
Там же ansible который это разворачивание и делает
bebebe
все правильно, железные ноды для kubespray вы руками подгтотавливаете?
Anatoliy
ну да, а какие варианты вы предлагаете?
Anatoliy
поднимать их виртуально через maas? а смысл если каждая новая железная нода будет требовать тот самый maas?
Anatoliy
Эх... что-то всё же пошло не верно:
TASK [kubernetes-apps/cluster_roles : Create kube system namespace] *************************************************************************************************************************************************************************
Thursday 23 November 2017 23:40:55 +0300 (0:00:00.421) 0:02:20.005 *****
FAILED - RETRYING: Create kube system namespace (4 retries left).
FAILED - RETRYING: Create kube system namespace (3 retries left).
FAILED - RETRYING: Create kube system namespace (2 retries left).
FAILED - RETRYING: Create kube system namespace (1 retries left).
fatal: [node1]: FAILED! => {"attempts": 4, "changed": false, "cmd": "/usr/local/bin/kubectl create -f /etc/kubernetes/kube-system-ns.yml", "failed": true, "msg": "[Errno 2] No such file or directory", "rc": 2}
bebebe
maas позволит провижиить железые ноды с чистой ОС, и эти ноды можно скармливать kubespray
Anatoliy
Эм.. а в чем преимущество по сравнению со скармливанием ему простых серверов без maas?
bebebe
ничем