G72K
https://www.youtube.com/watch?v=obB2IvCv-K0&list=PLj6h78yzYM2PZf9eA7bhWnIh_mK1vyOfU - видео со свежего кубкона
Голый куб + envoy для всего + язык описания деплоев вместо голых yaml ресурсов. Все как у меня (envoy в планах), прям горд собой
Vadim
алсо, kiali классно визиализирует истио
G72K
там целый плейлист, к какому именно видео это?
Конкретное видео по ссылке, от Джулии еванс
Val
Привет чату. Есть вопрос по применению kubernetes в управлении контейнерами с инженерными вычислениями сейчас сформулирую ситуацию.
Val
Клиентам требуется просчитать модели. Создаются контейнеры, данные подгружаются из персистенса, выполняются вычисления (как мгновенные, так и на несколько часов времени). Результаты - в персистенс, контейнеры удаляются. Далее более сложные случаи: 1. Это же, но с использованием GPU. 2. Это же, но динамически заказывая ресурсы на стороннем облаке вместо своего кластера, чтобы работа не стопорилась в пиках. Вопрос: Что для этого в Kubernetes будет хорошо работать из коробки, для чего добавляются другие готовые тулзы, а что придётся делать мимо и велосипед ибо "иначе пока никак"?
Igor Ivanov
а почему именно контейнеры для этого надо использовать? в авс есть спотовые инсты, например. основа какая: облако или железки?
Val
Основа железки, облака для масштабирования и за другой прайс.
Vadim
интересно, что требуется от чата в воскресенье, SLA страниц на 200?
Val
Контейнеры - для удобства деплоя. Плюс менеджмент ресурсов при параллельном запуске задач, которые не могут на 100% занять машину.
Igor Ivanov
Контейнеры - для удобства деплоя. Плюс менеджмент ресурсов при параллельном запуске задач, которые не могут на 100% занять машину.
любое облако так же дает возможность удобства деплоя через API. вопрос в том что контейнеры изначально будут ограничены ресурсами самих железок и если вы планируете как описали в п.2 то лучше сразу в облаке на виртуалках - если русурсов трубется много, можно сделать много виртуалок, если мало то держать кластер кубера для этого не рационально
Val
Jupyter для других задач. Не для "подредактировать геометрию, а потом запустить на ней симуляцию на несколько часов".
Igor Ivanov
и кстати в облаках есть специальные инсты с gpu, или вы уже вставили в железки кубера nvidia grid? :-D
Val
Пока тяжёлых закупок для прода не было.
Val
С облаками, кстати, есть такой момент, что надо менеджить облачные ресурсы и синхронизировать биллинг облака со своим (т.к. стоимость рассчётов потом выставляется клиенту). Плюс, хочется избежать вендор-лока. И по статьям/выступлениям складывается такое впечатление, что эта тема не покрыта тулзами, и компании пишут свои велосипеды. Или что-то есть?
Vadim
вендорлоков скрытых, кстати, и так навалом
Val
Нельзя быстро уйти в облако к конкурентам, когда у них условия лучше.
Val
Ну и ситуация "мыши погрызли" (Амазону не грозит, а у мелких облачных провайдеров весьма вероятна).
Val
Самодостаточные. Взять из персистенса, рассчитать, сохранить в персистенс.
Никита
Ну и ситуация "мыши погрызли" (Амазону не грозит, а у мелких облачных провайдеров весьма вероятна).
Хз, по-моему, с облаком проще (возможно, дешевле). Для мгновенных - лямбды, для немгновенных - выпадающий список с типом инстанса и количеством. Клиент выбирает "десять p2.8xlarge", вы говорите "ок, 200 баксов в час" и поехали.
Val
Впрочем, есть ещё один тип - когда пользователь вживую работает с сеткой, тогда server side rendering и видеопоток ему на машину, это чуть хитрее.
Anonymous
Привет, есть два имиджа с EXPOSE 80, как их запустить внутри одного пода на разные порты?
Puma
А зачем на разные порты?
Puma
Все равно ингресом же будешь к нему обращаться
Anonymous
Имидж один на множество применений и трогать там EXPOSE лишний раз не хочется
George
Тебе в ямле можно описать на какие порты их биндить. Либо куб должен это автоматом определять
Anonymous
Это работает ровно до того момента когда несколько контейнеров хочешь затолкнуть в один под
Anonymous
В референсе есть containerPort и hostPort https://v1-10.docs.kubernetes.io/docs/reference/generated/kubernetes-api/v1.10/#containerport-v1-core
Anonymous
это то что нужно?
Igor Ivanov
Привет, есть два имиджа с EXPOSE 80, как их запустить внутри одного пода на разные порты?
expose это просто нотация для того кто будет юзать имедж, не более
Anonymous
или нужно просто другой containerPort прописать?
Igor Ivanov
куча людей делает контейнеры, и софт может работать не на стандартных портах, вот они и пишут что expose 8089 - типа когда будешь запускать сделай -p 80:8089 например
Anonymous
дык да, но как это выразить в описании пода?
Igor Ivanov
задача какая? чтобы наружу пустить через ingress?
Igor Ivanov
или внутри через service?
Anonymous
ингрессы и сервисы это другое
Anonymous
мне нужны сайдкары
Igor Ivanov
ну если два имеджа работатают на 80 порту как их запустить то в одном поде?
Igor Ivanov
никак
Anonymous
кажется начинаю понимать, это как если бы мы вызывали bind на одной машине
Anonymous
на один и тот же порт
Anonymous
то есть приложения надо заставить прицепиться на другой порт
Igor Ivanov
ну получается они запускаются и биндятся на 80, кто первый взял того и тапки, а второй уйдет в вечный рестарт
Anonymous
хм. занятно. оказывается все эти описания портов в ямлах ничего активно не делают, только помогают другим компонентам прицепиться к поду. спасибо, пойду дальше разбираться
Й
Омг
Roman
Друзья подскажите пожалуйста, у меня имеются крутые-дорогие хранилки они подключены к рхв гипервизорам, реально ли использовать виртуальный диск на хранилке в качестве волюма для куба? чтобы не городить поверх хранилочной отказоустойчивости еще и цеф
ℭ𝔞𝔯𝔯𝔬𝔩
Хотя подавляющее большинство хранилок, кмк, умеют в nfs и/или iscsi
ℭ𝔞𝔯𝔯𝔬𝔩
А там, хоть к хосту подключай, хоть инициируй для пода в PVC
ℭ𝔞𝔯𝔯𝔬𝔩
Как-то так, например: https://netapp.io/2016/06/08/netapp-persistent-storage-kubernetes-using-ontap-iscsi/
Roman
Спасибо за пищу!
G72K
Спасибо за пищу!
iSCSI только с 1.12 норм заработал
девопёс
Всем привет, есть ли возможность в кубере рестартовать/пересоздавать поды ко крону? CronJob-ы, как я понял, только команды умеют выполнять
Andrey
cronjob как раз контейнеры запускают
девопёс
Но он отрабатывает и умирает, а мне надо, чтобы под, который работает 12 часов, просто перезапустился
девопёс
типа того
Семён
reboot as a service
Rainbow
replicaset поднимает упавшие контейнеры. Запустите replicaset и все.
девопёс
Контейнер не падает сам, он штатно работает. Мне нужно его просто перезапустить
Rainbow
... зачем?
девопёс
черная магия
Andrey
Но он отрабатывает и умирает, а мне надо, чтобы под, который работает 12 часов, просто перезапустился
нет такой возможности в кубере, но можно сделать через cronjob и serviceaccount которому даны права на перезапуск
Rainbow
память жрать начинает?
Andrey
это как?
Rainbow
и liveness на него 😂
Andrey
хм. с периодом в 12 часов? :)