diff --git a/roles/install-stcp/README.md b/roles/install-stcp/README.md index e69de29..6c71d13 100644 --- a/roles/install-stcp/README.md +++ b/roles/install-stcp/README.md @@ -0,0 +1,104 @@ +# Роль install-stcp + +Данная роль предназначена для автоматической установки STCP-сервера. + +## Параметры + +| Параметр | Описание | +| -------- | -------- | +| server_port | Начальный порт, на котором работает STCP-server +| links_number | Количество линков агрегации +| start_ip_addr | Начальный адрес линков +| internal_links_name | Шаблон имени линка +| ext_iface | Внешний интерфейс +| stcp_mode | Режим работы STCP-сервера {tun, tap} +| stcp_runas | Имя пользователя, от которого запускается сервер +| use_auth | Использование аутентификации {yes, no} +| use_client_logging | Использование логирования подключений {yes, no} +| en_tap_iface | Включение TAP-интерфейса {yes, no} +| tap_iface_name | Имя TAP-интерфейса +| tap_iface_ip_addr | IP-адрес TAP-интерфейса +| tap_iface_ip_mask | IP-маска TAP-интерфейса +| en_tun_iface | Включение TUN-интерфейса {yes, no} +| tun_iface_name | Имя TUN-интерфейса +| tun_iface_ip_addr | IP-адрес TUN-интерфейса +| tun_iface_ip_mask | IP-маска TUN-интерфейса + +В директори defaults/ содержится ряд дополнительных параметров. В основном это пути расположения исполняемого файла STCP-сервера, скриптов запуска и т.п., а также настройки сервера по умолчанию, их можно переопределить: +``` +# defaults file for install-stcp +stcp_base_dir: /opt/stcp +stcp_binary_path: '{{stcp_base_dir}}/multi_srv_raw' +stcp_instance_name: '{{ server_port }}_{{ server_port + links_number-1 }}' +stcp_instance_dir: '{{ stcp_base_dir }}/{{ stcp_instance_name }}' +loop_script_path: '{{stcp_base_dir}}/loop' +init_scripts_dir: /etc/init.d +clients_log_file_path: '{{ stcp_instance_dir }}/logc' +users_file_path: '{{ stcp_instance_dir }}/users.ini' + +# default stcp conf settings +stcp_mtu_size: 1500 +en_peer_to_peer: 1 +en_print_info: 1 +stcp_http_srv_addr: 127.0.0.1 +stcp_http_srv_port: 1888 +max_sessions_threshold: 8 +min_sessions_threshold: 4 +flush_sort_delay_max: 600000 +flush_sort_delay_min: 200000 +flush_sort_add_time: 100000 +split_tcp_sessions: 2 +``` + +## Применение + +Пример ansible playbook, использующего эту роль приведён ниже. В данном случае создаётся два инстанса STCP-сервера в режиме TUN c указаными параметрами. + +``` +- name: Install fully worked (I hope) STCP server + hosts: test + become: yes + + roles: + - role: install-stcp + server_port: 5006 + links_number: 8 + start_ip_addr: 192.168.56.34 + internal_links_name: stcp-5006- + ext_iface: eth0 + stcp_mode: tun + stcp_runas: root + use_auth: no + use_client_logging: yes + #stcp_tuntaps + en_tap_iface: no + tap_iface_name: 'tap_{{ stcp_instance_name }}' + tap_iface_ip_addr: 10.10.1.1 + tap_iface_ip_mask: 255.255.255.0 + + en_tun_iface: yes + tun_iface_name: 'tun_{{ stcp_instance_name }}' + tun_iface_ip_addr: 10.11.1.1 + tun_iface_ip_mask: 255.255.255.0 + + - role: install-stcp + server_port: 4998 + links_number: 8 + start_ip_addr: 192.168.56.2 + internal_links_name: stcp-4998- + ext_iface: eth0 + stcp_mode: tun + stcp_runas: root + use_auth: no + use_client_logging: yes + #stcp_tuntaps + en_tap_iface: no + tap_iface_name: 'tap_{{ stcp_instance_name }}' + tap_iface_ip_addr: 10.10.0.1 + tap_iface_ip_mask: 255.255.255.0 + + en_tun_iface: yes + tun_iface_name: 'tun_{{ stcp_instance_name }}' + tun_iface_ip_addr: 10.11.0.1 + tun_iface_ip_mask: 255.255.255.0 +``` \ No newline at end of file