Debian 11.9 В каком месте добавить правило firewall, чтобы ограничить доступ к порту docker контейнера?
Что бы после перезагрузки не слетало.
Есть ли возможность у docker добавить список сетей с которых разрешен доступ к порту контейнера?
Что бы после перезагрузки не слетало.
Есть ли возможность у docker добавить список сетей с которых разрешен доступ к порту контейнера?
Просьба накидать ссылок или рассказать какой состав необходимых вопросов для реализации.
Спасибо.
У одной программы (автор не я) вывод времени свершившегося события раз от раза отличается и есть подозрение что часы в Linux скачут +- секунда, а может и больше.
Нагрузка на сервер минимальна.
Как это можно отследить? в чем может быть причина?
Есть tcp подключение к серверу. Сервер «выплевывает» сообщения по одному, tcpdump -ом видно что одно сообщение - один tcp сегмент. Между сообщениями 70мкс. Но linux + epoll «объединяют» по три или даже четыре прилетающих tcp сегмента в один и только после этого передается управление в программу для чтения буфера.
Что вызывает задержку для принятия решения 210мкс и более.
С какими флагами нужно создавать сокет и вызывать epoll, чтобы каждый tcp сегмент оказывался в программе?
Можно аргумент скрипту передать при запуске cron ом. Может есть способ лучше?
С флешки проходит загрузка, до первого меню proxmox. После выбора типа инсталяции, на мониторе перемещающаяся надпись - «Потеря сигнала» или что то в этом духе. Если выбрать при установке 8.2 текстовый режим инсталяции - то такая же фигня. Mатеринcкая плата МBD-Х9DВU-IF.
7.4 версия ставиться нормально если выбрать первый пункт меню, выбираю второй - снова «потеря сигнала».
кто встречал такое и как решил?
Давным давно в кластере proxmox (3.Х) юзал shared сторадж - drbd, на которой LVM, LVM тома - диски виртуалок.
Может быть сейчас есть что то лучше и не дорого как ceph ?
В серверах по три диска могу установить
Понадобился fail2ban на виртуалке, но тут вылезло ...
После чего случилось - уже и не вспомню.
Как исправить чтобы не ставить кучу пакетов для исправления? Виртуалка мизерная, крутится несколько процессов, ничего лишнего на ней не нужно, даже просто файлы с пакетами. Они просто не нужны для выполняемых задач
root@acid:/usr/local/# apt install fail2ban
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
code : Depends: libasound2 (>= 1.0.17) but it is not going to be installed
Depends: libatk-bridge2.0-0 (>= 2.5.3) but it is not going to be installed
Depends: libatk1.0-0 (>= 2.2.0) but it is not going to be installed
Depends: libatspi2.0-0 (>= 2.9.90) but it is not going to be installed
Depends: libdrm2 (>= 2.4.75) but it is not going to be installed
Depends: libgbm1 (>= 17.1.0~rc2) but it is not going to be installed
Depends: libgtk-3-0 (>= 3.9.10) but it is not going to be installed
Depends: libgtk-3-0 (>= 3.9.10) but it is not going to be installed or
libgtk-4-1 but it is not installable
Depends: libnspr4 (>= 2:4.9-2~) but it is not going to be installed
Depends: libnss3 (>= 2:3.30) but it is not going to be installed
Depends: libnss3 (>= 3.26) but it is not going to be installed
Depends: libxcomposite1 (>= 1:0.4.4-1) but it is not going to be installed
Depends: libxdamage1 (>= 1:1.1) but it is not going to be installed
Depends: libxfixes3 but it is not going to be installed
Depends: libxkbcommon0 (>= 0.4.1) but it is not going to be installed
Depends: libxkbfile1 but it is not going to be installed
Depends: libxrandr2 but it is not going to be installed
Depends: xdg-utils (>= 1.0.2) but it is not going to be installed
Recommends: libvulkan1 but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).
root@acid:/usr/local/# apt --fix-broken install
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
libblas3 liblinear4 nmap-common
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
adwaita-icon-theme alsa-topology-conf alsa-ucm-conf at-spi2-core dbus dbus-user-session dconf-gsettings-backend dconf-service
glib-networking glib-networking-common glib-networking-services gsettings-desktop-schemas gtk-update-icon-cache hicolor-icon-theme
libasound2 libasound2-data libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libauthen-sasl-perl libavahi-client3
libavahi-common-data libavahi-common3 libcairo-gobject2 libclone-perl libcolord2 libcups2 libdata-dump-perl libdbus-1-3 libdconf1
libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libencode-locale-perl libepoxy0
libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl libfile-mimeinfo-perl libfont-afm-perl libfontenc1 libgbm1
libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgl1 libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0
libglx0 libgtk-3-0 libgtk-3-bin libgtk-3-common libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl
libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl
libio-html-perl libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libjson-glib-1.0-0 libjson-glib-1.0-common
liblcms2-2 libllvm11 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libnet-dbus-perl libnet-http-perl
libnet-smtp-ssl-perl libnet-ssleay-perl libnspr4 libnss3 libpciaccess0 libproxy1v5 librest-0.7-0 librsvg2-2 librsvg2-common
libsoup-gnome2.4-1 libsoup2.4-1 libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libvte-2.91-0 libvte-2.91-common
libvulkan1 libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwww-perl libwww-robotrules-perl libx11-6
libx11-protocol-perl libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-shape0 libxcb-sync1
libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxft2 libxi6 libxinerama1 libxkbcommon0 libxkbfile1
libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxrandr2 libxshmfence1 libxtst6 libxv1 libxxf86dga1 libxxf86vm1
libz3-4 mesa-vulkan-drivers perl-openssl-defaults termit x11-utils x11-xserver-utils xdg-utils xkb-data
Suggested packages:
libasound2-plugins alsa-utils libdigest-hmac-perl libgssapi-perl colord cups-common gvfs liblcms2-utils libcrypt-ssleay-perl
pciutils librsvg2-bin libauthen-ntlm-perl libunicode-map8-perl libunicode-string-perl xml-twig-tools mesa-utils nickle cairo-5c
xorg-docs-core
The following NEW packages will be installed:
adwaita-icon-theme alsa-topology-conf alsa-ucm-conf at-spi2-core dbus-user-session dconf-gsettings-backend dconf-service
glib-networking glib-networking-common glib-networking-services gsettings-desktop-schemas gtk-update-icon-cache hicolor-icon-theme
libasound2 libasound2-data libatk-bridge2.0-0 libatk1.0-0 libatk1.0-data libatspi2.0-0 libauthen-sasl-perl libavahi-client3
libavahi-common-data libavahi-common3 libcairo-gobject2 libclone-perl libcolord2 libcups2 libdata-dump-perl libdconf1
libdrm-amdgpu1 libdrm-common libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libencode-locale-perl libepoxy0
libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl libfile-mimeinfo-perl libfont-afm-perl libfontenc1 libgbm1
libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-bin libgdk-pixbuf2.0-common libgl1 libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0
libglx0 libgtk-3-0 libgtk-3-bin libgtk-3-common libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl
libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl
libio-html-perl libio-socket-ssl-perl libio-stringy-perl libipc-system-simple-perl libjson-glib-1.0-0 libjson-glib-1.0-common
liblcms2-2 libllvm11 liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libnet-dbus-perl libnet-http-perl
libnet-smtp-ssl-perl libnet-ssleay-perl libnspr4 libnss3 libpciaccess0 libproxy1v5 librest-0.7-0 librsvg2-2 librsvg2-common
libsoup-gnome2.4-1 libsoup2.4-1 libtie-ixhash-perl libtimedate-perl libtry-tiny-perl liburi-perl libvte-2.91-0 libvte-2.91-common
libvulkan1 libwayland-client0 libwayland-cursor0 libwayland-egl1 libwayland-server0 libwww-perl libwww-robotrules-perl
libx11-protocol-perl libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-shape0 libxcb-sync1
libxcb-xfixes0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxft2 libxi6 libxinerama1 libxkbcommon0 libxkbfile1
libxml-parser-perl libxml-twig-perl libxml-xpathengine-perl libxrandr2 libxshmfence1 libxtst6 libxv1 libxxf86dga1 libxxf86vm1
libz3-4 mesa-vulkan-drivers perl-openssl-defaults termit x11-utils x11-xserver-utils xdg-utils xkb-data
The following packages will be upgraded:
dbus libdbus-1-3 libx11-6
3 upgraded, 139 newly installed, 0 to remove and 102 not upgraded.
1 not fully installed or removed.
Need to get 72.0 MB of archives.
After this operation, 285 MB of additional disk space will be used.
Do you want to continue? [Y/n]
[11922193.738021] usb 2-1: new full-speed USB device number 2 using uhci_hcd
[11922194.065013] usb 2-1: device descriptor read/64, error -71
[11922194.515011] usb 2-1: device descriptor read/64, error -71
[11922194.728012] usb 2-1: new full-speed USB device number 3 using uhci_hcd
[11922195.065013] usb 2-1: device descriptor read/64, error -71
[11922195.515011] usb 2-1: device descriptor read/64, error -71
[11922195.616023] usb usb2-port1: attempt power cycle
[11922196.030011] usb 2-1: new full-speed USB device number 4 using uhci_hcd
[11922196.604010] usb 2-1: device not accepting address 4, error -71
[11922196.716012] usb 2-1: new full-speed USB device number 5 using uhci_hcd
[11922197.304010] usb 2-1: device not accepting address 5, error -71
[11922197.304191] usb usb2-port1: unable to enumerate USB device
Жил контейнер на первой ноде и было так.
2023-08-23T16:29:39+0300 vzctl : CT 203 : Starting Container ...
2023-08-23T16:29:39+0300 vzctl : CT 203 : Mount image: /vz/private/203/root.hdd
2023-08-23T16:29:39+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-08-23T16:29:39+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-08-23T16:30:00+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-08-23T16:30:00+0300 : Adding delta dev=/dev/ploop27250 img=/vz/private/203/root.hdd/root.hds (rw)
2023-08-23T16:30:01+0300 : Mounted /dev/ploop27250p1 at /vz/root/203 fstype=ext4 data=',balloon_ino=12'
2023-08-23T16:30:01+0300 vzctl : CT 203 : Container is mounted
2023-08-23T16:30:01+0300 vzctl : CT 203 : Setting permissions for image=/vz/private/203/root.hdd
2023-08-23T16:30:01+0300 vzctl : CT 203 : Configure memguarantee: 0%
2023-08-23T16:30:01+0300 vzctl : CT 203 : Setting permissions for image=/vz/private/203/root.hdd
2023-08-23T16:30:01+0300 vzctl : CT 203 : Setting devices
2023-08-23T16:30:01+0300 vzctl : CT 203 : Adding ip address(es): 9.11.34.13 192.168.5.10 10.10.1.17
2023-08-23T16:30:04+0300 vzctl : CT 203 : Warning: distribution not specified default used /usr/libexec/libvzctl/dists/default
2023-08-23T16:30:05+0300 vzctl : CT 203 : Set hostname: billing
2023-08-23T16:30:05+0300 vzctl : CT 203 : File resolv.conf was modified
2023-08-23T16:30:05+0300 vzctl : CT 203 : Container start in progress...
После чего контейнер был запущен на второй ноде. С нее производились бекапы на первую через монтирование ploop диска (vzctl mount) и rsync.
После этого переезда на нодах было обновление Virtuozzo Linux 7.7 до последних версий того что обновлятор пожелал обновить.
После контейнер «вернулся» на первую ноду, и теперь при старте контейнера в логах возникают «дельты». Далее приведен не самый худший случай по времени старта контейнера, худший был 18минут!!! столько происходило открывание предпоследней дельты.
2023-10-18T13:41:44+0300 vzctl : CT 203 : Starting Container ...
2023-10-18T13:41:44+0300 vzctl : CT 203 : Mount image: /vz/private/203/root.hdd
2023-10-18T13:41:44+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-10-18T13:41:44+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-10-18T13:41:44+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-10-18T13:43:57+0300 : Opening delta /vz/private/203/root.hdd/root.hds
2023-10-18T13:43:57+0300 : Adding delta dev=/dev/ploop11040 img=/vz/private/203/root.hdd/root.hds (rw) type=0
2023-10-18T13:43:57+0300 : Mounted /dev/ploop11040p1 at /vz/root/203 fstype=ext4 data=',balloon_ino=12'
2023-10-18T13:43:57+0300 vzctl : CT 203 : Container is mounted
2023-10-18T13:43:58+0300 vzctl : CT 203 : Setting permissions for image=/vz/private/203/root.hdd
2023-10-18T13:43:58+0300 vzctl : CT 203 : Setting permissions for image=/vz/private/203/root.hdd
2023-10-18T13:43:58+0300 vzctl : CT 203 : Setting devices
2023-10-18T13:43:58+0300 vzctl : CT 203 : Adding ip address(es): 9.11.34.13 192.168.5.10 10.10.1.17
2023-10-18T13:44:01+0300 vzctl : CT 203 : Can't get ostemplate name form /vz/private/203/root.hdd/templates
2023-10-18T13:44:01+0300 vzctl : CT 203 : Warning: distribution not specified default used /usr/libexec/libvzctl/dists/default
2023-10-18T13:44:01+0300 vzctl : CT 203 : Set hostname: billing
2023-10-18T13:44:02+0300 vzctl : CT 203 : File resolv.conf was modified
2023-10-18T13:44:02+0300 vzctl : CT 203 : Container start in progress...
Правильно я понимаю что дельты возникает если изначально заданный размер диска контейнера переполнялся. Каждое переполнение добавляет дельту. врядли от обновления софта.
Как избавиться от дельт? Думаю что они виноваты в медленной загрузке контейнера.
Размеры дисков контейнеров на нодах разные, не следил как это получилось. размер диска контейнера порядка 825562008 в 1к блоках.
ps
пересоздать контейнер не уверен что получиться, этот контейнер со времен OpenVZ6, переезжал на Virtuozzo 7 через команду vzdump. Внутри контейнера древний lanbilling на CentOS release 5.2.
Вот такой диск - Жесткий диск 3.5" Western Digital RE4 1 Тб WD1003FBYX 1 Тб SATA-II
на трубе смотрел ролик и докладчик медленно, как будто специально, рассказывал - что на каждый импульс (как я понял тактовой частоты), в многоядерном процессоре работает одно ядро. т.е. первый импульс, тактирует/дергает первое ядро, второй второе, третий третье и т.д. по кругу.
Но что то не смог найти внятного объяснения в поисковиках что это именно так.
интересно прям как на самом деле.
всегода думал что ядра работают параллельно, а может оказаться что по очереди.
И с точки зрения программирования, если потоки задачи на разных ядрах, ломанулись в кэш за одной и той же переменной (параллельная работа ядер), то кто разрулит ситуацию, чтобы лбами не столкнулись потоки? при поочередной работе ядер понятно - первое заняло, (выставило лок условно). Затем второе обратилось - увидело лок и ждет. это я утрировано описываю как представляю.
Просьба поделиться инфой по поводу параллельной или последовательной работы ядре многоядерного процессора?
/# du -sch /*
11M /bin
4.0K /boot
20K /dev
16M /etc
356K /home
43M /lib
4.0K /lib64
16K /lost+found
4.0K /media
4.0K /mnt
4.0K /opt
0 /proc
23G /root
1.2M /run
5.7M /sbin
4.0K /srv
0 /sys
52K /tmp
5.7G /usr
926M /var
30G total
Пишет что 23G в root. Проверяем
# du -sch /root/*
90M /root/1
90M total
# df -k
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/ploop11307p1 30830500 30495960 0 100% /vz/root/243
# du -cms /* | sort -rn
29739 total
22996 /root
5742 /usr
926 /var
43 /lib
16 /etc
11 /bin
6 /sbin
2 /run
1 /tmp
1 /srv
1 /opt
1 /mnt
1 /media
1 /lost+found
1 /lib64
1 /home
1 /dev
1 /boot
0 /sys
0 /proc
# du -cms /root/* | sort -rn
90 total
90 /root/1
грохнул файл на фс ext4 . размер файла меньше килобайта +-800 байт
обычный текстовый ASCII файл , внутри xml
можно и под виндой утилиты
есть две таблицы в двух базах, сервер один.
в таблицы данные попадают с разных серверов у которых может отличаться время - до 5-10сек (не принципально на самом деле).
Как правильно связать строки из разных таблиц у которых два поля совпадают, а третьи поля таблиц «время» могут отличаться до десятков секунд
Создал контейнер openvz Debian11 штатными средствами viruozzo 7 и запускаются следующие процессы
root 1 0 0 Jul25 ? 00:00:02 init -z
root 63 1 0 Jul25 ? 00:00:12 /lib/systemd/systemd-journald
root 84 1 0 Jul25 ? 00:00:00 /lib/systemd/systemd-udevd
systemd+ 88 1 0 Jul25 ? 00:00:02 /lib/systemd/systemd-networkd
root 217 1 0 Jul25 ? 00:00:00 /usr/sbin/cron -f
message+ 218 1 0 Jul25 ? 00:00:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-ac
root 221 1 0 Jul25 ? 00:00:02 /usr/sbin/rsyslogd -n -iNONE
root 231 1 0 Jul25 ? 00:00:00 /lib/systemd/systemd-logind
root 233 1 0 Jul25 ? 00:00:49 /usr/bin/python3 /usr/bin/fail2ban-server -xf start
root 309 1 0 Jul25 ? 00:00:03 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root 507 1 0 Jul25 ? 00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 2
root 508 507 0 Jul25 ? 00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/run/saslauthd -n 2
Debian-+ 516 1 0 Jul25 ? 00:00:00 /usr/sbin/exim4 -bd -q30m
root 585 1 0 Jul25 ? 00:00:00 /usr/sbin/xinetd -pidfile /run/xinetd.pid -stayalive -inetd_compat -inetd_ipv6
root 36840 1 0 17:54 pts/0 00:00:00 -bash
root 41926 1 0 23:39 ? 00:00:00 /sbin/agetty -o -p -- \u --noclear tty2 linux
root 41927 1 0 23:39 ? 00:00:00 /sbin/agetty -o -p -- \u --noclear --keep-baud console 115200,38400,9600 linux
Что можно безболезненно деактивировать через sysyemctl кроме ssh,exim, fail2ban,cron ?
init - нонятно, что родитель всех процесов контейнера.
agetty - эта штука работает же с физическим (com) портом?
xinetd для чего запускается - если нет даже телнет сервера в системе? хотя и слушает только unix socket
server.cpp:81:66: error: invalid initialization of reference of type ‘const OctetStringPtr&’ {aka ‘const std::shared_ptr<std::vector<unsigned char> >&’} from expression of type ‘std::string’ {aka ‘std::__cxx11::basic_string<char>’}
Или что почитать грамотное про это?
Примерное ТЗ,с пониманием на текущий момент.
Есть библиотека(далее либа) компилируется под Debian10 и выше, есть пример ее использования. Исходники библиотеки не передаются (есть лицензионные условия ее пользования, возможно через подпись документов и можно будет передать, пока не знаю как), только заголовочные файлы, сама либа, пример ее использования,какие то доки к ней.
Либа представляет собой сервис(демон), у которого встроен интерфейс взаимодействия с внешним миром с такими же либами запущенными где то в интернете, либа должна работать в режиме 24х7. В фоне выполняет различные операции,пишет логи во время своей работы при взаимодействии с внешним миром, крутит внутренние шестренки. При первом запуске грузит много инфы с внешних серверов (10-15минут, так написано в документации).
Можно взять любой стабильный веб сервер из инета nginx или CrowCpp/Crow или другой соответствующий/подходящий для решения задачи) и внутрь его внедрить либу.
Иначе можно сказать - к либе прикручиваем HTTP server и выполняем код либы с HTTP server ом в оперативке в режиме 24х7.
Mожно в main web сервера засунуть запуск библиотеки и дергать ее API.
Алгоритм работы/взаимодействия с web сервером прикрученному к либе. Отправляем web серверу POST запрос с токеном и двумя строками, сервер переформатирует запрос и вызвает метод либы. Либа умеет работать асинхронно, через передачу методу запроса и коллбека. В случае ответа либы (вызвался коллбек), пишем данные из ответа в нужном формате (TXT|CSV) в файл с именем = токену. GET запросом к серверу забираем файл с токеном.
Логи пишем на ФС - тайминги когда пришел на сервер запрос с токеном, когда либа вызвала коллбек. С Вас исходники,компоновка, (Make файл), описание как все собрать с нуля,какие зависимости, репозиторий делаем на гитлаб (к примеру). Возможно лучше (сразу) сделать в doker контейнере.
Цена договорная, предлагайте.
Могу помогать чем смогу)))
думаю понятна задача, можно еще добавить что на этаже 4 ре квартиры, дом 20 этажей. Но это я думаю просто константы в формуле
засела задача, почти каждый день натыкаюсь на нее. Просто интересно.
Хотел обновить софт, а его разработчики переехали на новое окружение разработки, в т.ч. на новый компилятор и их софт со старым компилятором стал не совместим
https://bird.network.cz/pipermail/bird-users/2019-August/013642.html
Система установлена полностью из репов
в подключенных репах видно вот такой компилятор
mingw64-gcc-c++.x86_64 4.9.2-1.el6 epel
это эквивалент установленного gcc-4.4.7-18.el6.x86_64 ?
Как выйти из ситуации чтобы малой кровью решить задачу компиляции софта новым компилятором.
В системе есть еще модули, которые собирались нормально со старым компилятором и ломать это не нужно.
ядро в системе 4.12.0-1.el6.elrepo.x86_64
следующие → |