Dmytro
ну у нас тоже spa, но раздает htmlки node.js с SSR
Но всё равно ведь во время rolling deploy будет ошибка. Например у нас сейчас 2 старых подов и 3 новых. Запрос на css/js файл от юзера со старым хтмл приходит в новый под и получает 404. Аналогично запрос от юзера с новым хтмл на css/js файл попадает в старыйьпод и получает 404
Rainbow
У меня проблема, что html может раньше js попасть на прод. А там контейнер
Dmytro
просто так переключаться между бакетами нельзя. Старые ассеты нужны, если в текущем 404
А вы старые не удаляйте из бакета. Просто каждый новый релиз статика грузится в новую папку и в хтмл новый путь к папке подставляется
Dmytro
Мы примерно так решили
Dmytro
У меня проблема, что html может раньше js попасть на прод. А там контейнер
Ну тут думаю вообще не проблема пофиксить порядок отгрузки статики в с3 и деплоя в куб
Dmytro
Почему?
Dmytro
Последовательность шагов в ci
Rainbow
Я по итогу думаю делать баскет из которого не удаляется + текущий и try_file текущий, общий. Это видится более надежным
Rainbow
В смысле текущей переключается сменой ссылки на текущий и откат обратной сменой
Rainbow
mina так делала (ruby) и вроде капистрано тоже
Dmytro
по сути не удалять старую статику это единственный возможно правильный вариант
Dmytro
как реализовать - в S3 или билдить контейнер инкрементально (докладываю туда статику из нового билда) - тут уже кто как может
Dmytro
само собой желательно использовать не то что я писал выше с новой папкой на новый релиз а gulp-rev-all или аналогичный функционал вебпака который генерирует имя файла как хеш от контента и побновляет хтмли
Dmytro
соотвественно все файлы можно заливать в одну папку и ничего не перезатрется, а если перезатрется то контент одинаковый
Й
Как же мне этого не хватает)
𝚔𝚟𝚊𝚙𝚜
Как же мне этого не хватает)
ай, да vim их сам выставляет
Aleksei
vi dolzny stradat'
Sergey
Как теперь это развидеть
Й
Как теперь это развидеть
И я так понимаю это так, цветочки )
Sergey
И я так понимаю это так, цветочки )
Я видел один реальный пример деплоймента на ksonnet ну который ддейсоннет юзает, перекрестился и закрыл
Й
Я видел один реальный пример деплоймента на ksonnet ну который ддейсоннет юзает, перекрестился и закрыл
Вот и у меня та же реакция. Вроде читаешь про джейсоннет вроде все так складно - открываешь код .. и закрываешь обратно ещё на несколько месяцев
Dmytro
начинаем новый тред #ksonnet_говно ?
Andrey
В 2021 Helm 3 выйдет. Вот заживём!
Arczi
Парни подскажите что не так, использую gcloud для kubernetes и при deploy есть пауза пока новый образ не построился аппка не открываесться (this site can't be reached) как убрать эту паузу? прочитал что kubernetes какраз таки не кладет старый образ пока новый не будет отвечать 200
Vadim
А в номаде это из коробки
и скобочек там нет, потому что жсонетта нет
G72K
posgres-operator вердикт: нужен напильник, но не безнадежен
Vitaliy
Народ, есть ли что-то о чем стоит заранее побеспокоиться когда разрабы хотят в кубике крутить nodejs приложение? Никогда не сталкивался
Vitaliy
Почитаю про tini, спасибо. Что-то ещё?
Rainbow
Остальное по докеру (нормально упаковать, alpine использовать, dev deps не тащить и тп)
Vitaliy
Только не алпайн. 😅 Ужо измазались.
Rainbow
В своём коде? Обычно у nodejs нет проблем с alpine
Rainbow
Исключая кейсы вроде затащить драйвер oracle или ещё какую дичь.
Rainbow
пинать их за мемори лики
он сам по лимитам дохнет
Gunslinger
у нас был кейс когда начали поды рестартовать потому что выжирался лимт 1,5 гб
Gunslinger
он сам по лимитам дохнет
однако это нихрена не круто. заставили разрабов чистить лик
Vitaliy
А можно ваших разрабов занять? Наших проще выебать и на мороз чем заставить думать
Gunslinger
просто у нас тимлид девопс железный человек!
Vitaliy
Форма хера меня не волнует 🤣
Gunslinger
Форма хера меня не волнует 🤣
дык они по русски не бельмеса )))
Gunslinger
точнее знают лишь часть полезных в работе слов: пиздэц, блиать итд
Vitaliy
У нас английский основной
Vitaliy
Ладно.. Отшутились... Буду читать
Vitaliy
Во-во, вчера учили нашего индусика выговаривать "сука блять". Открыли талант
Anton
никак не получается получить (get) clusterrolebindings из пода: Error from server (Forbidden): clusterrolebindings.rbac.authorization.k8s.io is forbidden: User "system:serviceaccount:kube-system:multus-cni-node" cannot list resource "clusterrolebindings" in API group "rbac.authorization.k8s.io" at the cluster scope вот такая роль и байндинг: https://pastebin.com/Y1UuYySj буду признателен за идеи
Pavel
Anton
спасибо, помогло
Andrey
спасибо, помогло
FYI, пустая строка в apiGroups дефолтится в core API Group. Там всякие Pod, Container и т.д., ничего продвинутого.
Anton
FYI, пустая строка в apiGroups дефолтится в core API Group. Там всякие Pod, Container и т.д., ничего продвинутого.
да, спасибо, я как раз эту часть плохо понимал. Так и думал, что дело где-то в этом.
Andor
в сервисмониторе прометея для самого себя вписал path, а опция metrics_path не появилась spec: endpoints: - interval: 30s port: web path: /operatored selector: matchLabels: prometheus: k8s
Andor
чяднт?
Andor
apiVersion: monitoring.coreos.com/v1 kind: ServiceMonitor metadata: labels: k8s-app: prometheus name: prometheus namespace: monitoring spec: endpoints: - interval: 30s port: web path: /operatored selector: matchLabels: prometheus: k8s
Andor
@zuzzas ^
Andor
по сорцам оператора даже глянул - вроде всё верно
Roman
привет всем, есть проблемка, может кто-то поможет понять куда копнуть можно у меня ряд java-проектов использующих springboot framework, разворачиваю их в кубере. беда в том что по некоторым микросервисам нет логов внутри контейнеров/подов (не во всех, а выборочно). хотя если просто запустить контейнер вне кубера, то все ок, логи есть. п.с. драйвер логирования одинаковый - journald
George
journald внутри докера нет
George
пишите в stdout/stderr
Roman
хм $ docker inspect -f '{{.HostConfig.LogConfig.Type}}' some-pod-name journald
George
lol
идиот? вот внутри пода - контейнер. в нем эльпайн
George
какой там журналд? Там вероятно вообще системд нету.
George
если речь про драйвер логирования докера, ну, так это вообще отдельная история и нужно об этом явно писать
Andor
идиот? вот внутри пода - контейнер. в нем эльпайн
кто сказал что 1) там alpine 2) journald - внутри докера