Dmytro
много таких, даже сам istio для kiali https://github.com/istio/istio/blob/1.1.3/install/kubernetes/helm/istio/charts/kiali/templates/ingress.yaml
ну kiali это веб морда для админа, врядли нужно её гонять через сервис меш. А в других чартах может также?
Serg
какая связь с кубернетесом?
Кубернетес требует чтобы он был разный
Serg
меняйте его провиженом , в том же терраформе
Ок спасибо за наводку. Примерно не подскажете в каком месте доки это есть?
Dmytro
это как пример. Другие чарты - графана, прометеус и пр
но это же все тоже не так чтобы нужно гонять в меш и мониторить
Kirill
но это же все тоже не так чтобы нужно гонять в меш и мониторить
но если эти сервисы захотят (например тот же прометеус для считывания метрик) общаться с компонентами в меше
Dmytro
в случае прометеуса - с истио идет прометеус и можно внешний прометеус настроить забирать метрики из встроенного в истио
Dmytro
для других сервисов не знаю но интересно было бы узнать реальный пример когда что-то вне сервис меша продеплоено должно быть но ходить внутрь
Артур
всем привет. ПОдскажите кто то может сталкивался при деплое через тераформ кубера * kubernetes_pod.nginx: Post https://——/api/v1/namespaces/default/pods: x509: certificate signed by unknown authority Я понимаю что ошибка сертификатов. ток каких где их найти или куда пихать
J
всем привет. подскажие как удалить challenges
J
делаю kubectl delete challenges name.com но он не удаляетс
Alexey
Господа, может кто-то подсказать, как корректно посчитать использование памяти всеми подами на ноде, используя prometheus? Пробую так sum(container_memory_working_set_bytes{kubernetes_io_hostname=~"$Node", pod_name!=""}), на выходе результат сильно больше реальной утилизации памяти
Dmitry
если они шарят одну и ту же страницу памяти то как твой расчет будет работать?
Andrey
У тебя не шарится ничего, разные файлы/айноды в разных контейнерах, ядро не будет их шарить.
Alexey
container_memory_usage_bytes
Пробовал. В таком случае для некоторых нод результат получается больше, чем machine_memory_bytes
Отделение Bereke Bank
Ну ХЗ у меня container_memory_usage_bytes сходится с разностью всей памяти и свободной памати (из заббикса) 🤔
Andrey
если они шарят одну и ту же страницу памяти то как твой расчет будет работать?
Беру свои слова назад, в некоторых случаях overlayfs действительно может шарить страницы. Естественно, подробной документации, кроме C, нигде нет.
Dmytro
а разве страницы не шарятся между контейнерами в одном поде?
Dmytro
хмм почему? linux namespace же общий
Andrey
хмм почему? linux namespace же общий
И как это мапится на виртуальную память в ядре?
Andrey
хмм почему? linux namespace же общий
mount namespace разный, network шарится только. И вообще это про другое.
Andrey
Надо потестить, интересную тему подняли. Видимо, действительно, шарится при обращении к одинаковым файлам внизу overlayfs/AUFS.
Mikhail [azalio]
я видел что вышла книжка про апи кубера для разрабов, но не могу найти ее, не помнит кто-нибудь как она называется?
ebalashov
Всем привет, кто может подсказать, как ведут себя init контейнеры, получится в init контейнере выкачать репу и скопировать ее часть в контейнер с приложением если у меня в volumes mount будет указан один и тот же том в init и контейнере с приложением?
Andrey
И с правами проверь, что всё в порядке.
Dmytro
https://github.com/kubernetes/kubernetes/issues/43916#issuecomment-393228487
Dmytro
вот тут интересно расписано, ещё читаю но насколько я понимаю - кеш ядра шарится на все поды?
Andrey
Что такое "кэш ядра"? Их много.
Etki
сигруппы не делят пейдж кэш
Andrey
сигруппы не делят пейдж кэш
Т.е. даже, если overlayfs какой-нибудь поддерживает чтение одного и того же файла и шаринг их страниц, то когда memcg их аккаунтит, то аккаунтить будет в несколько контейнеров несколько раз, верно?
Etki
лучше все-таки на сорс сошлюсь, нежели утверждать https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt
Etki
но вообще это был бы прямой путь к timing attack
Andrey
лучше все-таки на сорс сошлюсь, нежели утверждать https://www.kernel.org/doc/Documentation/cgroup-v1/memory.txt
Shared pages are accounted on the basis of the first touch approach. The cgroup that first touches a page is accounted for the page. The principle behind this approach is that a cgroup that aggressively uses a shared page will eventually get charged for it (once it is uncharged from the cgroup that brought it in -- this will happen on memory pressure). ХМММММММММММММММ
Etki
# per-memory cgroup local status cache - # of bytes of page cache memory.
Dmytro
https://github.com/torvalds/linux/blob/v4.9/Documentation/cgroup-v1/memory.txt#L528-L530
Etki
я их не понимаю короче
Dmytro
говорят могут
Etki
буду фронтендом
Dmytro
> file and shmem may be shared among other cgroups. In that case, file_mapped is accounted only when the memory cgroup is owner of page cache.
Dmytro
буду фронтендом
эт точно 🙂
Andrey
Вооот, вот это всё раскрывает в аккаунтинге.
Etki
may
Andrey
А одинаковый файл на нижнем слое overlayfs или какой-то пошаренный mount даст как раз эти шаренные страницы, но заккаунтяться они только к одной cgroup.
Dmytro
да, и если два пода маунтят с хоста что-то то выходит тоже, например несколько реплик пода с локальным вольюмом где какой-то кеш. У меня такое было с ML приложением которое кешировали в локальном вольюме много гигабайтов моделей из S3, вот по идее если это модели просто mmap'ом в память загружаются то страницы памяти этих файлов ещё и шарятся между подами?
Dmytro
жалко уже не смогу проверить
Alexander
сегодня столкнулся с такой штукой. Есть пароль от БД в секрете. Используется несколькими приложениями. Пароль поменялся, секрет обновил напрямую, не через apply на всю папку с проектом. А приложения естественно не перезапустились. Пришлось килять поды по одному. Отсюда вопрос - а как эту ситуацию разрулить правильно?
Dmytro
helm аннотация либо одна из тулзов что делает то же самое - перезапускает под при смене секрета/конфигмапа
Oper
Ребят помогите плз: запускаю приложуху написанную на пхп в одной поде (дуплоймент), в другой запускаю базу для нее(стейтфулсет), в третьей - ингресс (демонсет). Для каждой поды создаю сервис. Из приложухи обращаюсь в базу по имени сервиса и все отрабатывает, но если из нгинкса (ингресс контроллер выбрал нгинкс) обращаюсь по имени сервиса к приложухе то коннект не доходит. В логах нгинкса идет обращение по ip сервиса, но логи пхп пустые (ip:port верные судя по логам, но ip сервиса и ip поды естественно отличаются). Может подскажите куда копать где может быть косяк?
Dmytro
так перед пхпфмп нужен ещё один нжинкс
Dmytro
ингресс нжинкс не должен по fastcgi ходить в приложение
Alex
я видел что вышла книжка про апи кубера для разрабов, но не могу найти ее, не помнит кто-нибудь как она называется?
Я бы не стал полагаться на книжки сегодня. Особенно для таких быстроразвивающихся продуктов как k8s
Alex
так перед пхпфмп нужен ещё один нжинкс
Верно. Нгинх статику отдаёт, а пхп-фпм - скрипты
Mikhail [azalio]
https://www.oreilly.com/library/view/mastering-kubernetes/9781786461001/ch12s02.html ?
не, она вышла в early release и буквально в апреле
Mikhail [azalio]
или марте
Alex
ПХП - адовое, унылое говно.
Dmytro
Andor
как будто кто-то спорит
Andor
хуже пхп только жаваскрипт
Andor
но и то можно спорить кто из них хуже
Etki
тащите !говно стикерпак
Andor
Andor
этот?
Dmytro
а если серьезно, не согласен с обоими
Etki
Я бы не стал полагаться на книжки сегодня. Особенно для таких быстроразвивающихся продуктов как k8s
@ делают специальную систему апи, чтобы явно помечать стабильные вещи, продуманную систему релизов @ ой знаете в наш век всё так быстро развивается...
Etki
Dmytro
для многих задач пхп вполне норм язык по соотношению цена разработчки/качество