Mikhail [azalio]
Лунная призма дай мне сил.
Дмитрий
Хотя я же могу задать енвы следующим образом
Env
- name Prisma_config.databases.default
- value
Etki
😱
Дмитрий
bebebe
- name: name
value: value
Etki
Env: Env
Дмитрий
- name: name
value: value
Ну, да, я это имел в виду. Только значение name будет в одну строку без какого-либа читабельного формата (как в докер компоузе)
Andor
да сделай в читабельном, это всё равно будет строка
Mikhail [azalio]
А кто может напомнить куда мне пойти, если я хочу перед деплоем проверять что в манифесте не больше N replicas, лимиты выставлены, в аннотациях нужные записи и т.д.
Mikhail [azalio]
Я помню что это можно делать на стороне кубера
CrusaderX
Sergei
олыч
Привет. А есть какой-либо способ протестировать перед запуском пода, что конфиг не просто валидный, а обозначенные в конфиге ресурсы реально присутствуют, например что получится подмонтировать волюм?
Mikhail [azalio]
kubetest?
Посмотрю что за зверь. Спасибо
Mikhail [azalio]
Й
Теперь боты по трое ходят?
Danila
я не бот
Danila
на всякий )
Rainbow
100% должен быть же "adwords" для telegram на основе таких ботов. Кто-то сталкивался?
Rainbow
я не бот
главное не предлагай зарабатывать по $100 в день =)
Andrey
Ребят, все еще разбираюсь с зависаниями при запросах через ingress.
Сейчас вот такая ситуация:
Дергаю курлом с мастера поды по их IP и по IP сервиса отвечают.
Параллельно дергаю через ingress, таймаут 504.
Повторяется не всегда, но часто. Что может быть? куда смотреть?
Сеть calico, kubernetes 1.11.2
Andrey
Gleb
Andrey
и с обоих подов приходит 504 ?
Andrey
и с обоих подов приходит 504 ?
Если дергаю курлом то отвечают оба.
Ошибка 504 не постоянная, просто время от вермени, но воспроизвести ее не сложно.
504 бывает как с одного так и с другого пода
Й
А у вас ингресс смотрит в поды или в сервис?
Andrey
Й
Т.е включена аннотация сервисе-апстрим?
Й
В ингрессе
Andrey
Сейчас сделал следующее.
Запустил в контейнере ингресса команду: "watch -n 1 "curl 10.233.100.91:1000 && curl 10.233.110.241:1000 && curl 10.233.47.52:80""
первые 2 это IP подов, третий это IP сервиса.
И параллельно дернул запрос курлом с мастера. Курл с мастера повис, а курлы в контейнере ингресса работали как часики. Я кажется схожу с ума)
Andrey
Вот так у меня в ингрессе
G72K
Й
Вот так у меня в ингрессе
https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md#service-upstream
Andrey
Andrey
Andrey
у меня стоит там:
nginx.ingress.kubernetes.io/rewrite-target: /
олыч
Это как проверять, что есть файл перед открытием. Вроде логично, но лучше так не делать ,ибо гарантий все равно нет , пока необходимое действие не сделаешь, все равно до конца не знаешь, получится ли
Допустим, девелоперы на стейджинге проверяют, триггеря джобу. Но при выкатке на прод триггерить джобу раньше установленного времени нежелательно, остается только ждать что оно успешно отработает в какое-то назначеное время. Может быть, такие проблемы предотвращать надо иначе?
Andrey
Andrey
Решил поснимать tcpdump на tunl0 и нашел странное.
В том случае когда случается таймаут, на самом деле ответ приходит, только битый. Без HTTP заголовков и вообще без начала ответа.
В случае когда таймаута не случилось, они соответственно есть.
Причем когда случается таймаут, в tcp дампе на ноде с подом, я вижу что из пода вышли все нужные пакеты, а вот в дампе этого же запроса, но уже на ноде с ingress, я вижу что дошли не все и куска от начала ответа нет.
Господа, посоветуйте, чего хоть делать? Кластер деплоил с нуля через kubespray. Сеть calico. Почти все настройки kubespray по дефолту, уж что касается сети, точно по дефолту.
На самих серверах никаких изменений не вносилось ни в настройки сети, ни в iptables правила.
Andrey
Снял еще tcpdump с eth0 интерфейса на ноде с подом. С пода через tunl0 ответ выходит нормальный, а вот через eth0 идет уже битый. Т.е теряется где то между tunl0 и eth0.
neumeika
сама-то tcp сессия нормальная?
neumeika
мож перетюнили или недотюнии, tcp_reuse какой-нить есть...
neumeika
ну или на сетевом оборудовании что...
G72K
Andrey
мож перетюнили или недотюнии, tcp_reuse какой-нить есть...
Вообще все настройки системы по дефолту, сверху kubespray свои накатывал.
Причём проблема проявляется как на версии кубера 1.10.х так и на 1.11.х. Только вчера пересетапил.
В оборудовании проблема врядли может быть, у меня пакеты получается теряются между tunl0 и eth0 в рамках одного сервера. Т.е с пода выходит ответ нормальный, я его вижу на tunl0, а уже в сеть на eth0 идёт обрубок без начала ответа.
Andrey
мб, глупость скажу, но, мб, проблемы с mtu на интерфейсах?
Anton
Andrey
https://docs.projectcalico.org/v2.5/usage/configuration/mtu
Andrey
у меня проявлялась проблема с mtu в связке kubernetes (flannel) + gitlab-omnibus + gitlab-runner (докер в докере). необходимо было выставлять всем контейнерам mtu 1450 потому что flannel режет до 1450
Andrey
проблема была при закачке по https и просто при обращении по https
Andrey
Andrey
постоянная
Andrey
по идее, откинув все, там где есть туннели, там всегда меняется mtu
Andrey
и надо выставлять ниже
Andrey
netstat -i , собственно
Andrey
Andrey
ну то, что mtu разное - видно (:
Andrey
Andrey
у меня после мытарств вот такая картина
Andrey
но лучше про calico еще почитать что там и как
Anton
https://docs.projectcalico.org/v2.5/usage/configuration/mtu
Anton
уже кидали эту ссыль
Anton
если ipip не используешь, у тебя mtu в calico должен быть тот же что и на интерфейсе
Andrey
непонятно почему на eth0 он маленький
Никита
У calico, вроде, была крутилка для mtu для интерфейсов.
Никита
Кстати, если на eth0 1450 - на туннельном должно быть что-то типа 1390
Anton
по ссылке табличку посмотрите еще раз, зависит от конфигурации
Stas
Кто-то может дать консультацию по настройке роутинга в istio?
Sergey
Andrey
Кто-нибудь знает как редактировать конфиг calico на уже работающем кластере kubernetes?))
𝚔𝚟𝚊𝚙𝚜
аккуратно
Andrey
еще варианты?))