Sergei
технически на двух серверах запустить while true ; do rsync -av /path/to/root rsync://remote/share/ ; done - тоже мультимастер.
No1
Ну
Sergei
Не пройдет jepsen
смотря какие гарантии заявить
Sergei
jepsen же проверяет только соответствует ли поведение заявленному
Uncel
никогда, никогда, НИКОГДА не используйте collectd. он однопоточный и синхронный.
в последнее время часто вижу инсталяции с ним, есть линк где эти грабли описаны?
Vitaliy
в последнее время часто вижу инсталяции с ним, есть линк где эти грабли описаны?
я бился об эти грабли лично. Любая долго отвечающая метрика тормозит весь цикл получения и отправки метрик. Далее срабатывает алерт что всё упало и катастрофа
Uncel
Спасибо. Непонятно почему при таком поведении, везде collectd is heavily multi-threaded
Pavel
Ни разу не тормоз
🏳️ Phil
Собственно он удобен как "быстпо воткнул получить сисиемные"
Alex
А чем принято сейчас долгие метрики собирать?
Vitaliy
Достаточно странно через коллектд брать долгоаолучаемые метрики
некоторые условно системные метрики могут долго отвечать
Vitaliy
А чем принято сейчас долгие метрики собирать?
если говноед (95%), то заббикс. Здоровые люди использует Прометей
Aleksey
прометей прометеем. коллеткоры нужны к прометею
Aleksey
я так себе довольен стабильность телеграфа. думал как раз про коллектд.
Aleksey
@upovod ответь плиз про многопоточность.
Denys 💛📈
Если я правильно понимаю collectd то он должен отдавать метрики каждые Interval секунд
Denys 💛📈
И каждый плагин по идее работает в своём потоке и его блокировка не должна блочить остальные плагины
Denys 💛📈
Но если заблочить один плагин, то логично что он будет заблоченым. @Civiloid должен точно знать , у него контрибуторская футболочка от Collectd есть, но вроде его в этом канале нет.
Denys 💛📈
Ну или в irc спросить на #collectd, когда то он был весьма жив
Vladimir
в одном ифе
Vladimir
(и я не шучу)
Vladimir
но впрочем мне казалось что оно именно так и работает в 5.x
Vladimir
плагин в своем тредике
Vladimir
если нужно что-то системное коллектить есть плагин принимающий по сокету
Vladimir
и там все вроде довольно умно таймаутами обвешано было
Vladimir
впрочем что плагин пер тред можно убедится погрепав по phtread_create по сырцам
Vladimir
или по " plugin_thread_create"
Aleksey
господа, а в чем проблемы с cpu/memmory hot plug в vmware esxi ? почему галка по дефолту off
Anonymous
Если помните обсуждали как выкладывать автоматом без Jenkins и крона. Получилось как то так...
Anonymous
Если нужно могу дать примеры скриптов, у меня java tomcat webapp.
Dmytriy
Привет всем подскажите что может означать последная линия eth0 Link encap:Ethernet HWaddr 74:d0:2b:9a:85:22 inet addr:144.76.154.38 Bcast:144.76.154.63 Mask:255.255.255.224 inet6 addr: 2a01:4f8:200:222e::2/64 Scope:Global inet6 addr: fe80::76d0:2bff:fe9a:8522/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:61092 errors:0 dropped:0 overruns:0 frame:0 TX packets:19269 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:89085429 (89.0 MB) TX bytes:1944761 (1.9 MB) Interrupt:17 Memory:f7d00000-f7d20000
Dmytriy
гуглил подобную строку - у всех что то было по аппаратной части
kevit
lspci -vvv на этот девайс нужен
kevit
в целом это скорее всего ring buffer
Dmytriy
Что то определенное скинуть? тут просто очень много
kevit
ну там скорее всего Region0 или Region2 совпадает с этой строкой
պլհկ
какую проблему вы решаете?
kevit
да нет проблемы, человек интересуется что там написано)
Dmytriy
root@cloude-02 ~ # lspci -vvv | grep "^[0-9]" 00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/Ivy Bridge DRAM Controller (rev 09) 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09) (prog-if 00 [Normal decode]) 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09) (prog-if 00 [VGA controller]) 00:06.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09) (prog-if 00 [Normal decode]) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 05) (prog-if 20 [EHCI]) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b5) (prog-if 00 [Normal decode]) 00:1c.5 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 6 (rev b5) (prog-if 00 [Normal decode]) 00:1c.7 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 8 (rev b5) (prog-if 00 [Normal decode]) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 05) (prog-if 20 [EHCI]) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a5) (prog-if 01 [Subtractive decode]) 00:1f.0 ISA bridge: Intel Corporation C206 Chipset Family LPC Controller (rev 05) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family SATA AHCI Controller (rev 05) (prog-if 01 [AHCI 1.0]) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 05) 04:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection 05:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller (prog-if 30 [XHCI])
Dmytriy
проблема в cледующем есть сервер в хетцнере под нагрузкой порядка 30К активных соединений на nginx начинает раватся tcp и вот такие сообщения сыпятся в syslog Aug 31 06:25:18 cloud-2 kernel: [3019110.080288] net_ratelimit: 1393 callbacks suppressed Aug 31 06:25:18 cloud-2 kernel: [3019110.080289] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.080408] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.080418] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.080432] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.080704] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.080727] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.081321] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.123276] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.123377] TCP: too many orphaned sockets Aug 31 06:25:18 cloud-2 kernel: [3019110.123531] TCP: too many orphaned sockets
kevit
проблема не в железе.
kevit
tcp_max_orphans или память крутить под сокеты
Dmytriy
ubuntu 16.04 два одинаковых сервера на проблемном затюнил вот таким образом net.ipv4.ip_local_port_range = 2000 65000 net.ipv4.tcp_syncookies = 1 net.ipv4.tcp_synac_retries = 2 net.ipv4.tcp_fin_timeout = 3 net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_max_syn_backlog = 3240000 net.ipv4.tcp_max_tw_buckets = 1440000 net.ipv4.tcp_window_scaling = 1 net.core.somaxconn = 5000 net.core.netdev_max_backlog = 15000 net.core.netdev_budget = 8196 net.core.rmem_default = 8388608 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.ipv4.tcp_rmem = 4096 87380 16777216 net.ipv4.tcp_wmem = 4096 65536 16777216 net.ipv4.tcp_congestion_control = cubic net.ipv4.tcp_tw_recycle = 1 #net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 1 #net.netfilter.nf_conntrack_tcp_timeout_established=600 #net.netfilter.nf_conntrack_max=1048576 #net.nf_conntrack_max = 1048576 net.ipv4.tcp_slow_start_after_idle=0 и запустил sysctl —system но еффекта не было.
Dmytriy
подскажите пожалуйста какой это именно ключ под память сокетов
kevit
tcp_mem, но я бы сначала подумал почему получаются orphaned сокеты
kevit
т.е насколько я понимаю процесс сокет закрыл
kevit
но tcp все еще есть к этому сокету
kevit
и их 64к
kevit
раз начало это отбиваться
Dmytriy
сейча покажу. как раз подумал о том какое кол-во и каких у меня соединений это живой не глючный вроде сервер root@Ubuntu-1604-xenial-64-minimal ~ # netstat -nat | awk '{print $6}' | sort | uniq -c | sort -n 1 established) 1 Foreign 7 LISTEN 12 CLOSE_WAIT 237 CLOSING 261 FIN_WAIT2 511 SYN_RECV 703 FIN_WAIT1 5793 TIME_WAIT 38329 ESTABLISHED 92215 LAST_ACK ` вот так приблизительно выглядело на поломанном 1 established) 1 Foreign 7 LISTEN 12 CLOSE_WAIT 261 FIN_WAIT2 511 SYN_RECV 703 FIN_WAIT1 5793 TIME_WAIT 6237 CLOSING —— вот таких много было 38329 ESTABLISHED 92215 LAST_ACK
kevit
ну у него очень маленький таймаут стоит на tcp_fin_timeout у него не будет много TIME_WAIT
Dmytriy
я просто скоприровал, нет под рукой живых цифр. отлчие был в кол закрывающихся соединений
Dmytriy
с сервера сняли нагрузку.
kevit
ладно, а физически интерфейс был утилизирован насколько?
Dmytriy
соединение 1000Mbit root@cloud-2 ~ # ethtool eth0 Settings for eth0: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: No Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised pause frame use: No Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on MDI-X: off (auto) Supports Wake-on: pumbg Wake-on: g Current message level: 0x00000007 (7) drv probe link Link detected: yes В пике когда сервер (уже) глючиЛ было ин 128 аут 178 в среденем за весь период глюченья ин 64 аут 127
kevit
если например ( гипотеза ) интерфейс был утилизирован больше чем на второй машине то наличие closing растущего нормально, потому что FIN получили, ACK послали а ответного ACK еще нет, потому что там что-то другое передается
Dmytriy
пообщались с саппортом и глянули в веб админку. это другой человек делает без меня вроде как была уменьшена скорость на интерфейсе до 10Мб. каким макаром в таком случае я вижу 100Мбит на интефейсе не понятно для меня
Dmytriy
если получиться порешать могу отписатся
Aleserche
повылезали
Aleksei
А видел кто онлайн курс по ансиблу по типу codeacademy? чтоб интерактивно
Dmitry
Mastering ansible
Dmitry
Кажется так
Aleksei
хм, а чтоб еще и бесплатно? :)
Nklya
Бесплатно книжку можно почитать
Nklya
https://www.ansiblefordevops.com https://github.com/geerlingguy/ansible-for-devops
Aleksei
да бесплатно я доки почитал. мне надо для девелоперов чтот простое чтобы основы показать
Nklya
Еще вот такое есть https://hackr.io/tutorials/learn-ansible https://www.redhat.com/en/services/training/do007-ansible-essentials-simplicity-automation-technical-overview?sc_cid=70160000001202LAAQ
G72K
кто-нибудь знает какое поле в x509 сертификате однозначно идентифицирует его? могу конечно взять sha1 от .pem файла, но это ненаучно как-то )
Konstantin
В теории УЦ + серийный номер
G72K
т.е. серийный номер сертификата + серийный номер сертификата УЦ?