Jürgen
Блин не успел
Navern
Navern
я не оч понял что ты хочешь узнать
Anonymous
Привет. Может быть кто подскажет по Kubernetes вариант решения следующей задачи: есть бесконечно пополняемая очередь (work queue в терминологии k8s), например RabbitMQ. Необходимо сделать параллельные консьюмеры, которые бы обрабатывали эту очередь постоянно (не одноразовые джобы).
Ньюанс в том, что для предотвращения утечки памяти, консьюмеры принято (например в PHP) перезапускать через некоторе время или некоторое количество обработанных сообщений.
Вопрос, как это ложится на Job абстракцию k8s? Там есть только restart: OnFailure | Never, а перезапуск имеет Success код (т.е. k8s не перезапустит такой Job)
или может впринципе тут подход с Job неверный? И надо использовать нечто другое
Alexandr
можно просто не использовать php
Anonymous
PHP тут как пример, это может быть любой другой ЯП
Alexandr
просто я не сталкивался с проблемой утечки памяти используя консьюмеры, они правда написаны на js
Anonymous
вам повезло :)
продолжаю изучение вопроса - судя по всему вместо Job надо использовать https://kubernetes.io/docs/concepts/workloads/controllers/replicationcontroller/ - ReplicationController, который даже в случае успешного завершения контейнера будет его перезапускать, держа постоянно N реплик
Dmitry
deployment с обработчиками и не периться
Dmitry
сдохнет - куб его переподымет
Dmitry
Anonymous
спасибо за совет
Anonymous
а почему в сыром виде не стоит? если есть где почитать об этом - ткните ссылкой пожалуйста
Dmitry
спасибо за совет
deployment управляет rc (на этом так же реализован механизм обновлений/откатов), а rc управляет уже pod`ами
Dmitry
при обновлении, например, версий контейнеров просто новый rc подымается, а у старого число реплик выставляется в 0
Anonymous
👍 спасибо
Maksim
Подскажите, network alias действует внутри сети networks. А если задать networks external, то alias распространяется на все external подсети?
Maksim
Пример:
Есть некая сеть mynet с прокси
Есть две подсети с разными окружениями - prod и stage, которые работают через общий прокси. И выходит, что бэк с prod периодически пишет в базу или кеш на stage. Как их разрулить?
Maxim
Maksim
да, так и написано
Maxim
да, так и написано
А теперь рассказывайте, как так у вас вышло что ваш prod может дотянуться до stage сервера БД и ещё в кэш кучу навалить ?
Или можете показать docker-compose.yml что бы ускорить процесс получения совета
Maksim
А теперь рассказывайте, как так у вас вышло что ваш prod может дотянуться до stage сервера БД и ещё в кэш кучу навалить ?
Или можете показать docker-compose.yml что бы ускорить процесс получения совета
Эти два окружения висели на одном сервере.
Вот docker-compose:
version: '2'
services:
proxy:
image: nginx
container_name: stage-proxy
restart: always
depends_on:
- app
expose:
- 80
environment:
VIRTUAL_HOST: stage.loc
volumes:
- ./config/nginx:/etc/nginx/conf.d:ro
- ./logs/nginx/:/var/log/nginx:rw
networks:
stage:
aliases:
- proxy
app:
image: stage
container_name: stage-cms
restart: always
depends_on:
- mysql
environment:
YII_ENV: prod
MYSQL_HOST: mysql
MYSQL_DATABASE: web
MYSQL_USER: web
MYSQL_PASSWORD: web
networks:
stage:
aliases:
- app
mysql:
image: mysql:5.7
container_name: stage-mysql
restart: always
ports:
- "3306:3306"
volumes:
- ./config/mysql/mysql.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf:ro
- ./data/mysql:/var/lib/mysql
- ./logs/mysql:/var/log/mysql
environment:
MYSQL_ROOT_PASSWORD: web
MYSQL_DATABASE: web
MYSQL_USER: web
MYSQL_PASSWORD: web
command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci
networks:
stage:
aliases:
- mysql
memcached:
image: memcached
container_name: stage-memcached
restart: always
ports:
- "11211:11211"
networks:
stage:
aliases:
- memcached
networks:
stage:
external:
name: srv_mynet
Maksim
хмм... странно. Почему-то прокси оказался вообще в другой сети
version: '2'
services:
proxy:
image: neilpang/nginx-proxy
container_name: proxy
restart: always
ports:
- "80:80"
- "443:443"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
- /srv/proxy/certs:/etc/nginx/certs:Z
- /srv/proxy/conf.d:/etc/nginx/conf.d
- /srv/logs/nginx:/var/log/nginx:rw
networks:
worknet:
networks:
worknet:
Maksim
как он вообще тогда запросы проксирует... 😅
Maxim
Maxim
Maksim
Maksim
А!!! Дошло. Дайте угадаю. Если у меня запущен prod тоже с
networks:
stage:
external:
name: srv_mynet
То контейнеры и попадают все в одну сеть с одинаковыми алиасами. И гадят друг другу к кеш?
Maxim
Maxim
Maksim
Kirill
https://www.9tut.com/
Kirill
https://www.certprepare.com/
freezlite
а как докер по дефолту ротирует логи?
freezlite
вот например контейнер пишет в stdout очень много, докер будет заменять старые данные?
freezlite
чтобы не уперлось в диск
Aleksey
docker info | grep Logging
Aleksey
если там json-file то никак
Navern
Navern
при json-file
Navern
но по умолчанию не врублены
🏳️ Phil
docker 18.09, ubuntu 18.04. docker0 внезапно молча не получает IP адреса при втором docker run. WTF?
🏳️ Phil
Jan 21 11:10:56 mail-01 systemd-resolved[576]: Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction with reduced feature level UDP.
Jan 21 11:12:29 mail-01 containerd[765]: time="2019-01-21T11:12:29.876309899Z" level=info msg="shim reaped" id=05ba750d091771f25d947b24fe8880855b22f35af7e89a620e2833294d057632
Jan 21 11:12:29 mail-01 dockerd[762]: time="2019-01-21T11:12:29.886174422Z" level=info msg="ignoring event" module=libcontainerd namespace=moby topic=/tasks/delete type="*events.TaskDelete"
Jan 21 11:12:29 mail-01 systemd-networkd[551]: veth2134c0d: Lost carrier
Jan 21 11:12:29 mail-01 kernel: [ 430.870508] docker0: port 1(veth2134c0d) entered disabled state
Jan 21 11:12:29 mail-01 systemd-timesyncd[540]: Network configuration changed, trying to establish connection.
Jan 21 11:12:29 mail-01 kernel: [ 430.874626] veth1314dca: renamed from eth0
Jan 21 11:12:29 mail-01 systemd-timesyncd[540]: Synchronized to time server 91.189.89.199:123 (ntp.ubuntu.com).
Jan 21 11:12:29 mail-01 kernel: [ 430.883386] docker0: port 1(veth2134c0d) entered disabled state
Jan 21 11:12:29 mail-01 systemd-timesyncd[540]: Network configuration changed, trying to establish connection.
Jan 21 11:12:29 mail-01 networkd-dispatcher[729]: WARNING:Unknown index 8 seen, reloading interface list
Jan 21 11:12:29 mail-01 kernel: [ 430.884972] device veth2134c0d left promiscuous mode
Jan 21 11:12:29 mail-01 kernel: [ 430.884976] docker0: port 1(veth2134c0d) entered disabled state
Jan 21 11:12:29 mail-01 systemd-timesyncd[540]: Synchronized to time server 91.189.89.199:123 (ntp.ubuntu.com).
Jan 21 11:12:29 mail-01 networkd-dispatcher[729]: ERROR:Unknown interface index 8 seen even after reload
Jan 21 11:12:29 mail-01 systemd-udevd[2074]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Jan 21 11:12:29 mail-01 systemd-udevd[2074]: link_config: could not get ethtool features for veth1314dca
Jan 21 11:12:29 mail-01 systemd-udevd[2074]: Could not set offload features of veth1314dca: No such device
Jan 21 11:12:30 mail-01 systemd-networkd[551]: docker0: Lost carrier
Jan 21 11:12:30 mail-01 systemd-timesyncd[540]: Network configuration changed, trying to establish connection.
Jan 21 11:12:30 mail-01 systemd-timesyncd[540]: Synchronized to time server 91.189.89.199:123 (ntp.ubuntu.com).
Jan 21 11:12:31 mail-01 kernel: [ 432.351338] docker0: port 1(veth0f62306) entered blocking state
Jan 21 11:12:31 mail-01 kernel: [ 432.351341] docker0: port 1(veth0f62306) entered disabled state
Jan 21 11:12:31 mail-01 kernel: [ 432.351549] device veth0f62306 entered promiscuous mode
Jan 21 11:12:31 mail-01 systemd-udevd[2099]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Jan 21 11:12:31 mail-01 systemd-udevd[2099]: Could not generate persistent MAC address for veth665811e: No such file or directory
Jan 21 11:12:31 mail-01 systemd-timesyncd[540]: Network configuration changed, trying to establish connection.
Jan 21 11:12:31 mail-01 networkd-dispatcher[729]: WARNING:Unknown index 11 seen, reloading interface list
Jan 21 11:12:31 mail-01 kernel: [ 432.366023] IPv6: ADDRCONF(NETDEV_UP): veth0f62306: link is not ready
Jan 21 11:12:31 mail-01 kernel: [ 432.366029] docker0: port 1(veth0f62306) entered blocking state
Jan 21 11:12:31 mail-01 kernel: [ 432.366031] docker0: port 1(veth0f62306) entered forwarding state
Jan 21 11:12:31 mail-01 kernel: [ 432.366066] docker0: port 1(veth0f62306) entered disabled state
Jan 21 11:12:31 mail-01 systemd-udevd[2101]: link_config: autonegotiation is unset or enabled, the speed and duplex are not writable.
Jan 21 11:12:31 mail-01 systemd-udevd[2101]: Could not generate persistent MAC address for veth0f62306: No such file or directory
Jan 21 11:12:31 mail-01 systemd-timesyncd[540]: Synchronized to time server 91.189.89.199:123 (ntp.ubuntu.com).
Jan 21 11:12:31 mail-01 systemd-networkd[551]: veth0f62306: Link is not managed by us
🏳️ Phil
Да, тупо на втором запуске не
Grey
Jan 21 11:12:29 mail-01 systemd-timesyncd[540]: Network configuration changed, trying to establish connection. Вот то смущает и что то с днс валидатором
Grey
отключи и попробуй еще раз
🏳️ Phil
ytf
🏳️ Phil
Короче. Первые же контейнер после остановки почему-то вбивает у docker0 адрес. Пока грешу на dhcp
🏳️ Phil
Jan 21 13:25:49 mail-01 systemd-networkd[555]: docker0: Lost carrier
Grey
Tadeusz
systemd охуенен.
Grey
Че серьзно ?да быть того не может?
🏳️ Phil
Igorь
Всем привет! Кто может сказать, как убить зависший наглухо контейнер? Висит на командах docker stop, docker rm -f, docker system prune, docker kill -s 9. Контейнер был запущен в сварме, и после удаление сервиса стало вот так. Также есть одна сетка, которая видится по docker network ls, но докер говорит, что она не существует, если я пытаюсь ее удалить. К ней присоединены повисшие контейнеры.
Igorь
дисконнект от сети тех контейнеров тоже виснет
LEXASOFT
service docker restart
Igorь
мягче способов нет?
Igorь
хотя вроде все мягкие я уже попробовал
Womchik
hard reset по питанию
Womchik
ради одного контейнера?
Rustam
🏳️ Phil
🏳️ Phil
А подтвердите кто-нибудь или опровергните. Ubuntu 18.04. Docker 18.09. Если сеть через netplan и cloud.init — docker0 теряет свой IP после первого же отработавшео контейнера (сборка например). Я так и не понял — netplan или cloud.init
Roman
yopp
привет! слушайте, я не могу в этом чёртовом кубернетесе разобратся
yopp
ранчер убил свой коровник в пользу этого ужаса и я теперь страдаю
yopp
я не могу понять как мне один node pool выделить под балансировщики
Dmitry
tains and toleratios
Dmitry
но это не про этот чат
yopp
а какой чят про этот ужас?
Grey
yopp
да уж, кубернетес это вам не докер. спасибо!
yopp
она какая-то запредельно особенная
Grey
пиши туда