pg_chameleon is a MySQL to PostgreSQL replica system written in Python 3. The tool can connect to the mysql replication protocol and replicate the data changes in PostgreSQL. Whether the user needs to setup a permanent replica between MySQL and PostgreSQL or perform an engine migration, pg_chamaleon is the perfect tool for the job.
Автор: skeletor
AQUATONE is a set of tools for performing reconnaissance on domain names. It can discover subdomains on a given domain by using open sources as well as the more common subdomain dictionary brute force approach. After subdomain discovery, AQUATONE can then scan the hosts for common web ports and HTTP headers, HTML bodies and screenshots can be gathered and consolidated into a report for easy analysis of the attack surface.
https://github.com/michenriksen/aquatone/
Приведу цитатой, которую нашёл в рассылке по Illumos
Поддержка этой опции есть пока в Illumos/Linux (FreeBSD/Solaris пока её не имеют). Эта опция позволяет пропускать ошибки чтения/записи при переносе повреждённого снепшота (очень спасает, если у вас повредился пул, а данные с него нужно вытащить).
Очень часто это является проблемой при построении редиректов, когда у вас больше 1 домена. Следующая конструкция выглядит работоспособной:
return 301 https://$server_name$request_uri;
Всё работает, когда у вас всего 1 домен в server_name. А когда 2 и больше, то для них redirect работает не правильно (он редиректит на самый первый домен в server_name). А всё потому, что нужно вместо $server_name использовать хост. В документации написано следующее:
- $server_name: имя сервера, принявшего запрос
- $host: в порядке приоритета: имя хоста из строки запроса, или имя хоста из поля “Host” заголовка запроса, или имя сервера, соответствующего запросу
[linux] Слушаем “не свои” интерфейсы
# sysctl net.ipv4.ip_nonlocal_bind=1
Данная опция позволяет bind на не свои IP-адреса.
Где используется:
- LoadBalancing (keepalived)
- тестирование
Был один сервер и на нём, в зеркальном пуле вывалился один из дисков. В момент замены и процесса перестроения вылетает второй диск. Немного не штатная ситуация, но я дождался окончания перестроения, удалил файлы, на которые ругался пул, сделал ему scrub, ошибки с диска пропали, но пул всё равно в состоянии degraded (так как диск второй вылетел). Выключаю сервер, меняю диск и тут на тебе: не грузится (не найдет загрузочный диск).
REUSEPORT
Что такое REUSEPORT? Если кратко, то в много поточном приложении позволяет каждому потоку напрямую привязаться к tcp socket’y (адрес:порт). Это позволяет быстрее принимать пакеты (без REUSEPORT пришлось бы получать пакеты через мастер-процесс).
В статье рассмотрим, как можно узнать/понять, использует ли ваше приложение REUSEPORT штатными средствами ОС. О том, как обстоит поддержка REUSEPORT в разных ОС написана очень неплохая статья, но вот касательно Solaris данные там устаревшие.
Если значения по умолчанию вам не очень подходят:
int zfs_top_maxinflight = 32; /* maximum I/Os per top-level */ int zfs_resilver_delay = 2; /* number of ticks to delay resilver */ int zfs_scrub_delay = 4; /* number of ticks to delay scrub */ int zfs_scan_idle = 50; /* idle window in clock ticks */ int zfs_scan_min_time_ms = 1000; /* min millisecs to scrub per txg */ int zfs_free_min_time_ms = 1000; /* min millisecs to free per txg */ int zfs_resilver_min_time_ms = 3000; /* min millisecs to resilver per txg */ int zfs_no_scrub_io = B_FALSE; /* set to disable scrub i/o */ int zfs_no_scrub_prefetch = B_FALSE; /* set to disable srub prefetching */
Цитату взял с рассылки про nginx и привожу как есть:
С reload’ом на Linux’е имеется достаточно типичная проблема: в
отличие от других операционных систем, linux не позволяет
одновременно открыть listen-сокеты на *:80 и <ip>:80.