NVIDIA UFM Cable Validation Tool v1.8.1

CVT Configuration

This document outlines the configuration options available in the cvt_env.conf file, which controls various aspects of the Cable Validation Tool (CVT) collector and agent behavior.

Configuring CVT

CVT can be configured through two primary methods:

  1. Environment Variables: Setting system-level environment variables.

  2. Configuration File (cvt_env.conf): Defining variables within the cvt_env.conf file.

Precedence

When a configuration option is defined in both the environment variables and the cvt_env.conf file, environment variables take precedence over the values specified in the configuration file.

For example, if AGENT_COLLECT_INTERVAL is set to 300 in your shell's environment variables and to 600 in cvt_env.conf, CVT will use 300 as the collection interval.

Changing Configuration

  • Via Configuration File: To apply changes made to the cvt_env.conf file, you must edit the file and then restart the CVT service: supervisorctl restart cvt-service

  • Via Environment Variables: To apply changes using environment variables, you need to set the environment variables in the Docker container run command when launching the CVT service.

    • Example: docker run --name cables_bringup -itd --env VAR1=value1 --env VAR2=value2 --network=host mellanox/cables_bringup:<version>

Network Configuration

Variable

Description

Default

AGENTS_COLLECTOR_NAT_IP

Collector External (NAT) IP address. Define this if there is a NAT between the collector and the agents. This IP is used by agents to fetch images and send data/reports.

Empty (no NAT configured)

AGENTS_COLLECTOR_NAT_PORT

NAT port is used for port-forwarding from K8s or other intermediate networks to the collector. If the port is empty, CVT will use the https port of the collector (APACHE_HTTPS_PORT) or default 443

Empty (default is APACHE_HTTPS_PORT or 443)

DEFAULT_AGENTS_INTERFACE_NAME

Interface name of the collector over which all agents (switch and host) communicate. The IP of this interface is used by agents to fetch images and send data/reports.

Empty (IP of default interface is used)

HOST_SPECIFIC_INTERFACE_NAME

Use if a different interface is desired for host agents, separate from DEFAULT_AGENTS_INTERFACE_NAME. The IP of this interface is used by host agents to communicate with the collector.

Empty (uses same interface as DEFAULT_AGENTS_INTERFACE_NAME)


Variable

Description

Value / Unit

Default

Constraints

CV_DOT_IN_HOSTNAME

Set to true if the switch hostname contains a dot (other than the domain part).

Boolean

Empty (implies false)

FULL_REPORT_PUBLISH_INTERVAL_MINUTES

Time after which a full report is forced to be published.

Minutes

720 (12 hours)

Interval less than 10 minutes is not supported

AMBER_PUBLISH_EACH_ITERATION

Set to true to publish amber data on each agent iteration, regardless of changes.

Boolean

false

AGENT_COLLECT_INTERVAL

Agent data collection interval. Controls how often the agent collects and processes port/link data.

Seconds

600 (10 minutes)

NVLINK_VALIDATION

Enable/Disable nvlink addition and validation for gb200/300 nodes.

Boolean

true

CUSTOM_AMBER_FIELDS

Allows users to dynamically specify additional raw amber fields or processed agent attributes to be captured and reported without requiring any modifications to the core source code.

Example: CUSTOM_AMBER_FIELDS = transceiver_reinsert_cnt, transceiver_swap_cnt, Advanced_Status_Opcode

Comma separated strings

Empty

CHECK_PORTS_INTERVAL

Interval to check ports in seconds (default 10 seconds). This controls how often the agent checks the ports for changes.

Seconds

10 sec

MAX_AUTH_FAILURE_INTERVAL

Maximum interval between authentication failures in seconds (default 10 minutes) interval starts from 10 seconds and doubles every failure, till it reaches the maximum interval

Seconds

600 (10 minutes)

Variable

Description

Value / Unit

Default

Constraints / Notes

MAX_INACTIVE_INTERVAL

Maximum time to wait for an agent to become inactive.

Minutes

15

CHECK_NEW_SWITCHES_INTERVAL

Interval to check for new switches.

Minutes

15

START_VALIDATION_TIMEOUT

Time to wait for an agent to become active after starting validation.

Minutes

5

WAIT_TIME_INACTIVE_AGENTS

Time to wait for an agent to become inactive.

Minutes

1

CVT_MAX_WORKERS

Maximum number of workers to run in parallel for general operations (validation, connectivity, DNS).

30

CVT_DEPLOYMENT_MAX_WORKERS

Maximum number of workers for agent deployment (limited due to image transfers).

30

CVT_QUICK_TIMEOUT

Quick timeout for unreachable devices, reducing wait time for failed connections.

Seconds

3

AGENT_COMM_TIMEOUT

Agent communication timeout for individual HTTP requests to agents.

Seconds

30

CVT_BATCHING_THRESHOLD

Batching threshold; batching is only used for deployments larger than this value to reduce overhead.

5000

CVT_BATCH_SIZE

Batch size when batching is used (devices per batch).

1000

CVT_DNS_RES_OPTIONS

DNS resolver options for fast timeouts to avoid long waits on unresolvable hostnames. Configures system resolver behavior when load_topo performs parallel DNS resolution.

Format: timeout:X attempts:Y single-request

timeout:1 attempts:1 single-request

timeout:X: Seconds to wait per DNS query; attempts:Y: Number of retry attempts; single-request: Send A and AAAA queries separately to improve performance

SSH Configuration

More details on this can be found at Agent Deployment and SSH Configuration

Variable

Description

Value / Unit

Default

CV_SSH_KEY_FILE

SSH private key file path for passwordless authentication to HOST devices only. SSH keys are not used for switch devices. Must be accessible inside the collector container. Leave empty to use standard SSH key discovery.

Path

Empty (uses standard SSH key discovery)

SSH_CONN_TIMEOUT

SSH connection timeout for both SSH command execution and SFTP file transfers. Increase for slow networks, decrease for faster failure detection.

Seconds

20

SSH_LOOK_FOR_KEYS

Enable automatic SSH key discovery from SSH agent and default locations. Applies only to HOST devices when no password is provided.

Boolean

true


Apache Configuration

More details on this can be found at Apache Configuration for CVT Collector

Variable

Description

Value / Unit

Default

CVT_APACHE_PROFILE

Apache performance profile based on server resources and cluster scale. This controls Apache's concurrency, connection handling, and optimization settings.

small, medium, large, xlarge, auto

small

CVT_APACHE_LOG_LEVEL

Log level for Apache error logs. Higher levels reduce log volume.

debug, info, notice, warn, error, crit, alert, emerg

warn

CVT_APACHE_ACCESS_LOG

Enable or disable Apache access logs (request logging). Set to 'false' to disable access logs and reduce disk I/O on high-traffic deployments.

Boolean

true


Variable

Description

Options / Value

Default

STARTUP_TOPOLOGY

Topology loading at startup. Specifies which topology file to load.

none: Do not load any filelast: Load the last loaded topology from history<path>: Load a specific topology file (.topo, .dot, .xlsx, .json)

none

AUTO_START_VALIDATION

Automatically start validation if a topology file is loaded.

Boolean

false

STARTUP_CREDENTAILS_FILE

credentials file to load at startup

none:no credentials will be loaded. <path>: load the credentials file (json, ini, cfg)

Data Management

Variable

Description

Value/Unit

Default

ENABLE_STATS_POLLING

Set to true to enable polling for stats from the CVT collector.

Boolean

false

CVT_DATA_ARCHIVE_SCHEDULE

Cron schedule for data directory archiving

minute hour day month weekday

5 0 * * * (daily at 00:05 UTC)

CVT_MAX_PLAIN_DATA_DIRS

Maximum number of plain (uncompressed) data directories to keep. Older directories are compressed to .tgz archives

Integer

7

CVT_MAX_DATA_DIRS

Maximum total data entries (plain + archived) to keep. Oldest archives are deleted when this limit is exceeded

Integer

30

© Copyright 2026, NVIDIA. Last updated on Feb 20, 2026