9. Описание конфигурационного файла

9.1. Общие настройки

Параметр

Пример и/или возможные значения

Описание

aux_core

0

Ядро, которое будет заниматься обработкой AUX-потока.

aux_sleep_interval

100

Период в микросекундах, с которым выполняется AUX-поток.

worker_cores

7,8,9

Ядра, на которых будут запущены потоки Worker. Это основные Data Plane потоки, которые выполняют всю логику приложения (балансировка, маршрутизация и т.д.).

log_level

EMERG / ALERT / CRIT / ERR / WARNING / NOTICE / INFO / DEBUG

Уровень логирования DPDK и балансировщика.

log_type

MALLOC|RING / EAL / MALLOC / RING / MEMPOOL / TIMER / PMD / HASH / LPM / KNI / ACL / POWER / METER / SCHED / PORT / TABLE / PIPELINE

Задается тип логирования DPDK, а именно логи каких подсистем будут записываться в журнал.

conn_hash_bits

24

Задать размер [1] таблицы соединений. (default: 24)

mbuf_factor

20

Задать размер [2] MBUF-пулa. (default: 20)

services_factor

20

Задать размер таблицы сервисов. (default:20)

persistence_factor

16

Задать размер таблицы Persistence. (default:20)

nd_dest_factor

12

Задать размер neighbour (ARP) таблицы. (default: 12)

sync_via_socket

0 - использовать socket API 1 - использовать DPDK

Синхронизировать информацию о соединениях и persistence c Master node на Backup через socket API. (default: 0) Для синхронизации соедине ний есть 2 вида транспорта - Socket API и DPDK. Socket API - обычные UPD сокеты (рекомендованный вариант), в случае DPDK vLB самостоятельно формирует Ethernet-пакеты.

backup_via_socket

0

Принимать сообщения синхронизации через Socket API (default: 0). Настройка учитывается только в случае, если sync_via_socket = 0.

master_via_socket

0

Отправлять сообщения синхронизации через Socket API (default: 0). Настройка учитывается только в случае, если sync_via_socket = 0.

9.2. Конфигурация сетевых интерфейсов

$i - непрерывный счетчик; идет по порядку, начиная с 0. Если номер пропущен, то следующие интерфейсы не читаются

Параметр

Пример и/или возможные значения

Описание

if$i_name

eth2

Имя интерфейса в ОС Linux. При запуске vLB создаст виртуальный интерфейс с указанным именем для возможности коммуникации со сторонними приложениями (keepalived, например).

if$i_pci_addr

0000:02:00.0

PCI-адрес реального интерфейса.

if$i_no_kni

  • 0 - будет виден

  • 1 - не будет виден

Видимость интерфейса в OC Linux.

if$i_socket

0

Задать руками номер NUMA-ноды, к которой привязан интерфейс. Если не задавать, то сокет будет определен автоматически.

if$i_cores

1, 2, 3, 4

Список ядер, которые будут обрабатывать интерфейс (должны быть с той же NUMA-ноды, что и интерфейс).

9.3. Конфигурация LACP

$i - непрерывный счетчик; идет по порядку, начиная с 0. Если номер пропущен, то следующие интерфейсы не читаются

Параметр

Пример и/или возможные значения

Описание

bond$i_name

bond0

Имя LACP интерфейса в OC Linux.

bond$i_cores

5, 6, 7

Список ядер, которые будут обрабатывать LACP интерфейс.

bond$i_slaves

eth2, eth3

Список Slave интерфейсов для создания LACP.