The settings command lets you view and configure ForkliftController settings directly from the command line. You can inspect current values, enable feature flags, tune performance parameters, adjust container resource limits, and revert any setting to its default. All command examples are verified against the implementation.
Overview
ForkliftController configuration is stored in the ForkliftController custom resource. The settings command provides a convenient interface to read and write individual settings without manually editing YAML.
Settings are organized into categories:
Category
Description
image
Container images (VDDK, virt-v2v, custom FQINs)
feature
Feature flags (warm migration, copy offload, live migration)
virt-v2v container resource limits and extra arguments
populator
Volume populator container resources
hook
Hook container resources
ova
OVA provider server container resources
hyperv
HyperV provider server container resources
By default, only the curated supported settings are shown. Use --all to include the full set of extended settings (controller, inventory, API, UI plugin, validation, CLI download, OVA proxy, ConfigMaps, and advanced settings).
Subcommands
View Settings
1
2
3
4
5
# View all supported settings (default)
kubectl mtv settings
# Equivalent explicit form
kubectl mtv settings get
Get a Specific Setting
1
kubectl mtv settings get --setting controller_max_vm_inflight
Set a Setting Value
1
kubectl mtv settings set--setting controller_max_vm_inflight --value 30
Unset a Setting (Revert to Default)
1
kubectl mtv settings unset--setting controller_max_vm_inflight
Flags
Flag
Short
Default
Description
--output
-o
table
Output format: table, json, yaml
--all
false
Include all settings (supported + extended)
Commonly Used Settings
Feature Flags
Setting
Type
Default
Description
controller_vsphere_incremental_backup
bool
true
Enable CBT-based warm migration for vSphere
controller_ovirt_warm_migration
bool
true
Enable warm migration from oVirt
feature_copy_offload
bool
true
Enable storage array offload (XCOPY)
feature_ocp_live_migration
bool
false
Enable cross-cluster OpenShift live migration
feature_vmware_system_serial_number
bool
true
Use VMware system serial number for migrated VMs
feature_ova_appliance_management
bool
false
Enable appliance management for OVF-based providers
Performance Tuning
Setting
Type
Default
Description
controller_max_vm_inflight
int
20
Maximum concurrent VM migrations
controller_precopy_interval
int
60
Minutes between warm migration precopies
controller_max_concurrent_reconciles
int
10
Maximum concurrent controller reconciles
controller_snapshot_removal_timeout_minuts
int
120
Timeout for snapshot removal (minutes)
controller_filesystem_overhead
int
10
Filesystem overhead percentage
Container Images
Setting
Type
Default
Description
vddk_image
string
(empty)
VDDK container image for vSphere migrations
virt_v2v_image_fqin
string
(empty)
Custom virt-v2v container image
Container Resources (virt-v2v)
Setting
Type
Default
Description
virt_v2v_container_limits_cpu
string
4000m
virt-v2v container CPU limit
virt_v2v_container_limits_memory
string
8Gi
virt-v2v container memory limit
virt_v2v_container_requests_cpu
string
1000m
virt-v2v container CPU request
virt_v2v_container_requests_memory
string
1Gi
virt-v2v container memory request
Debugging
Setting
Type
Default
Description
controller_log_level
int
3
Controller log verbosity (0-9)
Supported vs Extended Settings
The settings command distinguishes between two tiers:
Supported settings (default): A curated subset of commonly configured settings. These are shown by kubectl mtv settings and kubectl mtv settings get.
Extended settings (--all): The full set of all known ForkliftController spec fields, including controller, inventory, API, UI plugin, validation, CLI download, and OVA proxy container resources, ConfigMap names, and advanced options.
1
2
3
4
5
6
7
8
# Show only supported settings
kubectl mtv settings
# Show all settings including extended ones
kubectl mtv settings --all# Get a specific extended setting
kubectl mtv settings get --setting inventory_container_limits_memory --all
Both settings set and settings unset work with any valid setting name (supported or extended).
Example Workflows
View All Current Settings
1
kubectl mtv settings
Check a Specific Value
1
kubectl mtv settings get --setting controller_max_vm_inflight
Enable a Feature Flag
1
kubectl mtv settings set--setting feature_ocp_live_migration --valuetrue
Increase Concurrent VM Migrations
1
kubectl mtv settings set--setting controller_max_vm_inflight --value 40
Increase virt-v2v Memory for Large VMs
1
2
kubectl mtv settings set--setting virt_v2v_container_limits_memory --value 16Gi
kubectl mtv settings set--setting virt_v2v_container_requests_memory --value 4Gi
Raise Controller Log Level for Debugging
1
kubectl mtv settings set--setting controller_log_level --value 5
Revert a Setting to Its Default
1
kubectl mtv settings unset--setting controller_max_vm_inflight