@kubernetes_ru

Страница 753 из 958
kvaps
10.08.2018
13:45:57
да, все так

kvaps
10.08.2018
13:49:28
кстати softdog - вполне годный метод основанный на таймаутах, к тому же не требующий внешних fencing-агентов, вот его и можно было бы запилить в сам куб

Google
kvaps
10.08.2018
13:57:08
Типа запилить следующий функционал прямо в kubelet: - после каждого успешного общения с мастером выполнять что-то типа echo 1 > /dev/watchdog - а в случае неудачи, нода ребутнется сама по таймауту - кубернетес мастер знает про этот таймаут и если нода NotReady больше чем определенное время, значит она гарантированно мертва и ее ресурсы можно решедулить

вот правда будет весело если умрет мастер :)

так что, полагаю, что внешний fencing в любом случае будет работать лучше, а для реализации этого нужно дергать различные fencing-агенты, т.к. оборудование у всех разное, и куб не обязан это все поддерживать

kvaps
10.08.2018
14:05:49
вот и я говорю

хотя можно было бы придумать какой-нибудь fencing api

Andor
10.08.2018
14:06:12
Опять пейсмейкер?

kvaps
10.08.2018
14:06:40
да ну не

Andor
10.08.2018
14:06:46
:)

kvaps
10.08.2018
14:07:44
просто нужна еще одна абстракция для куба, как provisioner только для fencing

Я запутался. Зачем ребутать ноду? Что бы unmount прошел?
ну смотри, допустим у тебя есть stateful сервис, он имеет один под к которому подключен какой-нибудь iscsi волум

Что по твоему должно произойти если ты просто остановишь kubelet на ноде где он выполняется?

Google
kvaps
10.08.2018
14:31:01
Ну да, более того, он продолжит выполняться на ноде, при этом куб не знает выполняется он или нет. Если такой под просто удалить из API, куб его пересоздаст на другой ноде, подключит и смаунтит тот же iscsi-volume, при этом в лучшем случае под не заведется, в худшем заведется и ты получишь поврежденную фс на волуме. Так как она смонтирована на нескольких физически разных нодах.

есть же механизм нотификации живости, таймауты настраиваются. systemd можно попросить живость kubelet проверять, зачем рестартить ноду то.
ок, другой кейс, что если у вас пропал коннект со стораджем на ноде которая выполняет под, приложение зависло на какой-то конкретной i/o-операции и не отвечает, любые проверки говорят что приложение не работает

допустим куб перезапускает такой под на другой ноде, при этом не до конца убедившись что старый однозначно мертв. а через какое-то время восстанавливется подключение к стораджу на прежней ноде, i/o продолжается исход такой-же: поврежденная фс и даннные на ней

kvaps
10.08.2018
14:45:18
ну есть еще вариант отрезать ноду от стораджа, но это работет немного хуже, т.к. оставляет ноду в непонятном состоянии

mio
10.08.2018
14:45:54
Как считаете, Kubernetes как гипервизор на kvm это бред или рацианальное зерно в этом есть?

kvaps
10.08.2018
14:46:21
я деплою opennebula с помощью куба

Михаил
10.08.2018
14:46:40
kubevirt.io
Сырая альфа

И больше похоже на refrence архитектуру для своего проекта)

kvaps
10.08.2018
14:51:59
Ну или не использовать stateful в кубе)
на самом деле все отлично работает когда все pv локальные, и не должны переезжать если нода упадет. а каждое stateful-приложение имеет несколько инстансов и redundancy на уровне приложения

по сути любая база данных с поддержкой репликации

kvaps
10.08.2018
14:55:25
сейчас local volumes изобрели спецом для этого

но я не вижу особой разницы с hostpath, тем более что nodeAffinity прекрассно работает и для тех и для других волумов

Google
Михаил
10.08.2018
16:09:02
по сути любая база данных с поддержкой репликации
Вообще есть кейс: микросервис с mysql, и тащить ту же галеру вот вообще не хочется

Кейс: маленькая бд

кстати

https://github.com/rancher/longhorn

кто-то юзал?

Konstantin
10.08.2018
16:50:20
А он разве не рип?

Михаил
10.08.2018
16:50:34
да вроде не

kvaps
10.08.2018
16:54:22
https://github.com/rancher/longhorn
Вроде OpenEBS это форк лонгхорна, частично или полностью

Михаил
10.08.2018
16:54:51
kvaps
10.08.2018
16:55:04
И его логичное продолжение

Vadim
10.08.2018
16:55:37
я сырцов то лонхорна не нашел
https://github.com/rancher/longhorn#source-code

kvaps
10.08.2018
16:55:45
Но я бы больше в сторону Linstor посмотрел бы ес честно

kvaps
10.08.2018
16:57:43
Потому что использует меньше компонентов которые могут сломаться,

+ я сейчас активно использую drbd и доволен им как слон

Кстати ISTGT который они используют ваще бомба!

Andor
10.08.2018
17:05:15
linstor это ж drbd?

kvaps
10.08.2018
17:05:40
Andor
10.08.2018
17:06:16
уж лучше с сефом потрахаться

Google
kvaps
10.08.2018
17:06:17
Оркестратор

уж лучше с сефом потрахаться
Зависит от конкретных задач, цеф под хайлоад ваще не вариант

Михаил
10.08.2018
17:08:04
Anton
10.08.2018
17:26:56
kvaps
10.08.2018
17:28:30
Оно и правильно, имхо: если приложение умеет ha и репликацию своими силами, это всегда лучше чем кластерная фс

Andor
10.08.2018
17:30:25
да фс-то обычно и не нужна, нужен обжект-сторейж

если тебе нужна именно фс размерами в десятки-сотни терабайт, то у тебя что-то скорее всего не так

Anton
10.08.2018
17:35:49
Не сотни тб, но под mq, redis, mysql сторейдж нужен быстрый, легко пару тб набирается

Под их реплики)

Потом под хотя бы временное хранение их бэкапов

Andor
10.08.2018
17:38:27
ну бекапы-то не в фс лежат

Anton
10.08.2018
18:24:53
Я пока что напрямую в s3 только elasticsearch умею бэкапить. Остальным промежуточное хранение требуется

Twelfth
10.08.2018
19:04:16
Странно. Flannel падает с ошибкой failed to open log file "/var/log/pods/7e46c997-9ccf-11e8-9b99-02422aed3022/kube-flannel/3.log": open /var/log/pods/7e46c997-9ccf-11e8-9b99-02422aed3022/kube-flannel/3.log: no such file

И прокси-контейнер: failed to open log file "/var/log/pods/5630a7f0-9ccf-11e8-9b99-02422aed3022/kube-proxy/6.log": open /var/log/pods/5630a7f0-9ccf-11e8-9b99-02422aed3022/kube-proxy/6.log: no such file or directory

Состояние - CrashLoopBackOff

Sergey
10.08.2018
19:06:36
describe че грит

Twelfth
10.08.2018
19:09:14
Уже разобрался

tora
10.08.2018
19:10:34
Разобрался сам - расскажи другому :з

Twelfth
10.08.2018
19:10:38
Error response from daemon: linux runtime spec devices: lstat /dev/.lxc/proc/2841/fdinfo/44: no such file or directory

Но не до конца - опять какая-то фигня в конфигурации lxc контейнера

Google
Denis
10.08.2018
19:28:18
https://www.meetup.com/Moscow-Kubernetes-Meetup/events/253451195/ Когда: четверг, 9 августа 2018, 19:30 - 22:15 Где: Москва, Ленинградский проспект 39, стр. 79 (офис Mail.Ru Group) Друзья, жаркое лето в Москве ещё больше подогревает интерес к Kubernetes со стороны русскоговорящего сообщества. Прошёл всего месяц с момента предыдущего митапа, наш Telegram-чат-канал про Kubernetes ( https://t.me/kubernetes_ru ) уже вырос почти до 2000 человек, а вместе с ним продолжают расширяться и области применения Kubernetes, как и масштаб проблем, которые успешно решаются с его помощью. Облака спускаются на землю в следующий четверг, ведь мы снова встречаемся и на этот раз мы будем делать это вместе с Mail.Ru Group! ПРОГРАММА: 19:30 - 19:50 Socializing, встречаемся, общаемся, shake it! 19:50 - 20:05 Welcome & digest (Денис Измайлов, Axept) 20:05 - 20:45 Подводные камни при production-эксплуатации Kubernetes (Дмитрий Лазаренко, Mail.Ru Cloud Solutions, менеджер продукта) Изначально Kubernetes был спроектирован для работы stateless-приложений. Однако сейчас все больше и больше компаний пытаются размещать в нем stateful-сервисы, требующие надежного хранения. Помогая клиентам Mail.Ru Cloud Kubernetes, мы обнаружили много неочевидных особенностей, прежде всего связанных с persistent-хранением данных и поведением Kubernetes при выходе из строя оборудования. Как Persistent Volumes работают в штатных и нештатных ситуациях? Например, если вы выключите ноду или она аварийно остановится (падение хоста, гипервизора или Kubelet)? Какие проблемы бывают при эксплуатации RWX PVС? Как правильно дружить с облачным балансировщиком нагрузки? Всё это Дмитрий раскроет в своем докладе для вас. Био: Дмитрий Лазаренко возглавляет PaaS-направление Mail.Ru Cloud Solutions, включая контейнерные решения на базе Kubernetes. До Mail.Ru Group в течение 6 лет отвечал за разработку и развитие контейнерной PaaS-платформы Jelastic. Более 10 лет занимается созданием высоконагруженных сервисов. 20:45 - 21:15 История разработки Production-ready сборки Kubernetes (Константин Феофантов, Exon Lab, CTO) Доклад основывается на истории разработки [предположительно] первого в России Docker-хостинга. Константин расскажет про опыт с Kubernetes и проблемы, с которыми он с командой столкнулся в ходе разработки и эксплуатации. В докладе обосновывается выбор компонентов и плагинов Kubernetes при создании собственного production-ready кластера, а также варианты развертывания Kubernetes и рекомендации по ним. Био: Константин программирует с 2012 года, писал на C, затем на C#. Потом начал изучать веб-разработку (Node.js, HTML5, SaSS) и вот уже в 2015 году перевел всё на Golang. В 2017 стал техническим директором, основал проект Containerum и основательно занялся изучением Kubernetes. 21:15 - 21:35 Кофе-брейк, чай-пати, горячие дискуссии 21:35 - 22:15 Turing Pi – кластерный компьютер на базе Kubernetes для граничных вычислений и интернета вещей (Константин Шмойлов-Александров, Jelastic, сооснователь) Рынок IoT бурно развивается, но в основном он наполнен крайне простыми устройствами с ограниченным диапазоном применения. Мы создали компактное кластерное устройство с Kubernetes и Docker на борту, воплощающее идею вычислительного узла IoT-сети нового типа. В нем сочетается множество разнотипных одноплатных компьютеров, соединенных сетью в рамках единой материнской платы. Этот кластер предназначен для граничных вычислений: в частности, для размещения приложений машинного обучения не в облаке, а локально – в месте, где необходимо собирать, хранить, анализировать данные и управлять окружающими устройствами. В докладе мы расскажем, что под капотом этого устройства и как контейнеры и Kubernetes могут эффективно работать не только на огромных серверах, но и на мини-устройствах.
Друзья, по стечению серьезных обстоятельств наш фотограф не смог добраться на митап в этот раз. Но как бы не так! Небольшой личный фотоотчёт опубликовал на своей личной странице в Facebook. Все получились счастливые и красивые. ? Находим там себя и отмечаемся: https://www.facebook.com/denis.izmaylov/posts/1275186792622794 Слайды будут опубликованы очень скоро, видеозаписи докладов будут опубликованы в течении пары недель.

Блин, да простит меня Дальний Восток и Сибирь

за пин с нотификацией ?

Vlad
10.08.2018
21:16:34
+ я сейчас активно использую drbd и доволен им как слон
Сколько реплик? Две? Тогда у меня плохие новости.

Andor
10.08.2018
21:18:05
drdb нынче умеет и больше

kvaps
10.08.2018
21:28:04
ага, а еще и поменялись принципы работы с ним, если раньше обычно делали одно статичиеское большое блочное устройство и работали с ним непосредственно как с тупо сетевым raid'ом. То сейчас взгляды разработчиков на это немного поменялись. Теперь можно создать большой кластер под хранение, и под каждый волум в нем будут создаваться отдельные маленькие drbd-ресурсы, каждый из таких можно снапшотить, менять количество реплик, релокейтить, ресайзить или подключать удаленно

kvaps
10.08.2018
22:03:11
https://www.linbit.com/en/products-and-services/linstor/

Pavel
10.08.2018
22:07:20
https://www.linbit.com/en/products-and-services/linstor/
А. Через flex, аналог лонгхорну /openEBS только сложный. Зачем тогда такое?

kvaps
10.08.2018
22:09:33
они обещают csi-драйвер в конце года

Pavel
10.08.2018
22:10:24
Как оно в использовании? Скорость репликации/обслуживания лучше ceph?

kvaps
10.08.2018
22:16:19
А. Через flex, аналог лонгхорну /openEBS только сложный. Зачем тогда такое?
ну в целом они похожи, да, но основное отличие: OpenEBS - работает целиком в userspace DRBD - работает целиком в kernelspace В обоих случаях есть свои плюсы и минусы, но каждый вибирает то что ему больше нравится в зависимости от конкретных задач опять же :)

оно далеко не такое гибкое как ceph, но по скорости и утилизации ресурсов я думаю ему нет равных

Страница 753 из 958