update rocky9 from gigacoms
This commit is contained in:
parent
29dcdc660d
commit
de4c5b68a7
7 changed files with 541 additions and 0 deletions
18
roles/rocky9/tasks/install-epel-repo.yml
Normal file
18
roles/rocky9/tasks/install-epel-repo.yml
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
---
|
||||||
|
- name: Enable EPEL repo
|
||||||
|
ansible.builtin.package:
|
||||||
|
name: epel-release
|
||||||
|
state: present
|
||||||
|
|
||||||
|
- name: Install soft from EPEL
|
||||||
|
ansible.builtin.package:
|
||||||
|
name:
|
||||||
|
- screen
|
||||||
|
- unrar
|
||||||
|
- htop
|
||||||
|
- btop
|
||||||
|
- atop
|
||||||
|
- iftop
|
||||||
|
- nethogs
|
||||||
|
- nload
|
||||||
|
state: present
|
||||||
26
roles/rocky9/tasks/ip_bridge.yml
Normal file
26
roles/rocky9/tasks/ip_bridge.yml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
---
|
||||||
|
# Отключение фильтрации на br интерфейсах. необходимо в некоторых случаях,
|
||||||
|
# когда NAT не правильно отрабатывает по таким интерфейсам
|
||||||
|
- name: Set net.bridge.bridge-nf-call-ip6tables
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.bridge.bridge-nf-call-ip6tables
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-bridge.conf
|
||||||
|
when: br_netfilter_status.stat.exists
|
||||||
|
|
||||||
|
- name: Set net.bridge.bridge-nf-call-iptables
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.bridge.bridge-nf-call-iptables
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-bridge.conf
|
||||||
|
when: br_netfilter_status.stat.exists
|
||||||
|
|
||||||
|
- name: Set net.bridge.bridge-nf-call-arptables
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.bridge.bridge-nf-call-arptables
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-bridge.conf
|
||||||
|
when: br_netfilter_status.stat.exists
|
||||||
68
roles/rocky9/tasks/ip_forward.yml
Normal file
68
roles/rocky9/tasks/ip_forward.yml
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
---
|
||||||
|
# Запрет на передачу пакетов через сервер (т.е. работу его как шлюза)
|
||||||
|
- name: Set net.ipv4.ip_forward
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.ip_forward
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
# Запрет на маршрутизацию на основе соответствующей опции в пакете (безопасность)
|
||||||
|
- name: Set net.ipv4.conf.default.accept_source_route
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.default.accept_source_route
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
# Если в таблице маршрутизации есть маршрут на сеть, с которой пришёл пакет (src ip)
|
||||||
|
# и он ссылается на данный интерфейс, то такой пакет будет принят.
|
||||||
|
# остальные будут отброшены.
|
||||||
|
# Когда rp_filter нужно отключать (0) или ослаблять (2):
|
||||||
|
# - Использование асимметричной маршрутизации (когда пакеты приходят через провайдера А, а уходят через провайдера Б).
|
||||||
|
# - Настройка сложных схем балансировки трафика (BGP, Multipath).
|
||||||
|
# - Использование политик маршрутизации (Policy Based Routing via ip rule).
|
||||||
|
# При строгом режиме 1 ядро проверяет обратный путь по дефолтной таблице main,
|
||||||
|
# игнорируя кастомные таблицы, что приводит к ложному отбрасыванию пакетов.
|
||||||
|
- name: Set net.ipv4.conf.default.rp_filter
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.default.rp_filter
|
||||||
|
value: 2
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
- name: Set net.ipv4.conf.all.rp_filter
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.all.rp_filter
|
||||||
|
value: 2
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
- name: Set net.ipv4.conf.lo.rp_filter
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.lo.rp_filter
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
- name: Set net.ipv4.conf.all.send_redirects
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.all.send_redirects
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
- name: Set net.ipv4.conf.default.send_redirects
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.default.send_redirects
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
reload: true
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
|
|
||||||
|
- name: Set net.ipv4.conf.all.accept_redirects
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.conf.all.accept_redirects
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/03-ip_forward.conf
|
||||||
95
roles/rocky9/tasks/kernel_tune.yml
Normal file
95
roles/rocky9/tasks/kernel_tune.yml
Normal file
|
|
@ -0,0 +1,95 @@
|
||||||
|
---
|
||||||
|
# Remove kernel.panic entry from /etc/sysctl.conf
|
||||||
|
- name: Set kernel.panic
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.panic
|
||||||
|
state: absent
|
||||||
|
sysctl_file: /etc/sysctl.conf
|
||||||
|
# Отключаем отслеживание ядром нажатие специальных сочетаний клавиш
|
||||||
|
- name: Set kernel.sysrq
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.sysrq
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
|
||||||
|
# Добавление к файлу дампа ядра PID процесса
|
||||||
|
- name: Set kernel.core_uses_pid
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.core_uses_pid
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Здесь указывается максимальное количество байт в одном сообщении при передачи их между процессами
|
||||||
|
- name: Set kernel.msgmnb
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.msgmnb
|
||||||
|
value: 65536
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Здесь определяется максимальный размер сообщения, которое может быть отправлено от одного процесса другому.
|
||||||
|
- name: Set kernel.msgmax
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.msgmax
|
||||||
|
value: 65536
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
|
||||||
|
# Максимальный размер (в байтах) на сегменте shared memory.
|
||||||
|
- name: Set kernel.shmmax
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.shmmax
|
||||||
|
value: 68719476736
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Общее количество разделяемой памяти (в страницах), какое все процессы на сервере могут использовать.
|
||||||
|
- name: Set kernel.shmall
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: kernel.shmall
|
||||||
|
value: 4294967296
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
|
||||||
|
# Лимит одновременно открытых файлов в системе
|
||||||
|
- name: Set fs.file-max
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: fs.file-max
|
||||||
|
value: 1000000
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
|
||||||
|
# Максимальный размер буфера приема данных для всех соединений.
|
||||||
|
- name: Set net.core.rmem_max
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.rmem_max
|
||||||
|
value: 33554432
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Максимальный размер буфера передачи данных для всех соединений.
|
||||||
|
- name: Set net.core.wmem_max
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.wmem_max
|
||||||
|
value: 33554432
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Размер буфера приема данных по умолчанию для всех соединений.
|
||||||
|
- name: Set net.core.rmem_default
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.rmem_default
|
||||||
|
value: 8388608
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Размер буфера передачи данных по умолчанию для всех соединений.
|
||||||
|
- name: Set net.core.wmem_default
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.wmem_default
|
||||||
|
value: 4194394
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
|
# Максимальный размер буфера приема данных для всех соединений.
|
||||||
|
- name: Set net.core.optmem_max
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.optmem_max
|
||||||
|
value: 40960
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/01-kernel.conf
|
||||||
7
roles/rocky9/tasks/logrotate.yml
Normal file
7
roles/rocky9/tasks/logrotate.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
- name: Set logrotate rsyslog
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: logrotate-rsyslog.j2
|
||||||
|
dest: /etc/logrotate.d/rsyslog
|
||||||
|
mode: "0644"
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
262
roles/rocky9/tasks/tcp_tune.yml
Normal file
262
roles/rocky9/tasks/tcp_tune.yml
Normal file
|
|
@ -0,0 +1,262 @@
|
||||||
|
# TCP syncookies - технология, позволяющая не забивать
|
||||||
|
# TCP стек, пока TCP сессия полностью не установится.
|
||||||
|
# Защита на случай TCP Syn атак
|
||||||
|
# Согласно рекомендациям разработчиков ядра, этот режим лучше отключить.
|
||||||
|
# http://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt
|
||||||
|
- name: Set net.ipv4.tcp_syncookies
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_syncookies
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
|
||||||
|
# Векторная (минимум, по умолчанию, максимум) переменная в файле tcp_rmem содержит 3 целых числа, определяющих размер буфера сокетов TCP/UDP.
|
||||||
|
# Минимум: каждый сокет TCP имеет право использовать эту память по факту своего создания. Возможность использования такого буфера гарантируется
|
||||||
|
# даже при достижении порога ограничения (moderate memory pressure). Размер минимального буфера по умолчанию составляет 8 Кбайт (8192).
|
||||||
|
# Значение по умолчанию: количество памяти, допустимое для буфера передачи сокета TCP по умолчанию. Это значение применяется взамен параметра
|
||||||
|
# /proc/sys/net/core/rmem_default, используемого другими протоколами. Значение используемого по умолчанию буфера обычно (по умолчанию)
|
||||||
|
# составляет 87830 байт. Это определяет размер окна 65535 с заданным по умолчанию значением tcp_adv_win_scale и tcp_app_win = 0, несколько
|
||||||
|
# меньший, нежели определяет принятое по умолчанию значение tcp_app_win.
|
||||||
|
# Максимум: максимальный размер буфера, который может быть автоматически выделен для приема сокету TCP. Это значение не отменяет максимума,
|
||||||
|
# заданного в файле /proc/sys/net/core/rmem_max. При “статическом” выделении памяти с помощью SO_RCVBUF этот параметр не имеет значения.
|
||||||
|
# На приём TCP пакетов
|
||||||
|
- name: Set net.ipv4.tcp_rmem
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_rmem
|
||||||
|
value: 4096 8388608 16777216
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# На передачу TCP пакетов
|
||||||
|
- name: Set net.ipv4.tcp_wmem
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_wmem
|
||||||
|
value: 4096 4194394 16777216
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Для TCP протокола в целом
|
||||||
|
- name: Set net.ipv4.tcp_mem
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_mem
|
||||||
|
value: 8388608 12582912 16777216
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Для UDP протокола в целом
|
||||||
|
- name: Set net.ipv4.udp_mem
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.udp_mem
|
||||||
|
value: 8388608 12582912 16777216
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
- name: Set net.ipv4.udp_rmem_min
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.udp_rmem_min
|
||||||
|
value: 16384
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
- name: Set net.ipv4.udp_wmem_min
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.udp_wmem_min
|
||||||
|
value: 16384
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Параметр определяет максимальное количество пакетов в очереди на обработку, если интерфейс получает пакеты быстрее, чем ядро может их обработать.
|
||||||
|
- name: Set net.core.netdev_max_backlog
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.netdev_max_backlog
|
||||||
|
value: 500000
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Максимальное число запоминаемых запросов на соединение (TCP Syn), для которых не было получено подтверждения от подключающегося клиента.
|
||||||
|
- name: Set net.ipv4.tcp_max_syn_backlog
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_max_syn_backlog
|
||||||
|
value: 5480000
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Увеличим возможное количество сокетов в состоянии TIME_WAIT.
|
||||||
|
- name: Set net.ipv4.tcp_max_tw_buckets
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_max_tw_buckets
|
||||||
|
value: 5480000
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Разрешаем повторное использование TIME-WAIT сокетов в случаях, если протокол считает это безопасным.
|
||||||
|
- name: Set net.ipv4.tcp_tw_reuse
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_tw_reuse
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
|
||||||
|
# Разрешаем быструю утилизацию сокетов находящихся в состоянии TIME_WAIT DEPRICATRED
|
||||||
|
# - ansible.posix.sysctl:
|
||||||
|
# name: net.ipv4.tcp_tw_recycle
|
||||||
|
# value: 1
|
||||||
|
# state: present
|
||||||
|
# sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
|
||||||
|
# Параметр tcp_fin_timeout определяет время сохранения сокета в состоянии FIN-WAIT-2 после его закрытия локальной стороной.
|
||||||
|
# Партнер может не закрыть это соединение никогда.
|
||||||
|
- name: Set net.ipv4.tcp_fin_timeout
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_fin_timeout
|
||||||
|
value: 3
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Разрешить выборочные подтверждения протокола TCP. Опция необходима для эффективного использования всей доступной
|
||||||
|
# пропускной способности некоторых сетей
|
||||||
|
- name: Set net.ipv4.tcp_sack
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_sack
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Число попыток повтора передачи пакетов SYNACK для пассивных соединений TCP.
|
||||||
|
- name: Set net.ipv4.tcp_synack_retries
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_synack_retries
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Определяет максимальное число допустимых в системе сокетов TCP, не связанных каким-либо идентификатором пользовательского файла (user file handle).
|
||||||
|
- name: Set net.ipv4.tcp_max_orphans
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_max_orphans
|
||||||
|
value: 65536
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Определяется число неудачных попыток, после которого уничтожается соединение TCP, закрытое на локальной стороне.
|
||||||
|
- name: Set net.ipv4.tcp_orphan_retries
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_orphan_retries
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Проверка наличия подключения по средствам keepalive сообщений. Активируется только для тех сокетов, которые были созданы с флагом SO_KEEPALIVE.
|
||||||
|
# Через какой промежуток времени после установки подключения начать слать keepalive сообщения (в сек)
|
||||||
|
- name: Set net.ipv4.tcp_keepalive_time
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_keepalive_time
|
||||||
|
value: 600
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Интервал, с которым слать keepalive пакеты (в сек)
|
||||||
|
- name: Set net.ipv4.tcp_keepalive_intvl
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_keepalive_intvl
|
||||||
|
value: 20
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# После скольки неудачных пробах считать соединение разорванным
|
||||||
|
- name: Set net.ipv4.tcp_keepalive_probes
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_keepalive_probes
|
||||||
|
value: 2
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Запрещаем технологию slow start (малый размер окна) в TCP подключениях,
|
||||||
|
# в которых долгое время не было трафика.
|
||||||
|
- name: Set net.ipv4.tcp_slow_start_after_idle
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_slow_start_after_idle
|
||||||
|
value: 0
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Увеличиваем диапазон локальных портов, доступных для установки исходящих подключений.
|
||||||
|
- name: Set net.ipv4.ip_local_port_range
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.ip_local_port_range
|
||||||
|
value: 2000 65000
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Разрешает временные метки протокола TCP. Их наличие позволяет управлять работой протокола в условиях серьезных нагрузок.
|
||||||
|
- name: Set net.ipv4.tcp_timestamps
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_timestamps
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Параметр отвечающий за алгоритмы сегментации TCP пакетов при передаче данных.
|
||||||
|
# Cubic - алгоритм для высоконагруженных систем, но более структурированный, нежели BIC.
|
||||||
|
# Включён по умолчанию в linux ядре начиная с версии 2.6.19
|
||||||
|
# BBR - Алгоритм от Гугла, получайте максимальную скорость, если у вас широкий канал
|
||||||
|
- name: Set net.ipv4.tcp_congestion_control
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_congestion_control
|
||||||
|
value: bbr
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Параметр определяет дисциплину обработки очередей
|
||||||
|
# FQ делят пропускную способность между всеми соединениями, даёт лучшую пропускную способность в связке с BBR
|
||||||
|
- name: Set net.core.default_qdisc
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.default_qdisc
|
||||||
|
value: "fq"
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
|
||||||
|
# Не сохранять результаты измерений TCP соединения в кеше при его закрытии
|
||||||
|
- name: Set net.ipv4.tcp_no_metrics_save
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_no_metrics_save
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Разрешаем динамическое изменение размера окна TCP стека (окно увеличивается, если не было потерь
|
||||||
|
# пакетов при передаче в рамках TCP подключения)
|
||||||
|
- name: Set net.ipv4.tcp_window_scaling
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_window_scaling
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Защита от TIME_WAIT атак.
|
||||||
|
- name: Set net.ipv4.tcp_rfc1337
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.tcp_rfc1337
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Не отвечаем на ICMP ECHO запросы, переданные на широковещательный адрес.
|
||||||
|
- name: Set net.ipv4.icmp_echo_ignore_broadcasts
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.icmp_echo_ignore_broadcasts
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Не отвечаем на ошибочно сформированные сообщения.
|
||||||
|
- name: Set net.ipv4.icmp_ignore_bogus_error_responses
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.ipv4.icmp_ignore_bogus_error_responses
|
||||||
|
value: 1
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
# Максимальное число открытых сокетов, ждущих соединения.
|
||||||
|
# Максимум в CentOS 7
|
||||||
|
- name: Set net.core.somaxconn
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.core.somaxconn
|
||||||
|
value: 65535
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-tcp.conf
|
||||||
|
|
||||||
|
- name: Set net.netfilter.nf_conntrack_max
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.netfilter.nf_conntrack_max
|
||||||
|
value: 524288
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-udp.conf
|
||||||
|
|
||||||
|
- name: Set net.netfilter.nf_conntrack_udp_timeout
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.netfilter.nf_conntrack_udp_timeout
|
||||||
|
value: 10
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-udp.conf
|
||||||
|
|
||||||
|
- name: Set net.netfilter.nf_conntrack_udp_timeout_stream
|
||||||
|
ansible.posix.sysctl:
|
||||||
|
name: net.netfilter.nf_conntrack_udp_timeout_stream
|
||||||
|
value: 30
|
||||||
|
state: present
|
||||||
|
sysctl_file: /etc/sysctl.d/02-udp.conf
|
||||||
65
roles/rocky9/templates/logrotate-rsyslog.j2
Normal file
65
roles/rocky9/templates/logrotate-rsyslog.j2
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
/var/log/cron {
|
||||||
|
daily
|
||||||
|
rotate {{ logrotate_interval }}
|
||||||
|
size 50M
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl reload rsyslog.service 2> /dev/null || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
/var/log/maillog {
|
||||||
|
daily
|
||||||
|
rotate {{ logrotate_interval }}
|
||||||
|
size 50M
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl reload rsyslog.service 2> /dev/null || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
/var/log/secure {
|
||||||
|
daily
|
||||||
|
rotate {{ logrotate_interval }}
|
||||||
|
size 50M
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl reload rsyslog.service 2> /dev/null || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
/var/log/spooler
|
||||||
|
{
|
||||||
|
daily
|
||||||
|
rotate {{ logrotate_interval }}
|
||||||
|
compress
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl -s HUP kill rsyslog.service >/dev/null 2>&1 || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
|
|
||||||
|
/var/log/messages {
|
||||||
|
daily
|
||||||
|
rotate {{ logrotate_interval }}
|
||||||
|
size 50M
|
||||||
|
compress
|
||||||
|
delaycompress
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
sharedscripts
|
||||||
|
postrotate
|
||||||
|
/usr/bin/systemctl reload rsyslog.service 2> /dev/null || true
|
||||||
|
endscript
|
||||||
|
}
|
||||||
Loading…
Reference in a new issue