Skip to main content

System

The Configuration reference section provides the full configuration reference and the sections following after provide examples and important notes regarding the system configuration.

Configuration reference

Anapaya appliance configuration (system only)

system object

The necessary configuration data for the system of the Anapaya appliance.

dns object

Anapaya appliance DNS configuration.

servers object[]

List of DNS servers.

  • Array [
  • addressstring<ip-address>

    IP address of a DNS server.

  • ]
  • kernel object

    Anapaya appliance Linux kernel configuration.

    hugepage_sizestring

    Size of hugepages the kernel should allocate at boot time.

    Default value: 2M
    hugepagesinteger<uint16>

    Number of hugepages the kernel should allocate at boot time. If not set, a sensible default is used based on the available memory.

    iommu_enabledboolean

    Whether the IOMMU subsystem in the Linux kernel is enabled. IOMMU should be enabled on systems that support it for better performance. Note: After changing this option the appliance needs to be rebooted.

    Default value: false
    ntp object

    Anapaya appliance NTP configuration.

    root_distance_maxstring<duration-string>

    Maximum acceptable root distance, i.e. the maximum estimated time required for a packet to travel to the server we are connected to from the server with the reference clock. If the current server does not satisfy this limit, the appliance will switch to a different server.

    Default value: 5s
    Example: 1s
    servers object[]

    List of NTP servers.

  • Array [
  • addressstring<union>

    Address of a NTP server. This may be expressed as an IP address or a FQDN.

  • ]
  • resources object

    Anapaya appliance system resources configuration.

    core_dump object

    Configuration for core dumps.

    keepinteger<uint32>

    The number of core dumps to keep. The appliance periodically deletes the least recent core dumps until this number is met.

    Default value: 3
    service_limits object[]

    Configuration for per service resource limits.

  • Array [
  • cpunumber<double>

    The CPU limit in number of fractional CPU cores that can be used by the service. If not specified, a sensible default is chosen by the system. If set to 0, the service is not limited in terms of CPU usage.

    Example: 1.5
    memorystring

    The memory limit in bytes that can be used by the service. The limit can be specified using a string of the format , where suffix can either be empty or one of 'K', 'k', 'M', 'm', 'G', 'g' or 'T', 't'. Note that the step between the suffixes is 1024. If not specified, a sensible default is chosen by the system. If set to 0, the service is not limited in terms of memory usage. The minimum value is 6M.

    Example: 2.5G
    namestringrequired

    Name of the service.

    Possible values: [CA_FRONTEND, CONTROL, CRON, DAEMON, DATAPLANE, DATAPLANE_CONTROL, DISPATCHER, FRR, FRR_EXPORTER, GATEWAY, MOLE, NODE_EXPORTER, PROMTAIL, ROUTER, TELEMETRY, SHUTTLE, SHUTTLE_SERVER]

  • ]
  • vpp object

    Anapaya appliance VPP configuration.

    buffers object

    Buffers configuration.

    data_sizeinteger<int32>

    The size of VPP internal buffers, in bytes.

    Default value: 9000
    num_buffersinteger<int32>

    The number of VPP internal buffers. If set to 0, a 3/4 of the available hugepages are used for buffers.

    Default value: 0
    connection object

    Connection configuration.

    health_check object

    Health check configuration.

    probe_intervalstring<duration-string>

    The interval in which a health check probe is sent to the VPP dataplane. It requires a unit suffix out of ['d', 'h', 'm', 's', 'ms', 'us', 'ns']. The encoding consists of a decimal number concatenated with a suffix; for example, '5us', '10m', '12h', and '1d'.

    Default value: 1s
    Example: 1s
    reply_timeoutstring<duration-string>

    The time in which VPP control services expect a reply from the VPP dataplane. It requires a unit suffix out of ['d', 'h', 'm', 's', 'ms', 'us', 'ns']. The encoding consists of a decimal number concatenated with a suffix; for example, '5us', '10m', '12h', and '1d'.

    Default value: 250ms
    Example: 250ms
    thresholdinteger<uint32>

    The number of health checks, from VPP control services to the VPP dataplane, that are allowed to time out before the connection is considered dead.

    Default value: 20
    Example: 20
    reconnect_attemptsinteger<uint32>

    The number of connect attempts on start from VPP control services to the VPP dataplane.

    Default value: 10
    Example: 10
    reconnect_intervalstring<duration-string>

    The interval at which a connection is attempted on start from VPP control services to the VPP dataplane. It requires a unit suffix out of ['d', 'h', 'm', 's', 'ms', 'us', 'ns']. The encoding consists of a decimal number concatenated with a suffix; for example, '5us', '10m', '12h', and '1d'.

    Default value: 1s
    Example: 1s
    cpu object

    CPU configuration.

    corelist_workersstring

    The list of CPU cores to be used by the workers. The cores are pinned to the workers in the order they are listed. The format for the list is A,B1-Bn,C1-Cn. This setting is mutually exclusive with workers and the list must not contain the main-core.

    Example: 2-3,5
    main_coreinteger<int32>

    The logical CPU core where main thread runs.

    Default value: 1
    workersinteger<int32>

    The number of workers to be created for VPP. The workers are pinned to consecutive CPU cores. If set to 0, packet processing is performed by the main-core

    poll_sleepstring<duration-string>

    The fixed-sleep between main loop polls in the VPP dataplane. It requires a unit suffix out of ['d', 'h', 'm', 's', 'ms', 'us', 'ns']. The encoding consists of a decimal number concatenated with a suffix; for example, '5us', '10m', '12h', and '1d'. Setting it to 0 disables the fixed-sleep.

    Default value: 0s
    statseg object

    Statseg configuration.

    sizestring

    The size of the statseg segment. This can be specified in bytes with a suffix of kilo 'K', mega 'M', or giga 'G'. WARNING: Changing this value causes the dataplane to restart and therefore interrupts traffic.

    Default value: 32M
    Example: 100M
    tun object

    TUN configuration.

    mtuinteger<uint16>

    The MTU (Maximum Transmission Unit) to be used on this TUN.

    Default value: 1500
    Example: 1500
    prefixesstring<ip-prefix>[]

    The list of prefixes to route from VPP to Linux.

    Example: ["192.168.1.0/24"]

    Operating system

    Loading...
    tip

    Use the following command to find out if the appliance host supports IOMMU:

    find /sys | grep dmar

    It should report a non-empty list of devices.

    Managing system resources

    Loading...

    Vector Packet Processor (VPP)

    danger

    Modify these values only if you know the consequences. In case you have any questions, reach out to customer-support@anapaya.net.

    Loading...