22. Managing Cluster Configuration¶
Robin exposes a set of configuration attributes that control different features and mechanisms of a cluster. This control can extend from enabling the auto-registration of Helm based applications to the logging level of certain Robin components. Each attribute has an associated scope, referred to henceforth as the attribute’s section
, which determines the area of effectiveness for the variable alongside its associated value. Robin allows users to update these configuration attributes in order to better tune the cluster to meet their needs as well as ensure the cluster is setup correctly for the given environment. There are however some attributes which are set by Robin internally and cannot be updated. These are highlighted in the table of reference detailed in the section below and are exposed to users in order to inform them of the value set.
Note
The ability to update a configuration attribute is subject to Role Based Access Control (RBAC). By default, only Cluster Administrators (users having the superadmin role) have permission to update all configuration attributes. See the section on User Management for details on how RBAC works.
The following commands are described in this section:
|
Display a list of cluster configuration attributes |
|
Update the value assigned to a cluster configuration attribute |
22.1. View config attributes¶
In order to list all or a subsection of config attributes alongside details of the value currently set for each respective attribute, issue the following command:
robin config list [section] [attribute]
--full
|
Limit display output to attributes for this section. Note this is an optional parameter |
|
Limit display output to this attribute. Note this is an optional parameter and is only valid in conjunction with the |
|
Display additional information about each attribute |
Example 1 (List attributes for a particular section):
# robin config list cluster
Section | Attribute | Value
--------+---------------------------------------------+--------------------------------------
cluster | calico_backend | bgp
cluster | cluster_domain | cluster.local
cluster | cluster_name | default
cluster | clusterid | 368810af-cd52-4dad-81dd-c210e1bb8806
cluster | colocate_rcm_k8s | False
cluster | create_user_ns_tenant_isolation_nw_policies | False
cluster | csi_plugin_name | robin
cluster | csi_storage_affinity | True
cluster | custom_theme |
cluster | default_csi_respool | default
cluster | default_pod_ippool | nonrobin-default
cluster | default_pod_respool | default
cluster | deployment_source | installer
cluster | disable_calico | False
cluster | disable_hpa | False
cluster | disable_isolated_ip_pools | False
cluster | disable_scale_hpa | True
cluster | dns_cluster_ip | 172.19.0.10
cluster | elb_integration | False
cluster | enable_nmap | False
cluster | enable_telemetry | True
cluster | enable_vdi | False
cluster | enable_volume_jobs | True
cluster | external_routes | None
cluster | ignored_phases | failed
cluster | install_key | <REDACTED>
cluster | ip_version | 4
cluster | k8s_affinity_plan | False
cluster | k8s_app_defaultcpu | 0
cluster | k8s_app_defaultmem | 0Mi
cluster | k8s_auto_registration | False
cluster | k8s_cert_expiryalert_days | 30
cluster | k8s_check_rpool_limits | False
cluster | k8s_cluster_cidr | 172.19.0.0/16
cluster | k8s_cluster_tenant_enabled | False
cluster | k8s_drop_event_for_pod_phases | []
cluster | k8s_enforce_hosts_from_rpool | False
cluster | k8s_gui_support | False
cluster | k8s_jit_jobcompletion | False
cluster | k8s_monitor_threadpool | 3
cluster | k8s_plan | True
cluster | k8s_pod_cidr | 172.21.0.0/16
cluster | k8s_provider | robin
cluster | k8s_skip_recentprocessedevents | 20
cluster | k8scheduler_exclude_nodes |
cluster | kms | k8s
cluster | kms_keyring | k8skeyring
cluster | kms_version | v2
cluster | license_server_url | https://get.robin.io
cluster | loadbalancer_supported | False
cluster | marketplace | False
cluster | max_inst_per_role | 5000
cluster | max_node_count | 65535
cluster | network_policy_scope | allow-all
cluster | ovs_enabled | True
cluster | plan_begin_delay | 0
cluster | pod_ready_timeout | 900
cluster | rcm_cluster_ip | 172.19.76.38
cluster | remove_taints | True
cluster | reserved_ephemeral_pods_count | 10
cluster | reserved_net_enabled | False
cluster | reserved_subnet | 172.20.0.0
cluster | resource_cleanup_k8s | 30
cluster | resource_sync_with_k8s | 5
cluster | robin_backup_dir | /etc/robin/
cluster | robin_install_dir | /usr/local/robin
cluster | robin_managed_k8s | False
cluster | robin_ns | robinio
cluster | robincrash_dir | /home/robinds
cluster | robinds_dir | /home/robinds
cluster | robinlog_dir | /home/robinds
cluster | snapshot_space_limit | 0.0
cluster | telemetry_interval | 86400
cluster | telemetry_server | insight.robinsystems.com:443
cluster | update_coredns | False
cluster | update_etc_hosts | False
cluster | upgrade_checks_timeout | 1800
cluster | enable_license_expiration_audit_schedule | True
cluster | license_expiry_remainder_period | 7
Example 2 (Additional details for a subsection of attributes):
# robin config list user_audit --full
Section: user_audit
Attribute: enabled
Value: True
Default: True
Valid values: ['true', 'false']
Description: Enable auditing of user activity.
Attribute: log_enable
Value: False
Default: False
Valid values: ['true', 'false']
Description: Enable logging for user audit
Attribute: log_format
Value: JSON
Default: JSON
Valid values: ['JSON', 'TEXT']
Description: Output format for user audit log messages. Default: JSON
Attribute: log_level
Value: INFO
Default: INFO
Valid values: ['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL']
Description: The log level for user audit. Default: INFO
Attribute: log_retention
Value: 4
Default: 4
Valid values:
Description: The count of user audit log file archive retention
Attribute: log_file_size
Value: 10
Default: 10
Valid values:
Description: The log file size for user audit logs : Default 10 MB per file
Returns a list containing all config attributes alongside details of the value currently set for each respective attribute.
End Point: /api/v3/robin_server/config
Method: GET
URL Parameters: None
Data Parameters: None
Port: RCM Port (default value is 29442)
Headers:
Authorization: <auth_token>
: Authorization token to identify which user is sending the request. The token can be acquired from the login API.
Success Response Code: 200
Error Response Code: 500 (Internal Server Error), 404 (Not Found Error), 401 (Unauthorized Error)
Example Response:
Output
{
"state":"Succeed",
"message":"NA",
"items":{
"agent":{
"hostname":{
"value":"master.robin-server.robinio.svc.cluster.local",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"Unused."
},
"rest_server":{
"value":"master.robin-server.robinio.svc.cluster.local",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The fully qualified hostname of the local Robin Agent rest server."
},
"rest_port":{
"value":29450,
"default":29450,
"valid_values":"",
"description":"The port where rest connections are made to the agents. Default: 29450"
},
"registration_timeout":{
"value":10,
"default":10,
"valid_values":"",
"description":"The timeout in seconds when a registration is considered failed. It may retry after this timeout. Default: 10"
},
"nfs_mount_options":{
"value":"nolock,rw,timeo=60",
"default":"nolock,rw,timeo=60",
"valid_values":"",
"description":"The fully qualified hostname of the local Robin Agent rest server."
},
"hard_reset_on_isolation":{
"value":0,
"default":0,
"valid_values":[
0,
1
],
"description":"The flag which tells Robin agent to perform a hard reset of the operating system on a network isolation. Default: 1 (True)"
},
"kvm_enabled":{
"value":false,
"default":true,
"valid_values":"",
"description":"KVM engine"
},
"kvm_virtlauncher_image":{
"value":"robinsys\/virtlauncher:centos8",
"default":"robinsys\/virtlauncher:centos8",
"valid_values":"",
"description":"KVM virtlauncher image to use. Default: robinsys\/virtlauncher:centos8"
},
"file_object_cache":{
"value":"\/var\/lib\/robin\/file_object_cache",
"default":"\/var\/lib\/robin\/file_object_cache",
"valid_values":"",
"description":"The path where file objects (bundles\/images et. all) are cached locally. Default: \/var\/lib\/robin\/file_object_cache"
},
"server_rest_port":{
"value":29442,
"default":29442,
"valid_values":"",
"description":"RCM Server Rest Port. Default: 29442"
},
"https_port":{
"value":29443,
"default":29443,
"valid_values":"",
"description":"HTTPS Port for Robin UI. Default: 29443"
},
"event_server_port":{
"value":29449,
"default":29449,
"valid_values":"",
"description":"Robin Event Server Port. Default: 29449"
},
"sherlock_rest_port":{
"value":29446,
"default":29446,
"valid_values":"",
"description":"Sherlock Server Port. Default: 29446"
},
"nodejs_port":{
"value":29447,
"default":29447,
"valid_values":"",
"description":"Node JS Port for Robin Pod Console Access. Default: 29447"
},
"stormgr_rpc_port":{
"value":29451,
"default":29451,
"valid_values":"",
"description":"Storage Manager RPC Port. Default: 29451"
},
"rdvm_rpc_port":{
"value":29452,
"default":29452,
"valid_values":"",
"description":"RDVM RPC Port. Default: 29452"
},
"rio_rpc_port":{
"value":29453,
"default":29453,
"valid_values":"",
"description":"RIO RPC Port. Default: 29453"
},
"stormgr_rest_port":{
"value":29454,
"default":29454,
"valid_values":"",
"description":"Storage Manager Rest Port. Default: 29454"
},
"rdvm_rest_port":{
"value":29455,
"default":29455,
"valid_values":"",
"description":"RDVM Rest Port. Default: 29455"
},
"rio_rest_port":{
"value":29456,
"default":29456,
"valid_values":"",
"description":"RIO Rest Port. Default: 29456"
},
"node_exporter_port":{
"value":29457,
"default":29457,
"valid_values":"",
"description":"Prometheus Node Exporter Port. Default: 29457"
},
"database_port":{
"value":5432,
"default":29458,
"valid_values":"",
"description":"Postgres Database Port. Default 29458"
},
"consul_server_port":{
"value":29459,
"default":29459,
"valid_values":"",
"description":"Consul Server Port. Default: 29459"
},
"consul_serflan_port":{
"value":29460,
"default":29460,
"valid_values":"",
"description":"Consul Serf Lan Port. Default: 29460"
},
"consul_serfwan_port":{
"value":29461,
"default":29461,
"valid_values":"",
"description":"Consul Serf Wan Port. Default: 29461"
},
"consul_http_port":{
"value":29462,
"default":29462,
"valid_values":"",
"description":"Consul HTTP Port. Default: 29462"
},
"node_monitor_port":{
"value":29467,
"default":29467,
"valid_values":"",
"description":"Robin node monitor HTTP Port. Default: 29467"
},
"stormgr_rest_listen_addr":{
"value":"127.0.0.1",
"default":"127.0.0.1",
"valid_values":[
"127.0.0.1",
"::1",
"0.0.0.0",
":::"
],
"description":"Stormgr Rest Listener Addr"
},
"rdvm_rest_listen_addr":{
"value":"127.0.0.1",
"default":"127.0.0.1",
"valid_values":[
"127.0.0.1",
"::1",
"0.0.0.0",
":::"
],
"description":"RDVM Rest Listener Addr"
},
"rio_rest_listen_addr":{
"value":"127.0.0.1",
"default":"127.0.0.1",
"valid_values":[
"127.0.0.1",
"::1",
"0.0.0.0",
":::"
],
"description":"RIO Rest Listener Addr"
},
"rio_tcmu_device_io_timeout_secs":{
"value":84600,
"default":84600,
"valid_values":"",
"description":"RIO TCMU device timeout in seconds"
},
"rdvm_mem_maxcap":{
"value":25769803776,
"default":25769803776,
"valid_values":"",
"description":"Dictates the maximum memory (in bytes) allocated for robin storage services on a hybrid node"
},
"rdvm_mem_alloc":{
"value":0,
"default":0,
"valid_values":"",
"description":"Amount of memory (in bytes) allocated for robin storage services. Note that this attribute only is only a placeholder. The actual value is set on a per-node basis and is calculated based on the type of node (hybrid vs. storage), amount of memory, etc. Any non-zero value will trigger a recalculation for all specified nodes."
},
"rdvm_bmapcache_invalidate_all":{
"value":0,
"default":0,
"valid_values":[
0,
1
],
"description":"Invalidate the on-disk bmap cache entries on all devices of node"
},
"rdvm_bmapcache_skip_all":{
"value":0,
"default":0,
"valid_values":[
0,
1
],
"description":"Skip the bmap cache usage on all devices of node. This does not invalidate the existing on-disk entries"
},
"suicide_threshold":{
"value":50,
"default":50,
"valid_values":"",
"description":"Time in seconds after an isolated Robin host starts killing containers. Default: 50"
},
"rediscover_timeout":{
"value":120,
"default":120,
"valid_values":"",
"description":"Time in seconds to wait for response from agent during rediscovery. Default: 120"
},
"proc_virtualization":{
"value":true,
"default":true,
"valid_values":"",
"description":"Enable\/Disable proc virtualization."
},
"prefix_dockerio":{
"value":true,
"default":true,
"valid_values":"",
"description":"Prefix docker.io to all non-registry images."
},
"kubelet_restart_tolerance":{
"value":35,
"default":35,
"valid_values":"",
"description":"Number of seconds Autopilot will wait for kubelet to restart containers in a POD before taking action to re-deploy the POD. Default: 35"
},
"kubelet_restart_burstlimit":{
"value":2,
"default":2,
"valid_values":"",
"description":"Number of container restarts by kubelet in kubelet_restart_bursttime monitor-server will tolerate before reporting the POD as offline to robin-server. Default: 2"
},
"kubelet_restart_bursttime":{
"value":25,
"default":25,
"valid_values":"",
"description":"Number of seconds for kubelet_restart_burstlimit. Default: 25"
},
"watchdog_loop_interval":{
"value":3,
"default":3,
"valid_values":"",
"description":"Robin agent watchdog loop interval in seconds. Default: 3"
},
"monitor_interval":{
"value":1,
"default":1,
"valid_values":[
1,
2,
3,
4,
5,
6,
7,
8,
9,
10
],
"description":"Robin host monitoring interval in seconds. Default: 1"
},
"monitor_num_samples":{
"value":3600,
"default":3600,
"valid_values":"",
"description":"Robin host monitoring sample count. Default: 3600. (1-3600). Requires a monitor-server restart"
},
"monitor_report_interval":{
"value":5,
"default":5,
"valid_values":"",
"description":"Robin host reporting interval in seconds. Default: 5"
},
"monitor_network":{
"value":true,
"default":true,
"valid_values":"",
"description":"Robin host monitor network. Default: True"
},
"monitor_influx_details":{
"value":"{\"url\": \"\", \"dbname\": \"robin\", \"auth\": \":\" }",
"default":"{\"url\": \"\", \"dbname\": \"robin\", \"auth\": \":\" }",
"valid_values":"",
"description":"Influx URL format = PROTO:\/\/HOST:PORT auth=user:password"
},
"monitor_push_interval":{
"value":60,
"default":60,
"valid_values":"",
"description":"Monitor to external time series db push interval. Default 60"
},
"monitor_host_root_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server host root volume alert highmark. Default: 90%"
},
"monitor_host_root_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host root volume alert lowmark. Default: 85%"
},
"monitor_host_var_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server host \/var volume alert highmark. Default: 90%"
},
"monitor_host_var_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host \/var volume alert lowmark. Default: 85%"
},
"monitor_host_var_log_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server host \/var\/log volume alert highmark. Default: 90%"
},
"monitor_host_var_log_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host \/var\/log volume alert lowmark. Default: 85%"
},
"monitor_host_var_pgsql_volume_highmark":{
"value":0.7,
"default":0.7,
"valid_values":"",
"description":"monitor server host \/var\/lib\/pgsql volume alert highmark. Default: 90%"
},
"monitor_host_var_pgsql_volume_lowmark":{
"value":0.5,
"default":0.5,
"valid_values":"",
"description":"monitor server host \/var\/lib\/pgsql volume alert lowmark. Default: 85%"
},
"monitor_host_var_crash_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server host \/var\/crash volume alert highmark. Default: 90%"
},
"monitor_host_var_crash_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host \/var\/crash volume alert lowmark. Default: 85%"
},
"monitor_host_var_robin_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server host \/var\/lib\/robin volume alert highmark. Default: 90%"
},
"monitor_host_var_robin_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host \/var\/lib\/robin volume alert lowmark. Default: 85%"
},
"monitor_host_swap_highmark":{
"value":0.8,
"default":0.8,
"valid_values":"",
"description":"monitor server host swap space alert highmark. Default: 80%"
},
"monitor_host_swap_lowmark":{
"value":0.75,
"default":0.75,
"valid_values":"",
"description":"monitor server host swap space alert lowmark. Default: 75%"
},
"monitor_container_volume_highmark":{
"value":0.9,
"default":0.9,
"valid_values":"",
"description":"monitor server container volume alert highmark. Default: 90%"
},
"monitor_container_volume_lowmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server container volume alert lowmark. Default: 85%"
},
"monitor_container_swap_highmark":{
"value":0.8,
"default":0.8,
"valid_values":"",
"description":"monitor server container swap space alert highmark. Default: 80%"
},
"monitor_container_swap_lowmark":{
"value":0.75,
"default":0.75,
"valid_values":"",
"description":"monitor server container swap space alert lowmark. Default: 75%"
},
"monitor_host_mem_lowmark":{
"value":0.8,
"default":0.8,
"valid_values":"",
"description":"monitor server host memory usage lowmark. Default: 80%"
},
"monitor_host_mem_highmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host memory usage lowmark. Default: 85%"
},
"monitor_host_cpu_lowmark":{
"value":0.8,
"default":0.8,
"valid_values":"",
"description":"monitor server host memory usage lowmark. Default: 80%"
},
"monitor_host_cpu_highmark":{
"value":0.85,
"default":0.85,
"valid_values":"",
"description":"monitor server host memory usage lowmark. Default: 85%"
},
"metrics_grafana_details":{
"value":"{\"url\": \"\", \"auth\": \":\"}",
"default":"{\"url\": \"\", \"auth\": \":\"}",
"valid_values":"",
"description":"Grafana details URL=PROTO:\/\/HOST:PORT auth=user:password"
},
"robincri_log_level":{
"value":"WARNING",
"default":"WARNING",
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for robincri. Default: WARNING"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the agent. Default: DEBUG"
},
"network_type":{
"value":10,
"default":10,
"valid_values":[
4,
6
],
"description":"IP protocol version 4 or 6. Default: 4"
},
"dedicated_vcpu_usage_factor":{
"value":0.5,
"default":0.5,
"valid_values":"",
"description":"Default dedicated vcpu usage ratio. Default: 50%"
},
"cri":{
"value":"robin",
"default":"robin",
"valid_values":[
"robin",
"dockershim",
"kubelet"
],
"description":"CRI type"
},
"agent_res_allocator":{
"value":"topology_manager",
"default":"topology_manager",
"valid_values":[
"robin",
"topology_manager"
],
"description":"CPU allocator is robin or topology manager"
},
"topology_manager_policy":{
"value":"restricted",
"default":"best-effort",
"valid_values":[
"none",
"best-effort",
"restricted",
"single-numa-node"
],
"description":"Topology manager policy"
},
"cpu_manager_policy":{
"value":"static",
"default":"static",
"valid_values":[
"none",
"static"
],
"description":"CPU manager policy"
},
"pod_max_pids":{
"value":1000,
"default":1000,
"valid_values":"",
"description":"Specify the max number of processes to be running per pod per K8S node via kubelet configuration. Default: 1000"
},
"shared_cpu_limit":{
"value":1,
"default":1,
"valid_values":"",
"description":"Value to set as limits (and plan for) for shared Robin applications. The lowest value possible is 0. To set limits equal to the value specified at runtime turn off this variable by setting the value as -1."
},
"monitor_d_state_event_timeout_secs":{
"value":60,
"default":60,
"valid_values":[],
"description":"Robin monitor server will detect important processes stuck in uninterruptable sleep (D) state and after this timeout raise an alert. Default: 60"
},
"monitor_d_state_timeout_secs":{
"value":600,
"default":600,
"valid_values":[],
"description":"Robin monitor server will detect important processes stuck in uninteruptable sleep (D) state and after this timeout it will reboot the server. Default: 600"
},
"monitor_enable_monitor_inotify":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Whether Robin Monitor Server will discover inotify. Default: False"
},
"monitor_inotify_cache_timeout":{
"value":60,
"default":60,
"valid_values":[],
"description":"Robin Monitor Server will cache inotify result and clear as configured. Default: 60 minute"
},
"monitor_include_iwatcher_in_inotify":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Whether Robin Monitor Server will include inotify while discovering inotify. Default: False"
},
"create_mig_partitions_on_reboot":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Whether mig partitions will be created on reboot. Default: False"
}
},
"analytics":{
"server":{
"value":"robin-analytics.service.robin",
"default":"robin-analytics.service.robin",
"valid_values":"",
"description":"The hostname of the Robin Analytics server."
},
"port":{
"value":39481,
"default":39481,
"valid_values":"",
"description":"The port number of the Robin Analytics server. Default: 39481"
}
},
"app":{
"enable_hooklogs":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/Disable hooklogs setting. Can be overriden at app level"
},
"enable_metrics":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/Disable App metrics setting. Can be overriden at app level"
},
"enable_limit_range":{
"value":"disable",
"default":"disable",
"valid_values":[
"enable",
"disable",
"permissive"
],
"description":"Enable\/Disable\/permissive limit range setting."
},
"skip_namespace_for_limit_check":{
"value":"kube-system,robinio",
"default":"kube-system,robinio",
"valid_values":"",
"description":"Namespaces that must be skipped from resource limits check. Format is comma separated values. Default: 'robinio,kube-system' When updating do not remove 'kube-system,robinio'"
},
"apply_limit_range_on":{
"value":"bundle",
"default":"bundle",
"valid_values":[
"bundle",
"non-bundle",
"all"
],
"description":"Selects the apps for which limit range is to be applied"
},
"job_hooks_memory_limit":{
"value":"1G",
"default":"1G",
"valid_values":"",
"description":"Memory for a job hooks limit when it is not configured in spec. Default value is 1G (examples: 2Gi, 250Mi)"
},
"job_hooks_cpu_limit":{
"value":"1",
"default":"1",
"valid_values":"",
"description":"CPU for a job hooks limit when it is not configured in spec. Default value is 1 (examples: 2G, 250m)"
}
},
"client":{
"server":{
"value":"master.robin-server.service.robin",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The hostname of the Robin server."
},
"rest_port":{
"value":29442,
"default":29442,
"valid_values":"",
"description":"The REST port of the Robin server. Default: 29442"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the client. Default: DEBUG"
},
"enable_colors":{
"value":true,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"If true, the client will use colors to indicate degraded and faulted states. Default: true"
}
},
"cluster":{
"max_node_count":{
"value":65535,
"default":65535,
"valid_values":"",
"description":"Maximum number of nodes that can be part of a cluster"
},
"enable_telemetry":{
"value":true,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"If true, telemetry data will be sent to robin server. Default: true"
},
"telemetry_server":{
"value":"insight.robinsystems.com:443",
"default":"insight.robinsystems.com:443",
"valid_values":"",
"description":"Name and port of the telemetry server"
},
"telemetry_interval":{
"value":86400,
"default":86400,
"valid_values":"",
"description":"Interval in seconds for collecting telemetry data"
},
"install_key":{
"value":"<REDACTED>",
"default":"",
"valid_values":"",
"description":"Install key"
},
"reserved_subnet":{
"value":"172.20.0.0",
"default":"172.20.0.0",
"valid_values":"",
"description":"Reserved subnet to be used by Robin"
},
"robinds_dir":{
"value":"\/home\/robinds",
"default":"\/home\/robinds",
"valid_values":"",
"description":"Robin DS folder to be used during Robin Installation"
},
"robinlog_dir":{
"value":"\/home\/robinds",
"default":"\/home\/robinds",
"valid_values":"",
"description":"Robin log folder to be used during Robin Installation"
},
"robincrash_dir":{
"value":"\/home\/robinds",
"default":"\/home\/robinds",
"valid_values":"",
"description":"Robin crash folder to be used during Robin Installation"
},
"robin_install_dir":{
"value":"\/usr\/local\/robin",
"default":"\/usr\/local\/robin",
"valid_values":"",
"description":"Robin install config folder to be used during Robin Installation"
},
"robin_backup_dir":{
"value":"\/etc\/robin\/",
"default":"\/etc\/robin",
"valid_values":"",
"description":"Robin backup folder to be used during Robin Installation for backing up installation configuration files"
},
"ovs_enabled":{
"value":true,
"default":true,
"valid_values":"",
"description":"OVS mode"
},
"kms":{
"value":"k8s",
"default":"k8s",
"valid_values":[
"robin",
"google",
"k8s",
"vault"
],
"description":"Key management service"
},
"kms_keyring":{
"value":"k8skeyring",
"default":"k8skeyring",
"valid_values":"",
"description":"Cryptographic key ring for google kms"
},
"kms_version":{
"value":"v2",
"default":"v2",
"valid_values":"",
"description":"ROBIN KMS version"
},
"clusterid":{
"value":"368810af-cd52-4dad-81dd-c210e1bb8806",
"default":"",
"valid_values":"",
"description":"ROBIN CNP Cluster UUID"
},
"disable_calico":{
"value":false,
"default":false,
"valid_values":"",
"description":"Disable Calico CNI Plugin"
},
"disable_isolated_ip_pools":{
"value":false,
"default":false,
"valid_values":"",
"description":"Disable Robin Loopback CNI Plugin"
},
"colocate_rcm_k8s":{
"value":false,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Enforce kubernetes API server and RCM master to exist on the same node"
},
"robin_managed_k8s":{
"value":false,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Robin\/Externally managed Kubernetes install"
},
"k8s_pod_cidr":{
"value":"172.21.0.0\/16",
"default":"172.21.0.0\/16",
"valid_values":"",
"description":"Kubernetes default POD CIDR subnet"
},
"k8s_cluster_cidr":{
"value":"172.19.0.0\/16",
"default":"172.19.0.0\/16",
"valid_values":"",
"description":"Kubernetes default Cluster CIDR subnet"
},
"external_routes":{
"value":null,
"default":"",
"valid_values":"",
"description":"Comma separated External routes to be added for EC2 deployments"
},
"network_policy_scope":{
"value":"allow-all",
"default":"allow-all",
"valid_values":[
"allow-all",
"namespace",
"tenant",
"user",
"app",
"deny-all"
],
"description":"K8S Ingress\/Egress Network Policy Scope when creating applications. Default value: allow-all"
},
"k8s_provider":{
"value":"robin",
"default":"robin",
"valid_values":[
"robin",
"gke",
"openshift",
"aks",
"iks",
"eks",
"rke",
"upstream"
],
"description":"External Kubernetes Provider"
},
"csi_storage_affinity":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable or disable compute-storage affinity for k8s apps (e.g., helm). Default value: True"
},
"csi_plugin_name":{
"value":"robin",
"default":"robin",
"valid_values":[
"robin",
"robin-0-3"
],
"description":"Robin Storage Class name"
},
"marketplace":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Created as part of marketplace"
},
"snapshot_space_limit":{
"value":0.0,
"default":0.0,
"valid_values":"",
"description":"Default snapshot space limit. Default: 0% which means do not restrict the usage for snapshots."
},
"robin_ns":{
"value":"robinio",
"default":"robinio",
"valid_values":"",
"description":"Robin Namespace name"
},
"deployment_source":{
"value":"installer",
"default":"installer",
"valid_values":[
"installer",
"operatorhub",
"spec",
"gcpmarkeplace",
"marketplace",
"express",
"enterprise"
],
"description":"Source of deployment"
},
"ignored_phases":{
"value":"failed",
"default":"failed",
"valid_values":"",
"description":"Comma seperated string of Kubernetes Pod phases to ignore"
},
"update_coredns":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Use this flag if DNS resolution for nodes to be provided using Core DNS"
},
"update_etc_hosts":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Use this flag if DNS resolution is not supported across nodes and \/etc\/hosts should be updated"
},
"ip_version":{
"value":4,
"default":4,
"valid_values":[
4,
6
],
"description":"IP version to be used for the cluster. Default is '4'"
},
"remove_taints":{
"value":true,
"default":true,
"valid_values":"",
"description":"Master Node Taints"
},
"cluster_domain":{
"value":"cluster.local",
"default":"cluster.local",
"valid_values":"",
"description":"Kubernetes cluster domain"
},
"cluster_name":{
"value":"default",
"default":"default",
"valid_values":"",
"description":"Custom cluster name"
},
"disable_scale_hpa":{
"value":true,
"default":true,
"valid_values":"",
"description":"Disable scalein\/out operations when HPA is enabled"
},
"disable_hpa":{
"value":false,
"default":false,
"valid_values":"",
"description":"Disable HPA feature"
},
"max_inst_per_role":{
"value":5000,
"default":5000,
"valid_values":"",
"description":"Maximum number of instances that can be part of a role"
},
"enable_nmap":{
"value":false,
"default":false,
"valid_values":"",
"description":"Enable Nmap check to avoid IP address collision"
},
"enable_vdi":{
"value":false,
"default":false,
"valid_values":"",
"description":"Experimental VDI feature in ROBIN"
},
"license_server_url":{
"value":"https:\/\/get.robin.io",
"default":"https:\/\/get.robin.io",
"valid_values":"",
"description":"URL of License Server to use when activating license. Default: https:\/\/get.robin.io"
},
"k8s_cluster_tenant_enabled":{
"value":false,
"default":false,
"valid_values":"",
"description":"K8sCluster tenant is enabled"
},
"k8s_cert_expiryalert_days":{
"value":30,
"default":30,
"valid_values":"",
"description":"Users will be alerted about the k8s certificate expiry ahead of the configured days. Default: 30 days"
},
"pod_ready_timeout":{
"value":900,
"default":900,
"valid_values":"",
"description":"Time in seconds to wait for pod to go into ready state"
},
"loadbalancer_supported":{
"value":false,
"default":false,
"valid_values":"",
"description":"Environment support for Load Balancer"
},
"default_csi_respool":{
"value":"default",
"default":"default",
"valid_values":"",
"description":"Default resource pool to use for external PVCs"
},
"default_pod_respool":{
"value":"default",
"default":"default",
"valid_values":"",
"description":"Default resource pool to use for compute planning for storage affiniity"
},
"default_pod_ippool":{
"value":"nonrobin-default",
"default":"nonrobin-default",
"valid_values":"",
"description":"Default IP pool name to use for network planning. Default: nonrobin-default"
},
"k8s_auto_registration":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin to auto register the K8s apps (E.g., Helm). Default is 'True'"
},
"k8s_plan":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin to do plan for K8s apps (E.g., Helm). Default is 'True'"
},
"k8s_affinity_plan":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin to apply the role affinities and other placement-rules apps (E.g., Helm). Default is 'False'"
},
"k8s_check_rpool_limits":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin to check the limits before deploying a k8s app (E.g., Helm). Default is 'False'"
},
"k8s_enforce_hosts_from_rpool":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin to enforce the nodes selection from selected resource pools before creating a k8s app (E.g., Helm). Default is 'False'"
},
"k8s_drop_event_for_pod_phases":{
"value":[
],
"default":[
],
"valid_values":"",
"description":"Ignore pod deletion event when current pod phases are in specified values (E..g, Pending in array). Default is empty array"
},
"k8s_gui_support":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Show Apps in GUI for testing only. Default is 'False'"
},
"k8s_monitor_threadpool":{
"value":3,
"default":3,
"valid_values":[],
"description":"K8s apps monitor uses threadpool to monitor k8s apps (deployed outside RCM). Default threadpool size is 3"
},
"k8s_skip_recentprocessedevents":{
"value":20,
"default":20,
"valid_values":[],
"description":"K8s pod update events are processed. Repeated update events in short time can be skipped safely. Default time is 20 seconds"
},
"k8s_app_defaultcpu":{
"value":0,
"default":0,
"valid_values":[],
"description":"Number of CPU's for a pod planning when it is not configured in pod-spec. Default value is 0"
},
"k8s_app_defaultmem":{
"value":"0Mi",
"default":"0Mi",
"valid_values":"",
"description":"Memory for a pod planning when it is not configured in pod-spec. Default value is 0Mi (examples: 2Gi, 250Mi)"
},
"reserved_ephemeral_pods_count":{
"value":10,
"default":10,
"valid_values":"",
"description":"Number of pods to reserve for application hook scripts that run as Kubernetes Jobs"
},
"resource_sync_with_k8s":{
"value":5,
"default":5,
"valid_values":[],
"description":"Robin will syncup details like ip-pool with CR in k8s in a regular interface. Default interval is 5 mins"
},
"resource_cleanup_k8s":{
"value":30,
"default":30,
"valid_values":[],
"description":"Robin will cleanup such as ip if unsed for more than specified value (in mins). Default interval is 30 mins"
},
"rcm_cluster_ip":{
"value":"172.19.76.38",
"default":null,
"valid_values":"",
"description":"Robin Master Cluster IP"
},
"dns_cluster_ip":{
"value":"172.19.0.10",
"default":null,
"valid_values":"",
"description":"Core DNS Cluster IP"
},
"elb_integration":{
"value":false,
"default":false,
"valid_values":"",
"description":"ELB integration when creating Load Balancer services"
},
"enable_volume_jobs":{
"value":true,
"default":true,
"valid_values":"",
"description":"Enable Volume Operations to use respective jobs. Default is True"
},
"plan_begin_delay":{
"value":0,
"default":0,
"valid_values":[],
"description":"Allows Plan manager to sleep before beginning the plan. Default is 0 seconds"
},
"k8s_jit_jobcompletion":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Mimic the job completion at the time of webhook\/extension timeout. Default is False"
},
"calico_backend":{
"value":"bgp",
"default":"bgp",
"valid_values":[
"bgp",
"vxlan"
],
"description":"Calico Backend"
},
"reserved_net_enabled":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Enable configuration of reserved network if needed for a Pod"
},
"upgrade_checks_timeout":{
"value":1800,
"default":1800,
"valid_values":"",
"description":"Time in seconds to wait for Robin nodes to move to Ready state post upgrade"
},
"create_user_ns_tenant_isolation_nw_policies":{
"value":false,
"default":false,
"valid_values":"",
"description":"Create K8S Ingress\/Egress Network policies during user creations"
},
"k8scheduler_exclude_nodes":{
"value":"",
"default":"",
"valid_values":"",
"description":"Remove the nodes that kube-scheduler sends to Robin server to test host not found scenarios. Format comma separate nodenames. Default is ''"
},
"custom_theme":{
"value":"",
"default":"",
"valid_values":"",
"description":"If a custom theme needs to be enabled this variable should be set to the file object ID of the associated tarball. Default is '' indicating there is no custom theme."
}
},
"gui":{
"enable_metrics_view":{
"value":true,
"default":true,
"valid_values":"",
"description":"Enable metrics view in GUI"
},
"agent_res_allocator":{
"value":"topology_manager",
"default":"topology_manager",
"valid_values":[
"robin",
"topology_manager"
],
"description":"CPU allocator is robin or topology manager"
},
"enable_vdi":{
"value":false,
"default":false,
"valid_values":"",
"description":"Experimental VDI feature in ROBIN"
}
},
"database":{
"server":{
"value":"172.19.171.38",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The fully qualified hostname of the database server. Default: Hostname of the Robin server."
},
"port":{
"value":5432,
"default":29458,
"valid_values":"",
"description":"The port number of the database. Default: 29458."
},
"db_name":{
"value":"robin",
"default":"robin",
"valid_values":"",
"description":"The name of the database. Default: robin"
},
"user":{
"value":"robin",
"default":"robin",
"valid_values":"",
"description":"The name of the database user. Default: robin"
},
"password":"<REDACTED>",
"log_level":{
"value":20,
"default":20,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the database. Default: INFO"
}
},
"database_storage":{
"db_name":{
"value":"robin_storage",
"default":"robin_storage",
"valid_values":"",
"description":"The name of the storage database. Default: robin_storage"
}
},
"docker":{
"port":{
"value":2376,
"default":2376,
"valid_values":"",
"description":"The port where docker TCP connections are made. Default: 2376"
},
"docker_subnet":{
"value":"172.17.0.0",
"default":"172.17.0.0",
"valid_values":"",
"description":"Default docker subnet"
},
"storage_driver":{
"value":"overlay2",
"default":"devicemapper",
"valid_values":"",
"description":"The storage driver that docker will use. Default: devicemapper"
}
},
"event_server":{
"hostname":{
"value":"master.robin-server.service.robin",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The hostname of the event server. Default: Hostname of the Robin server."
},
"db_name":{
"value":"robin-event",
"default":"robin-event",
"valid_values":"",
"description":"The name of the DB used to store all event related information"
},
"db_connections":{
"value":10,
"default":10,
"valid_values":"",
"description":"The number of connections to DB"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the file server. Default: INFO"
},
"log_file":{
"value":"\/var\/log\/robin\/robin-event-server.log",
"default":"\/var\/log\/robin\/robin-event-server.log",
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log file"
},
"log_filesize":{
"value":10,
"default":10,
"valid_values":"",
"description":"The log file size"
},
"log_retention":{
"value":4,
"default":4,
"valid_values":"",
"description":"The count of log file archive retention"
},
"rest_port":{
"value":29449,
"default":29449,
"valid_values":"",
"description":"The port where rest connections are made to the event server. Default: 29449"
},
"event_deffile":{
"value":"\/opt\/robin\/current\/rcm\/event_types.json",
"default":"\/opt\/robin\/current\/rcm\/event_types.json",
"valid_values":"",
"description":"Event definition file"
},
"alert_workers":{
"value":32,
"default":32,
"valid_values":"",
"description":"The number of workers serving the REST event post requests"
},
"alert_req_q_size":{
"value":5000,
"default":5000,
"valid_values":"",
"description":"The number of requests that could be queued before serving when REST post event workers are busy"
},
"max_subscriber":{
"value":100,
"default":100,
"valid_values":"",
"description":"The number of maximum event notification workers"
},
"notification_evt_workers":{
"value":64,
"default":64,
"valid_values":"",
"description":"The number of maximum event notification workers"
},
"notification_evt_q_size":{
"value":5000,
"default":5000,
"valid_values":"",
"description":"The alert notification queue size used to store when event notification workers are busy"
},
"notification_alert_workers":{
"value":64,
"default":64,
"valid_values":"",
"description":"The number of maximum alert notification workers"
},
"notification_alert_q_size":{
"value":5000,
"default":5000,
"valid_values":"",
"description":"The alert notification queue size used to store when alert notification workers are busy"
},
"notification_failure_ids_size":{
"value":10,
"default":10,
"valid_values":"",
"description":"The maximum size of the list of events\/alerts notifications failure for a subscriber"
},
"purge_disable":{
"value":false,
"default":false,
"valid_values":"",
"description":"Disable purging the alerts and events"
},
"purge_hour":{
"value":1,
"default":1,
"valid_values":"",
"description":"The time in the day when the purging should run, default 1 (1AM)"
},
"purge_event_age":{
"value":168,
"default":168,
"valid_values":"",
"description":"Purge the events older than specified hours, default 168 hours (7 days)"
},
"purge_alert_age":{
"value":168,
"default":168,
"valid_values":"",
"description":"Purge the alerts older than specified hours, default 168 hours (7 days)"
},
"emit_app_labels":{
"value":false,
"default":false,
"valid_values":"",
"description":"Emit the app k8s labels with EVENT_APP_* event notifications"
},
"rakuten_app_labels":{
"value":"ns_uuid,nf_uuid",
"default":"ns_uuid,nf_uuid",
"valid_values":"",
"description":"Rakuten app k8s labels emitted with EVENT_APP_* event notifications"
},
"rakuten_role_labels":{
"value":"cnfc_uuid",
"default":"cnfc_uuid",
"valid_values":"",
"description":"Rakuten role k8s labels emitted with EVENT_APP_* event notifications"
}
},
"file_server":{
"hostname":{
"value":"robin-file-server.robinio",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The hostname of the file server. Default: local hostname."
},
"rest_port":{
"value":29445,
"default":29445,
"valid_values":"",
"description":"The port where rest connections are made to the file server. Default: 29445"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the file server. Default: INFO"
},
"rest_worker_threads":{
"value":20,
"default":20,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent REST requests"
}
},
"host":{
"host_type":{
"value":"physical",
"default":"physical",
"valid_values":[
"physical",
"ec2",
"azure",
"obmc",
"ibm",
"anthos",
"gcp"
],
"description":"The hardware type of the host. Default: physical"
},
"saas_mode":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Robin SAAS install"
},
"ovs_enabled":{
"value":true,
"default":true,
"valid_values":"",
"description":"OVS mode"
},
"mem_for_compute":{
"value":null,
"default":null,
"valid_values":"",
"description":"Amount of memory reserved in bytes for compute role"
},
"mem_for_management":{
"value":null,
"default":null,
"valid_values":"",
"description":"Amount of memory reserved in bytes for management role"
}
},
"manager":{
"connect_timeout":{
"value":"10s",
"default":"10s",
"valid_values":"",
"description":"The default HaProxy connection timeout. Default is '10s'"
},
"client_timeout":{
"value":"45s",
"default":"45s",
"valid_values":"",
"description":"The default timeout for HaProxy clients. Default is '45s'"
},
"server_timeout":{
"value":"45s",
"default":"45s",
"valid_values":"",
"description":"The default timeout for HaProxy servers. Default is '45s'"
},
"robincp_mode":{
"value":true,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Enable\/disable HaProxy access to Robin control plane services. Default is 'True'"
},
"disabled_masters":{
"value":null,
"default":null,
"valid_values":"",
"description":"Comma seperated list of master nodes to disable in HaProxy"
},
"robin_k8s_extension":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/disable Robin's scheduler extender and webhooks to plan the K8s apps (E.g., Helm). Default is 'True'"
},
"extender_failure_policy":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Allows K8s to plan its own when Robin fails to plan. Default is 'True'"
},
"extender_hard_affinity":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Extender to let K8s not to allow scheduling if storage affinity cannot be satisfied in RCM. Default is 'False'"
},
"extender_timeout":{
"value":63,
"default":63,
"valid_values":[],
"description":"Allows K8s to wait for response from Robin before applying extender_failure_policy. Default is '60 seconds'"
},
"mutating_webhook_timeout":{
"value":30,
"default":30,
"valid_values":[],
"description":"Allows K8s to wait for response from Robin before admitting the resources. Default is '30 seconds'"
},
"validating_webhook_timeout":{
"value":3,
"default":3,
"valid_values":[]
],
"description":"Allows K8s to wait for response from Robin before admitting the resources during validation. Default is '3 seconds'"
},
"webhook_k8spodplannerjob_timeout":{
"value":28,
"default":28,
"valid_values":[],
"description":"Network planning based K8SPodPlanner job timeout. Default is '28 seconds'"
},
"extender_k8spodplannerjob_timeout":{
"value":58,
"default":58,
"valid_values":[],
"description":"Storage planning based K8SPodPlanner job timeout. Default is '58 seconds'"
},
"mutating_webhook_delay_failure":{
"value":3,
"default":3,
"valid_values":[],
"description":"RCM delays failure response to avoid K8S to call RCM aggressively"
},
"mutating_webhook_staticip_validation_enable":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"RCM by default disables static ip validation in webhook context to avoid delay"
},
"mutating_webhook_check_planq":{
"value":false,
"default":false,
"valid_values":[
true,
false
],
"description":"Allow or skip, RCM to check the plan q before submitting the job"
},
"robincns_k8s_apiserver_feature_gates":{
"value":"",
"default":"",
"valid_values":"",
"description":"Let RCM knows the features gates of K8s API server in CNS. Format: <F1>=True,<F2>=False..."
}
},
"monitor_server":{
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the file server. Default: DEBUG"
},
"rest_port":{
"value":29448,
"default":29448,
"valid_values":"",
"description":"Robin Monitor Server Port. Default: 29448"
}
},
"notification":{
"smtp_server":{
"value":"localhost",
"default":"localhost",
"valid_values":"",
"description":"Hostname of the SMTP mail server."
},
"smtp_port":{
"value":0,
"default":0,
"valid_values":"",
"description":"Port number for the SMTP mail server"
},
"smtp_user":{
"value":null,
"default":null,
"valid_values":"",
"description":"User name for the SMTP email account"
},
"smtp_passwd":{
"value":"<REDACTED>",
"default":null,
"valid_values":"",
"description":"Password for the SMTP email account"
},
"smtp_ssl":{
"value":false,
"default":false,
"valid_values":"",
"description":"Email server requires SSL"
},
"smtp_sender":{
"value":"robinsupport@robin.io",
"default":"robinsupport@robin.io",
"valid_values":"",
"description":"SMTP sender email address"
},
"snmp_host":{
"value":null,
"default":null,
"valid_values":"",
"description":"Hostname\/IP Address where SNMP Traps should be sent."
},
"snmp_port":{
"value":null,
"default":null,
"valid_values":"",
"description":"Port number to use when sending SNMP traps"
},
"email_sender":{
"value":"robin@robin.io",
"default":"robin@robin.io",
"valid_values":"",
"description":"Email address of sender for all email notifications"
},
"insight_email_sender":{
"value":"insight@robin.io",
"default":"insight@robin.io",
"valid_values":"",
"description":"Email address of sender for all insight email reports"
}
},
"ontap":{
"retry_discover_lun_after_clone":{
"value":50,
"default":50,
"valid_values":"",
"description":"Number of retries to do if lun key cannot be discovered after cloning volume"
},
"retry_discover_volume_after_clone_from_backup":{
"value":500,
"default":500,
"valid_values":"",
"description":"Number of retries to do if volume key cannot be discovered after clone is complete from backup volume"
},
"retry_lun_mapping":{
"value":10,
"default":10,
"valid_values":"",
"description":"Number of retries to do for lun mapping as it fails with key not found"
}
},
"server":{
"hostname":{
"value":"master.robin-server.robinio.svc.cluster.local",
"default":"master.robin-server.robinio.svc.cluster.local",
"valid_values":"",
"description":"The hostname of the Robin server."
},
"rest_server":{
"value":"master.robin-server.service.robin",
"default":"master.robin-server.service.robin",
"valid_values":"",
"description":"The fully qualified hostname of the Robin rest server."
},
"rest_port":{
"value":29442,
"default":29442,
"valid_values":"",
"description":"The REST port of the Robin server. Default: 29442"
},
"relocation_threshold":{
"value":125,
"default":125,
"valid_values":"",
"description":"Time in seconds after Robin server starts relocating containers from an unreachable compute host. Default: 125. (Deprecated)"
},
"storage_task_purge_age":{
"value":7776000,
"default":7776000,
"valid_values":"",
"description":"We purge the tasks which are older than this parameter (default 90 days)"
},
"job_archive_cron":{
"value":"0 0 * * *",
"default":"0 0 * * *",
"valid_values":"",
"description":"Cron for job archive Default: Every midnight"
},
"job_archive_age":{
"value":86400,
"default":86400,
"valid_values":"",
"description":"Cron for job archive Default: Every midnight"
},
"job_purge_max_count":{
"value":100000,
"default":100000,
"valid_values":"",
"description":"Number of jobs to purge, avoid overloading the DB and filesystem, Default: 100,000"
},
"job_purge_cron":{
"value":"30 0 * * *",
"default":"30 0 * * *",
"valid_values":"",
"description":"Cron for job purge. Default: Everyday 30 minutes past midnight"
},
"job_purge_age":{
"value":1209600,
"default":1209600,
"valid_values":"",
"description":"Purge successful jobs with completed time lesser than purge age. Default: older than 2 weeks"
},
"job_purge_failed_age":{
"value":2419200,
"default":2419200,
"valid_values":"",
"description":"Purge failed jobs with completed time lesser than failed purge age. Default: older than 4 weeks"
},
"job_purge_maintenance_age":{
"value":604800,
"default":604800,
"valid_values":"",
"description":"Purge maintenance job with completed time lesser than maintenance purge age. Default: older than 1 week"
},
"job_purge_maintenance_jtypes":{
"value":"JobArchive,JobPurge",
"default":"JobArchive,JobPurge",
"valid_values":"",
"description":"List of maintenance job types to purge. Default: 'JobArchive,JobPurge'"
},
"job_cleanup_cron":{
"value":"0 1 1 * *",
"default":"0 1 1 * *",
"valid_values":"",
"description":"Cron for cleanup of stale job logs. Default: 1st of every month at 1AM"
},
"image_prune_cron":{
"value":"0 0 * * *",
"default":"0 0 * * *",
"valid_values":"",
"description":"Cron for pruning unused images Default: Every midnight"
},
"workflow_execution_type":{
"value":"async",
"default":"async",
"valid_values":"",
"description":"Workflow execution type (sync | async)"
},
"enable_workflow_debugging":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Enable\/Disable workflow debugging"
},
"insight_cron":{
"value":"0 *\/8 * * *",
"default":"0 *\/8 * * *",
"valid_values":"",
"description":"Cron for running insight report"
},
"enable_image_prune_schedule":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Enable\/Disable unused host image pruning"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the server. Default: DEBUG"
},
"log_file_size":{
"value":10,
"default":10,
"valid_values":"",
"description":"The log file size for robin server : Default 10 MB per file"
},
"log_filter_file":{
"value":"",
"default":"",
"valid_values":"",
"description":"Path to the log filter file. Default None"
},
"log_retention":{
"value":9,
"default":9,
"valid_values":"",
"description":"No: of backup log files for robin server : Default 9"
},
"inmem_log_capacity":{
"value":100,
"default":100,
"valid_values":"",
"description":"No: of log records per node to hold in mem befor flushing: Default 100"
},
"storage_provision_factor":{
"value":0.8,
"default":0.8,
"valid_values":"",
"description":"The factor used to over or under provision storage per disk. A value of 1 means that the exact amount of storage for a disk will be used."
},
"storage_alloc_policy":{
"value":"PACK",
"default":"PACK",
"valid_values":[
"PACK",
"SPREAD"
],
"description":"Storage allocation policy. PACK will pack volumes onto a disk till it is fully allocated. SPREAD will pick disks with fewer volumes."
},
"allow_latency_through_vols_on_disk":{
"value":false,
"default":false,
"valid_values":"",
"description":"Allow latency sensitive and throughput to go on the same disk"
},
"voltype_disk_reuse":{
"value":true,
"default":true,
"valid_values":"",
"description":"Determines if volumes of a volume type gets gets exclusive disk sets. This is not a strict enforement, rather a guideline"
},
"auto_move_disks":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/disable automatic attach\/detach of disks"
},
"allow_docker_rootfs":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/disable rootfs for docker instances"
},
"autopilot":{
"value":false,
"default":true,
"valid_values":[
true,
false
],
"description":"Engage\/Disengage Autopilot module"
},
"token_timeout":{
"value":24,
"default":24,
"valid_values":"",
"description":"The timeout in hours for a user login session. Default: 24"
},
"enable_apaudit":{
"value":true,
"default":true,
"valid_values":[
true,
false
],
"description":"Enable\/Disable APAUDIT logging"
},
"restart_burst_limit":{
"value":15,
"default":15,
"valid_values":"",
"description":"The number of failed restart attempts (within burst_interval) before robin server marks instances as ADMIN_WAIT. Default: 15"
},
"restart_burst_interval":{
"value":600,
"default":600,
"valid_values":"",
"description":"The number of seconds that the restart_burst_limit is tolerated. Default: 600"
},
"log_path":{
"value":"\/var\/log\/robin\/log_collect",
"default":"\/var\/log\/robin\/log_collect",
"valid_values":"",
"description":"The path where collected log files of the system will be stored. Default: \/var\/log\/robin\/log_collect"
},
"ssl_cert_file":{
"value":"\/etc\/robin\/rcm\/ssl\/robin_ssl.crt",
"default":"\/etc\/robin\/rcm\/ssl\/robin_ssl.crt",
"valid_values":"",
"description":"The filename of the SSL certificate file. Default: \/etc\/robin\/rcm\/ssl\/robin_ssl.crt"
},
"ssl_key_file":{
"value":"\/etc\/robin\/rcm\/ssl\/robin_ssl.key",
"default":"\/etc\/robin\/rcm\/ssl\/robin_ssl.key",
"valid_values":"",
"description":"The filename of the SSL key file. Default: \/etc\/robin\/rcm\/ssl\/robin_ssl.key"
},
"allocation_module":{
"value":"robin.rcm.server.resmgr.workload_storage_allocator.WorkloadAllocator",
"default":"robin.rcm.server.resmgr.workload_storage_allocator.WorkloadAllocator",
"valid_values":"",
"description":"The python path to the class that implements the Allocator"
},
"web_token_secret_key":{
"value":"<REDACTED>",
"default":null,
"valid_values":"",
"description":"The secret key used to sign web tokens."
},
"portmapping":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Enable\/Disable Port Mapping"
},
"auto_add_storage_disks":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Enable\/Disable host discovery and add disks"
},
"storage_providers":{
"value":[
"das",
"ontap"
],
"default":[
"das",
"ontap"
],
"valid_values":"",
"description":"Storage provider das\/ontap"
},
"storage_provider":{
"value":"ontap",
"default":"ontap",
"valid_values":"",
"description":"Storage provider robin\/ontap"
},
"disk_used_space_threshold":{
"value":80,
"default":80,
"valid_values":"",
"description":"Disk used space threshold used for alerts"
},
"disk_used_space_high_watermark":{
"value":90,
"default":90,
"valid_values":"",
"description":"Disk used space high watermark in percentage after which rebalance will be triggered automatically"
},
"disk_used_space_low_watermark":{
"value":80,
"default":80,
"valid_values":"",
"description":"Disk used space low watermark. This is the target percentage once disk reaches high watermark"
},
"slice_segcount_threshold":{
"value":64,
"default":64,
"valid_values":"",
"description":"Segment count per slice per volume threshold used for alerts"
},
"create_k8s_objects":{
"value":true,
"default":true,
"valid_values":"",
"description":"Enable K8S Object creation during bundle application hook executions"
},
"ext_auth_receive_timeout":{
"value":10,
"default":10,
"valid_values":"",
"description":"External auth receive timeout"
},
"ext_auth_connect_timeout":{
"value":10,
"default":10,
"valid_values":"",
"description":"External auth connect timeout"
},
"rest_worker_threads":{
"value":20,
"default":20,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent REST requests"
},
"rest_instances_worker_threads":{
"value":10,
"default":10,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent instances REST requests"
},
"rest_storage_worker_threads":{
"value":2,
"default":2,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent storage array REST GET requests"
},
"rest_metrics_worker_threads":{
"value":20,
"default":20,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent metrics REST GET\/PUT requests"
},
"rest_events_worker_threads":{
"value":5,
"default":5,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent events REST POST requests"
},
"rest_user_worker_threads":{
"value":5,
"default":5,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent user REST POST requests"
},
"rest_volume_worker_threads":{
"value":5,
"default":5,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent volume REST requests"
},
"session_pid_debug":{
"value":false,
"default":false,
"valid_values":"",
"description":"Log the PID of the current session when getting session or scoped session"
},
"k8s_snapshot_discard_kinds":{
"value":"",
"default":"",
"valid_values":"",
"description":"Kinds separate by comma in plural form which can be discarded during snapshot. Default: \"\""
},
"k8s_snapshot_enable_implicit_discard_kinds":{
"value":true,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Robin platform by default can discard certain kinds. Disable if required. Default: \"true\""
},
"k8s_snapshot_discard_resources":{
"value":"",
"default":"",
"valid_values":"",
"description":"Resources separate by comma to be discarded during namespace snapshot. Each resource string specified here must be in one of the format <kind>\/annotation\/<annotation-key>:=<value>, <kind>\/name\/<name>:=<value>, <kind>\/label\/<label>:=<value>. Default: \"\""
},
"k8s_snapshot_enable_implicit_discard_resources":{
"value":true,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Robin platform by default will discard certain resources during namespace snapshot that are created by kubernetes infra. Disable if required. Default: \"true\""
},
"k8s_recreated_resource_toskip_age":{
"value":180,
"default":180,
"valid_values":[],
"description":"During rollback, the resources will be deleted which can result in recreation by another operator before restoring the snapshot. Rollback will skip such recreated resources if seen within this configured time. Default: 180 seconds"
}
},
"user_audit":{
"enabled":{
"value":true,
"default":true,
"valid_values":[
"true",
"false"
],
"description":"Enable auditing of user activity."
},
"log_enable":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"Enable logging for user audit"
},
"log_format":{
"value":"JSON",
"default":"JSON",
"valid_values":[
"JSON",
"TEXT"
],
"description":"Output format for user audit log messages. Default: JSON"
},
"log_level":{
"value":20,
"default":20,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for user audit. Default: INFO"
},
"log_retention":{
"value":4,
"default":4,
"valid_values":"",
"description":"The count of user audit log file archive retention"
},
"log_file_size":{
"value":10,
"default":10,
"valid_values":"",
"description":"The log file size for user audit logs : Default 10 MB per file"
}
},
"vip_info":{
"vip":{
"value":"",
"default":"",
"valid_values":"",
"description":"VIP for Kubernetes cluster"
},
"port":{
"value":36443,
"default":"",
"valid_values":"",
"description":"VIP port for of the Kubernetes cluster"
},
"netmask":{
"value":16,
"default":"",
"valid_values":"",
"description":"VIP netmask for the Kubernetes cluster"
},
"vrid":{
"value":0,
"default":"",
"valid_values":"",
"description":"Virtual Router ID"
}
},
"watchdog_server":{
"hostname":{
"value":"localhost",
"default":"localhost",
"valid_values":"",
"description":"The hostname of the file server. Default: local hostname."
},
"rest_port":{
"value":29444,
"default":29444,
"valid_values":"",
"description":"The port where rest connections are made to the watchdog server. Default: 29444"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the watchdog server. Default: INFO"
}
},
"auth_server":{
"hostname":{
"value":"master.robin-server.service.robin",
"default":"master.robin-server.service.robin",
"valid_values":"",
"description":"The hostname of the auth server. Default: local master.robin-server.service.robin."
},
"rest_port":{
"value":29466,
"default":29466,
"valid_values":"",
"description":"The port where rest connections are made to the auth server. Default: 29466"
},
"log_level":{
"value":10,
"default":10,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the auth server. Default: INFO"
},
"rest_worker_threads":{
"value":10,
"default":10,
"valid_values":"",
"description":"Number of REST worker threads to handle concurrent REST requests"
}
},
"nfs":{
"max_exports_per_pod":{
"value":8,
"default":8,
"valid_values":"",
"description":"Maximum exports in a NFS server pod, default is 8"
},
"shared_pod_placement":{
"value":"PACK",
"default":"PACK",
"valid_values":"",
"description":"RWX pvc placement on the NFS server pod, default is PACK"
},
"nfs_server_storage_affinity":{
"value":"none",
"default":"none",
"valid_values":"",
"description":"NFS server pod placement policy"
},
"pod_creation_timeout":{
"value":600,
"default":600,
"valid_values":"",
"description":"Timeout value in seconds for nfs serer pod creation, default is 60"
},
"service_creation_timeout":{
"value":60,
"default":60,
"valid_values":"",
"description":"Timeout value in seconds for service creation, default is 60"
},
"failover_enabled":{
"value":1,
"default":1,
"valid_values":[
0,
1
],
"description":"Flag to enable\/disable failover of nfs server pods Default: 1 (True)"
},
"max_failover_timed_wait":{
"value":600,
"default":600,
"valid_values":"",
"description":"Max Timed wait before spawning another Server Pod Failover Job"
},
"shared_pod_failover_serialized":{
"value":1,
"default":1,
"valid_values":[
0,
1
],
"description":"Flag to serialize failover of nfs exports from shared pod, Default: 1 (True)"
},
"default_server_type":{
"value":"shared",
"default":"shared",
"valid_values":"",
"description":"Default NFS server pod type"
},
"shared_pod_cpu":{
"value":"100m",
"default":"100m",
"valid_values":"",
"description":"Default CPU resource for shared nfs server pod"
},
"shared_pod_memory":{
"value":"200Mi",
"default":"200Mi",
"valid_values":"",
"description":"Default memory resource for shared nfs server pod"
},
"excl_pod_cpu":{
"value":"100m",
"default":"100m",
"valid_values":"",
"description":"Default CPU resource for exclusive nfs server pod"
},
"excl_pod_memory":{
"value":"200Mi",
"default":"200Mi",
"valid_values":"",
"description":"Default memory resource for exclusive nfs server pod"
},
"shared_pod_cpu_limit":{
"value":"UNLIMITED",
"default":"UNLIMITED",
"valid_values":"",
"description":"Default cpu limit for shared nfs_server_pod"
},
"shared_pod_memory_limit":{
"value":"UNLIMITED",
"default":"UNLIMITED",
"valid_values":"",
"description":"Default memory limit for shared nfs_server_pod"
},
"exclusive_pod_cpu_limit":{
"value":"UNLIMITED",
"default":"UNLIMITED",
"valid_values":"",
"description":"Default cpu limit for exclusive nfs_server_pod"
},
"exclusive_pod_memory_limit":{
"value":"UNLIMITED",
"default":"UNLIMITED",
"valid_values":"",
"description":"Default memory limit for exclusive nfs_server_pod"
}
},
"cloud":{
"http_proxy":{
"value":null,
"default":null,
"valid_values":"",
"description":"Proxy server to be used for cloud APIs over HTTP"
},
"https_proxy":{
"value":null,
"default":null,
"valid_values":"",
"description":"Proxy server to be used for cloud APIs over HTTPS"
},
"ftp_proxy":{
"value":null,
"default":null,
"valid_values":"",
"description":"Proxy server to be used for cloud APIs over FTP"
},
"proxy_certificate":{
"value":false,
"default":false,
"valid_values":[
"true",
"false"
],
"description":"If enabled use Certificate for the Proxy Server at \/etc\/proxy-cert"
}
},
"sherlock":{
"log_level":{
"value":20,
"default":20,
"valid_values":[
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"description":"The log level for the sherlock. Default: INFO"
},
"cache_retention_time":{
"value":10,
"default":10,
"valid_values":"",
"description":"The sherlock cfg cache retention time. Default: 10 seconds"
},
"monitor_auth_enable":{
"value":false,
"default":false,
"valid_values":"",
"description":"The sherlock monitor authorization enable"
}
}
}
}
22.2. Update config attributes¶
In order to update the value associated with a config attribute, issue the following command:
robin config update <section> <attribute> <value>
--hosts <hosts>
--force
|
Section of the attribute to update |
|
Name of the attribute to update |
|
New value for specified attribute. For sensitive attributes do not specify the value in the command line a prompt will be displayed instead |
|
A comma separated list of hosts to configure. Note this parameter is only valid if the section is |
|
Override update restrictions |
Example:
# robin config update cluster reserved_ephemeral_pods_count 5
The 'cluster' attribute 'reserved_ephemeral_pods_count' has been updated
22.3. Table of Reference¶
Detailed below are all the configuration sections along with each of their associated attributes. The description, valid values and updatability of each attribute is also provided.
Note
Any attributes emphasized in bold are not updateable after a Robin cluster is installed.
22.3.1. Agent Attributes¶
Configuration attributes associated with the agent
section often relate to or impact all nodes (or at least a subset of worker nodes) within the cluster. Detailed below are all the relevant attributes for the section.
Attribute |
Valid values |
Description |
---|---|---|
rest_server |
Any valid FQDN |
The fully qualified hostname of the local Robin Agent rest server |
rest_port |
29450 |
The port where rest connections are made to the agents. Default: 29450 |
registration_timeout |
Any valid integer |
The timeout in seconds after which the agent tries to register with the server again. Default: 10 seconds. |
nfs_mount_options |
Any valid mount options |
The options used when mounting an NFS share. Default: nolock,rw,timeo=60 |
hard_reset_on_isolation |
0, 1 |
The flag which tells Robin agent to perform a hard reset of the operating system on a network isolation. Default: 0 (False) |
kvm_enabled |
‘True’, ‘False’ |
Enable support for the KVM engine. Default: True |
kvm_virtlauncher_image |
Any valid image name |
KVM virtlauncher image to use. Default: robinsys/virtlauncher:centos8 |
file_object_cache |
Any valid pathname |
The path where file objects (bundles/images et. all) are cached locally. Default: /var/lib/robin/file_object_cache |
server_rest_port |
Any valid integer |
RCM Server Rest Port. Default: 29442 |
https_port |
Any valid integer |
HTTPS Port for Robin UI. Default: 29443 |
event_server_port |
Any valid integer |
Robin Event Server Port. Default: 29449 |
sherlock_rest_port |
Any valid integer |
Sherlock Server Port. Default: 29446 |
nodejs_port |
Any valid integer |
Node JS Port for Robin Pod Console Access. Default: 29447 |
stormgr_rpc_port |
Any valid integer |
Storage Manager RPC Port. Default: 29451 |
rdvm_rpc_port |
Any valid integer |
RDVM RPC Port. Default: 29452 |
rio_rpc_port |
Any valid integer |
RIO RPC Port. Default: 29453 |
stormgr_rest_port |
Any valid integer |
Storage Manager Rest Port. Default: 29454 |
rdvm_rest_port |
Any valid integer |
RDVM Rest Port. Default: 29455 |
rio_rest_port |
Any valid integer |
RIO Rest Port. Default: 29456 |
node_exporter_port |
Any valid integer |
Prometheus Node Exporter Port. Default: 29457 |
database_port |
Any valid integer |
Postgres Database Port. Default 29458 |
consul_server_port |
Any valid integer |
Consul Server Port. Default: 29459 |
consul_serflan_port |
Any valid integer |
Consul Serf Lan Port. Default: 29460 |
consul_serfwan_port |
Any valid integer |
Consul Serf Wan Port. Default: 29461 |
consul_http_port |
Any valid integer |
Consul HTTP Port. Default: 29462 |
node_monitor_port |
Any valid integer |
Robin node monitor HTTP Port. Default: 29467 |
stormgr_rest_listen_addr |
“127.0.0.1”, “::1”, “0.0.0.0”, “:::” |
Stormgr Rest Listener Address. Default: 127.0.0.1 |
rdvm_rest_listen_addr |
“127.0.0.1”, “::1”, “0.0.0.0”, “:::” |
RDVM Rest Listener Address. Default: 127.0.0.1 |
rio_rest_listen_addr |
“127.0.0.1”, “::1”, “0.0.0.0”, “:::” |
RIO Rest Listener Address. Default: 127.0.0.1 |
rio_tcmu_device_io_timeout_secs |
Any valid integer |
RIO TCMU device timeout in seconds. Default: 84600 |
rdvm_mem_maxcap |
Any valid integer |
Dictates the maximum memory (in bytes) allocated for Robin storage services on a hybrid node. Default: 25769803776 |
rdvm_mem_alloc |
Any valid integer |
Amount of memory (in bytes) allocated for robin storage services. Note that this attribute only is only a placeholder. The actual value is set on a per-node basis and is calculated based on the type of node (hybrid vs. storage), amount of memory, etc. Any non-zero value will trigger a recalculation for all specified nodes. Default: 0 |
rdvm_bmapcache_invalidate_all |
0, 1 |
Invalidate the on-disk bmap cache entries on all devices of node. Default 0 (False) |
rdvm_bmapcache_skip_all |
0, 1 |
Skip the bmap cache usage on all devices of node. This does not invalidate the existing on-disk entries. Default 0 (False) |
suicide_threshold |
Any valid integer |
Time in seconds after an isolated Robin host starts killing containers. Default: 50 seconds |
rediscover_timeout |
Any valid integer |
Time in seconds to wait for response from during rediscovery. Default: 120 seconds |
proc_virtualization |
‘True’, ‘False’ |
Enable/Disable proc virtualization |
prefix_dockerio |
‘True’, ‘False’ |
Boolean indicating whether or not to prefix ‘docker.io’ to all non-registry images |
kubelet_restart_tolerance |
Any valid integer |
Number of seconds Autopilot will wait for kubelet to restart containers in a POD before taking action to re-deploy the POD. Default: 35 seconds |
kubelet_restart_bursttime |
Any valid integer |
Number of seconds for kubelet_restart_burstlimit. Default: 25 seconds |
kubelet_restart_burstlimit |
Any valid integer |
Number of container restarts by kubelet in kubelet_restart_bursttime monitor-server will tolerate before reporting the POD as offline to robin-server. Default: 2 |
monitor_interval |
1 - 10 |
Robin host monitoring interval in seconds. Default: 1 second |
monitor_num_samples |
1 - 3600 |
Robin host monitoring sample count. Default: 3600. Requires a monitor-server restart |
monitor_report_interval |
Any valid integer |
Robin host reporting interval in seconds. Default: 5 seconds |
monitor_network |
‘True’, ‘False’ |
Robin host monitor network. Default: True |
monitor_influx_details |
Any valid string |
Used to generate Influx DB URL. URL format is PROTO://HOST:PORT auth=user:password. Default: ‘{“url”: “”, “dbname”: “robin”, “auth”: “:” }’ |
monitor_push_interval |
Any valid integer |
Monitor server to external time series DB push interval in seconds. Default 60 seconds |
monitor_host_root_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s root volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_host_root_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s root volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_host_var_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s /var volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_host_var_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s /var volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_host_var_log_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s /var/log volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_host_var_log_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s /var/log volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_host_var_pgsql_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s /var/lib/pgsql volume is over the percentage specified a highmark alert will be raised. Default: 0.7 (70%) |
monitor_host_var_pgsql_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s /var/lib/pgsql volume is under the percentage specified a lowmark alert will be raised. Default: 0.5 (50%) |
monitor_host_var_crash_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s /var/crash volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_host_var_crash_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s /var/crash volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_host_var_robin_volume_highmark |
0.0 - 1.0 |
If utilization of a host’s /var/lib/robin volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_host_var_robin_volume_lowmark |
0.0 - 1.0 |
If utilization of a host’s /var/lib/robin volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_host_swap_highmark |
0.0 - 1.0 |
If utilization of a host’s swap space is over the percentage specified a highmark alert will be raised. Default: 0.8 (80%) |
monitor_host_swap_lowmark |
0.0 - 1.0 |
If utilization of a host’s swap space is under the percentage specified a lowmark alert will be raised. Default: 0.75 (75%) |
monitor_container_volume_highmark |
0.0 - 1.0 |
If utilization of a container’s volume is over the percentage specified a highmark alert will be raised. Default: 0.9 (90%) |
monitor_container_volume_lowmark |
0.0 - 1.0 |
If utilization of a container’s volume is under the percentage specified a lowmark alert will be raised. Default: 0.85 (85%) |
monitor_container_swap_highmark |
0.0 - 1.0 |
If utilization of a container’s swap space is over the percentage specified a highmark alert will be raised. Default: 0.8 (80%) |
monitor_container_swap_lowmark |
0.0 - 1.0 |
If utilization of a container’s swap space is under the percentage specified a lowmark alert will be raised. Default: 0.75 (75%) |
monitor_host_mem_highmark |
0.0 - 1.0 |
If utilization of a host’s total memory is over the percentage specified a highmark alert will be raised. Default: 0.85 (85%) |
monitor_host_mem_lowmark |
0.0 - 1.0 |
If utilization of host’s total memory is under the percentage specified a lowmark alert will be raised. Default: 0.8 (80%) |
monitor_host_cpu_highmark |
0.0 - 1.0 |
If utilization of a host’s total CPU is over the percentage specified a highmark alert will be raised. Default: 0.85 (85%) |
monitor_host_cpu_lowmark |
0.0 - 1.0 |
If utilization of host’s total CPU is under the percentage specified a lowmark alert will be raised. Default: 0.8 (80%) |
metrics_grafana_details |
Any valid string |
Used to generate Grafana URL. URL format is PROTO://HOST:PORT auth=user:password. Default: ‘{“url”: “”, auth”: “:” }’ |
robincri_log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for Robin CRI. Default: WARNING |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the Robin Agent. Default: DEBUG |
network_type |
4, 6 |
IP protocol version 4 or 6. Default: 4 |
dedicated_vcpu_usage_factor |
0.0 - 1.0 |
Default dedicated vcpu usage ratio. Default: 0.5 (50%) |
cri |
robin, dockershim, kubelet |
CRI type. Default: robin |
agent_res_allocator |
robin, topology_manager |
CPU allocator. Default: topology_manager |
topology_manager_policy |
‘none’, ‘best-effort’, ‘restricted’, ‘single-numa-node’ |
Topology manager policy. Default: restricted |
cpu_manager_policy |
‘none’, ‘static’ |
CPU manager policy. Default: static |
pod_max_pids |
Any valid integer |
The max number of processes to be running per pod per K8S node via kubelet configuration. Default: 1000 |
shared_cpu_limit |
Any valid integer |
Value to set as limits (and plan for) for shared Robin applications. The lowest value possible is 0. To set limits equal to the value specified at runtime turn off this variable by setting the value as -1. Default: 1 |
monitor_d_state_event_timeout_secs |
0 - 3600 |
Robin monitor server will detect important processes stuck in uninterruptable sleep (D) state and after the specified timeout (in seconds) raise an alert. Default: 60 seconds |
monitor_d_state_timeout_secs |
0 - 3600 |
Robin monitor server will detect important processes stuck in uninteruptable sleep (D) state and after the specified timeout (in seconds) it will reboot the server. Default: 600 seconds |
monitor_enable_monitor_inotify |
‘True’, ‘False’ |
Boolean variable indicating whether Robin Monitor Server will discover inotify. Default: False |
monitor_inotify_cache_timeout |
0 - 2880 |
Robin Monitor Server will cache the inotify result and clear the cache per the timeout (in minutes) configured. Default: 60 minutes |
monitor_include_iwatcher_in_inotify |
‘True’, ‘False’ |
Boolean variable indicating whether Robin Monitor Server will include iwatcher while discovering inotify. Default: False |
create_mig_partitions_on_reboot |
‘True’, ‘False’ |
Boolean variable indicating whether MIG partitions will be created on reboot. Default: False |
22.3.2. Application Attributes¶
Configuration attributes associated with the app
section often relate to or impact applications settings or control the behavior of the orchestrator when planning applications. Detailed below are all the relevant attributes for the section.
Attribute |
Valid values |
Description |
---|---|---|
enable_hooklogs |
True, False |
Enable/disable logging of application hook scripts. Can be overriden at application level |
enable_metrics |
True, False |
Enable/disable application metrics. Can be overriden at application level |
enable_limit_range |
‘enable’, ‘disable’, ‘permissive’ |
Set value for limit range setting |
skip_namespace_for_limit_check |
Any valid namespace(s) |
Namespaces that must be skipped from resource limits check. Format is comma separated values. Default: robinio,kube-system |
apply_limit_range_on |
‘bundle’, ‘non-bundle’, ‘all’ |
Type of applications for which limit range is to be applied |
job_hooks_memory_limit |
Any valid memory limit value |
Memory limit value for hook jobs when it is not configured in spec. Default value is 1G (examples: 2Gi, 250Mi) |
job_hooks_memory_limit |
Any valid CPU limit value |
CPU limit value for hook jobs when it is not configured in spec. Default value is 1 (examples: 2G, 250m) |
22.3.3. UI Attributes¶
Configuration attributes associated with the gui
section often relate to or impact what information is displayed on the Robin UI as well as what details users have access to. Detailed below are all the relevant attributes for the section.
Attribute |
Valid values |
Description |
---|---|---|
enable_metrics_view |
True, False |
Enable/disable viewing metrics in the UI |
agent_res_allocator |
‘robin’, ‘topology_manager’ |
Name of plugin responsible for resource allocation |
enable_vdi |
True, False |
Enable/disable experimental VDI feature in the UI |
22.3.4. Client Attributes¶
Configuration attributes associated with the client
section often relate to or impact the behavior of the Robin client. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes should be updated locally using the native robin client
commands.
Attribute |
Valid values |
Description |
---|---|---|
server |
Any valid FQDN |
The hostname of the Robin server to connect to |
rest_port |
Any valid integer |
The REST port of the Robin server. Default: 29442 |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the client. Default: DEBUG |
enable_colors |
‘true’, ‘false’ |
If enabled the client will use colors to indicate degraded and faulted states. Default: ‘true’ |
22.3.5. Event Server Attributes¶
Configuration attributes associated with the event_server
section often relate to or impact configuration of the Robin Event Server. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
hostname |
Any valid FQDN |
The fully qualified hostname of the event server. Default: Hostname of the Robin server |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the event server. Default: INFO |
log_file |
Any valid file path |
The full path at which to store the event server logs. Default: /var/log/robin/robin-event-server.log |
log_filesize |
Any valid integer |
Size of the event server log file in MB. Default: 10 MB |
log_retention |
Any valid integer |
The count of log file archive retention. Default: 4 |
22.3.6. File Server Attributes¶
Configuration attributes associated with the file_server
section often relate to or impact configuration of the Robin File Server. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
hostname |
Any valid FQDN |
The fully qualified hostname of the file server. Default: Hostname of the Robin server |
port |
Any valid integer |
The port where rest connections are made to the file server. Default: 29445 |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the file server. Default: INFO |
22.3.7. Monitor Server Attributes¶
Configuration attributes associated with the monitor_server
section often relate to or impact configuration of the Monitor Server running on every node within a Robin cluster. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
rest_port |
Any valid integer |
The port where rest connections are made to the monitor server. Default: 29448 |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the monitor server. Default: DEBUG |
22.3.8. User Audit Attributes¶
Configuration attributes associated with the user_audit
section often relate to or impact configuration of the auditing tools present on a Robin Cluster. Detailed below are all the relevant attributes for the section.
Note
More details on the auditing capabilities available to users can be found here.
Attribute |
Valid values |
Description |
---|---|---|
enabled |
‘True’, ‘False’ |
Enable auditing of user activity |
log_enable |
‘True’, ‘False’ |
Enable logging for user audit |
log_format |
‘JSON’, ‘TEXT’ |
Output format for user audit log messages if enabled. Default: JSON |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for user audit. Default: INFO |
log_retention |
Any integer value |
The count of user audit log file archive retention. Default: 4 |
log_file_size |
Any integer value |
The log file size for user audit logs in MB. Default: 10 |
22.3.9. High Availability Attributes¶
Configuration attributes associated with the vip_info
section often relate to or impact configuration of Kubernetes cluster with regards to high availability. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and cannot be updated as they are set at the time of installation. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
vip |
Any valid IP address |
VIP for the Kubernetes cluster |
port |
Any valid integer |
VIP port for the Kubernetes cluster |
netmask |
Any valid IP address |
VIP netmask for the Kubernetes cluster |
vrid |
Any valid integer |
Virtual Router ID |
22.3.10. Auth Server Attributes¶
Configuration attributes associated with the auth_server
section often relate to or impact configuration of the Robin Auth Server. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
hostname |
Any valid FQDN |
The hostname of the auth server. Default: master.robin-server.service.robin |
rest_port |
Any valid integer |
The port where rest connections are made to the auth server. Default: 29466 |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the auth server. Default: DEBUG |
22.3.11. Cloud Attributes¶
Configuration attributes associated with the cloud
section often relate to or impact the APIs linked to cloud-based platforms. Detailed below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
http_proxy |
Any valid IP address |
Proxy server to be used for cloud APIs over HTTP. By default it is not set |
https_proxy |
Any valid IP address |
Proxy server to be used for cloud APIs over HTTPS. By default it is not set |
ftp_proxy |
Any valid IP address |
Proxy server to be used for cloud APIs over FTP. By default it is not set |
proxy_certificate |
‘true’, ‘false’ |
Boolean attribute indicating whether or not to use the certificate at /etc/proxy-cert for the Proxy Server. Default: False |
22.3.12. Sherlock Tool Attributes¶
Configuration attributes associated with the sherlock
section often relate to or impact configuration of the Robin’s native debugging tool Sherlock; details for which can be found here <troubleshooting.html#sherlock>. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
monitor_auth_enable |
‘true’, ‘false’ |
If enabled data can be scraped from Sherlock by a special Metrics only user. By default this attribute is not enabled. |
cache_retention_time |
Any valid integer |
The retention time in seconds for the configuration cached by Sherlock. Default: 10 seconds. |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the Sherlock tool. Default: INFO |
22.3.13. Disaster Recovery Attributes¶
Configuration attributes associated with the dr
section often relate to or impact configuration of the Robin’s disaster recovery facilities for applications. Shown below are all the relevant attributes for the section.
Attribute |
Valid values |
Description |
---|---|---|
poll_timeout |
Any valid integer |
Timeout in seconds on how long the peer cluster will be polled. Default: 30 seconds |
max_pending_pair_requests |
Any valid integer |
Max number of pending pair requests allowed on a single cluster. Default: 30 |
max_retain_snapshots_count |
Any valid integer |
Max number of snapshots to retain as part of the replication policy. Default: 250 |
flush_dr_stats |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the collected statistics for applications should be flushed once it has been synced. Default: True |
retain_dr_stats |
Any valid integer |
Time in seconds to retain transmission statistics for applications. Default: 120 seconds |
auto_assign_mode |
‘mirror’, ‘default’, ‘manual’ |
Auto-assignment mode for protection group creation and application assignment |
max_pending_repl_jobs |
Any valid integer |
Maximum number of outstanding replication jobs for a protection group. Default: 4 |
max_snapshot_import_attempts |
Any valid integer |
Number of times the snapshot restore operation is retried. Default: 2 |
enable_dr_stats_push |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the collected DR statistics should be pushed to the Sherlock server. Default: True |
app_creation_timeout |
Any valid integer |
Timeout in seconds the indefinite wait to create the app when there is a delay in app creation or loading, and it results in a delay in application registration. Default: 600 seconds. |
primary_repl_resp_timeout |
Any valid integer |
Timeout in seconds for secondary to respond to primary for replication completion. Default: 86400 seconds |
22.3.14. Host Attributes¶
Configuration attributes associated with the host
section often relate to or impact the physical configuration of hosts within the Robin cluster. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
host_type |
‘physical’, ‘ec2’, ‘azure’, ‘ibm’, ‘anthos’, ‘gcp’ |
The hardware type of the host. Default: physical |
saas_mode |
‘true’, ‘false’ |
Boolean attribute indicating whether the current cluster is installed with Robin Storage or Robin Platform |
ovs_enabled |
‘true’, ‘false’ |
Boolean attribute indicating whether OVS is enabled for the host |
mem_for_compute |
Any valid integer |
Amount of memory reserved in bytes for compute role. Default: 0 |
mem_for_management |
Any valid integer |
Amount of memory reserved in bytes for management role. Default: 0 |
22.3.15. Database Attributes¶
Configuration attributes associated with the database
section often relate to or impact the configuration of the Robin database. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
server |
Any valid FQDN |
The fully qualified hostname of the database server. Default: Hostname of the Robin server. |
port |
Any valid integer |
The port number of the database. Default: 29458. |
db_name |
Any valid string |
The name of the database. Default: robin |
user |
Any valid string |
The name of the database user. Default: robin |
password |
Any valid string |
The password of the database user |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the database. Default: INFO |
pre_ping |
‘True’, ‘False’ |
Boolean attribute indicating whether or not a ping should be sent to the database prior to making a connection |
22.3.16. Event Notification Attributes¶
Configuration attributes associated with the notification
section often relate to or impact the configuration of how users are notified of events or alerts occuring on a given Robin cluster. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
smtp_server |
Any valid hostname |
The hostname of the SMTP mail server. Default: localhost |
smtp_port |
Any valid integer |
Port number for the SMTP mail server. Not set by default |
smtp_user |
Any valid string |
User name for the SMTP email account. Not set by default |
smtp_password |
Any valid string |
Password for the SMTP email account. Not set by default |
smtp_ssl |
‘True’, ‘False’ |
Boolean value indicating whether or not the SMTP email server has SSL enabled. |
smtp_sender |
Any valid string |
SMTP sender email address. Default: robinsupport@robin.io |
snmp_host |
Any valid hostname |
Hostname/IP Address where SNMP Traps should be sent. Not set by default |
snmp_port |
Any valid integer |
Port number to use when sending SNMP traps. Not set by default |
email_sender |
Any valid string |
Email address of sender for all email notifications. Default: robin@robin.io |
insight_email_sender |
Any valid string |
Email address of sender for all insight email reports. Default: insight@robin.io |
22.3.17. Network File System Attributes¶
Configuration attributes associated with the nfs
section often relate to or impact the configuration of NFS pods which are used to support the creation of ReadWriteMany volumes; details for which can be found here <manage_storage.html#readwritemany-rwx-volumes>. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
max_exports_per_pod |
Any valid integer |
Maximum exports in a NFS server pod. Default is 8 |
shared_pod_placement |
‘PACK’, ‘SPREAD’ |
RWX PVC placement on the NFS server pod. Default: PACK |
nfs_server_storage_affinity |
‘none’, ‘preferred’, ‘required’ |
NFS server pod placement policy in regards to storage affinity. Default: none |
pod_creation_timeout |
Any valid integer |
Timeout value in seconds for NFS server pod creation. Default: 600 seconds |
service_creation_timeout |
Any valid integer |
Timeout value in seconds for service creation. Default: 60 seconds |
failover_enabled |
0, 1 |
Flag to enable/disable failover of NFS server pods. Default: 1 (True) |
max_failover_timed_wait |
Any valid integer |
Timeout value in seconds before spawning another Server Pod Failover Job. Default: 600 seconds |
shared_pod_failover_serialized |
0, 1 |
Flag to serialize failover of nfs exports from shared pod. Default: 1 (True) |
default_server_type |
‘shared’, ‘exclusive’ |
Default type for NFS server pod. Default: shared. |
shared_pod_cpu |
Any valid value for CPU resources in Kubernetes |
Default CPU requests for shared NFS server pods. Default: 100m |
shared_pod_memory |
Any valid value for Memory resources in Kubernetes |
Default Memory requests for shared NFS server pods. Default: 200Mi |
excl_pod_cpu |
Any valid value for CPU resources in Kubernetes |
Default CPU requests for exclusive NFS server pods. Default: 100m |
excl_pod_memory |
Any valid value for Memory resources in Kubernetes |
Default CPU requests for exclusive NFS server pods. Default: 200Mi |
shared_pod_cpu_limit |
Any valid value for CPU resources in Kubernetes |
Default CPU limits for shared NFS server pods. Not set by default |
shared_pod_memory_limit |
Any valid value for Memory resources in Kubernetes |
Default Memory limits for shared NFS server pods. Not set by default |
exclusive_pod_cpu_limit |
Any valid value for CPU resources in Kubernetes |
Default CPU limits for exclusive NFS server pods. Not set by default |
exclusive_pod_memory_limit |
Any valid value for Memory resources in Kubernetes |
Default CPU limits for exclusive NFS server pods. Not set by default |
nfsv4_grace_period |
Any valid integer |
NFSv4 Grace Period. Default 25 |
nfsv4_lease_lifetime |
Any valid integer |
NFSv4 Lease Lifetime. Default 10 |
log_file_size_cap |
Any valid integer |
Max file size for logs before they are rotated. Can be specified in bytes, or use standard notation for kilobytes (K), megabytes (M), and gigabytes (G). Default: 64M |
log_files_rotate |
Any valid integer |
The count of log file archive retention. Default: 10 |
22.3.18. Cluster wide Attributes¶
Configuration attributes associated with the cluster
section often relate to or impact the configuration of the entire Robin cluster in a variety of facets. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
max_node_count |
Any valid integer |
Maximum number of nodes that can be part of a cluster. Default: 65535 |
enable_telemetry |
‘True’, ‘False’ |
Boolean attribute indicating whether or not telemetry data will be sent to the Robin Insight server. Default: False |
telemetry_server |
Any valid URL |
Name and port of the telemetry server. Default: insight.robinsystems.com:443 |
telemetry_interval |
Any valid integer |
Interval, in seconds, for collecting telemetry data. Default: 86400 |
reserved_subnet |
Any valid network range |
Reserved subnet to be used by Robin. Default: 172.20.0.0 |
robinds_dir |
Any valid file path |
Robin daemonset folder to be used during Robin Installation. Default: /home/robinds |
robinlog_dir |
Any valid file path |
Robin log folder to be used during Robin Installation. Default: /home/robinds |
robincrash_dir |
Any valid file path |
Robin crash folder to be used during Robin Installation. Default: /home/robinds |
robin_install_dir |
Any valid file path |
Robin install config folder to be used during Robin Installation. Default: /usr/local/robin |
robin_backup_dir |
Any valid file path |
Robin backup folder to be used during Robin Installation. Default: /etc/robin |
ovs_enabled |
‘True’, ‘False’ |
Boolean attribute indicating whether or not OVS is enabled for the cluster. Default: True |
kms |
‘robin’, ‘google’, ‘k8s’, ‘vault’ |
Name of key management service. Default: k8s |
kms_keyring |
Any valid string |
Cryptographic key ring for specifed key management service. Default: k8skeyring |
kms_version |
Any valid string |
Robin key management service version. Default: v2 |
disable_calico |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the Calico CNI Plugin should be disabled. Default: False |
disable_isolated_ip_pools |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the Robin Loopback CNI Plugin should be disabled. Default: False |
colocate_rcm_k8s |
‘True’, ‘False’ |
Boolean attribute indicating whether or not it should be enforced that the Kubernetes API server and Robin server exist on the same node. Default: True |
robin_managed_k8s |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the current cluster was installed with Robin managed Kubernetes. Default: True |
k8s_pod_cidr |
Any valid network range |
Kubernetes default Pod CIDR subnet. Default: 172.21.0.0/16 |
k8s_cluster_cidr |
Any valid network range |
Kubernetes default Cluster CIDR subnet. Default: 172.19.0.0/16 |
external_routes |
Any valid network range |
Comma separated External routes to be added for EC2 deployments. Not set by default |
network_policy_scope |
‘allow-all’, ‘namespace’, ‘tenant’, ‘user’, ‘app’, ‘deny-all’ |
Kubernetes Ingress/Egress Network Policy Scope when creating applications. Default: allow-all |
k8s_provider |
‘robin’, ‘gke’, ‘openshift’, ‘aks’, ‘iks’, ‘eks’, ‘rke’, ‘upstream’ |
External Kubernetes Provider. Default: robin |
deployment_source |
‘installer’, ‘operatorhub’, ‘spec’, ‘gcpmarkeplace’, ‘marketplace’, ‘express’, ‘enterprise’ |
Source of deployment. Default: installer |
csi_storage_affinity |
‘True’, ‘False’ |
Boolean attribute indicating whether or not compute-storage affinity should be enabled for Kubernetes applications. Default: True |
csi_plugin_name |
‘robin’, ‘robin-0-3’ |
Robin storage class name. Default: robin |
marketplace |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the cluster was created via the Google Marketplace. Default: False |
snapshot_space_limit |
Any valid integer |
Default snapshot space limit in bytes when creating application. A snapshot space limit of 0 indicates no restrictions on the usage of snapshots. Default: 0 |
robin_ns |
Any valid namespace |
Namespace in which all Robin related Kubernetes objects are spawned. Default: robinio |
ignored_phases |
Any valid string |
Comma seperated string of Kubernetes Pod phases to ignore when calculating Pod resource usage. Default: failed |
update_coredns |
‘True’, ‘False’ |
Boolean attribute indicating whether or not DNS resolution for nodes is to be provided using Core DNS. Default: False |
update_etc_hosts |
‘True’, ‘False’ |
Boolean attribute indicating whether or not DNS resolution is not supported across nodes and /etc/hosts should be updated. Default: False |
ip_version |
4, 6 |
IP version to be used for the cluster. Default is 4 |
remove_taints |
‘True’, ‘False’ |
Boolean attribute indicating whether or not taints have been removed from Kubernetes Master nodes. Default: True |
cluster_domain |
Any valid string |
Kubernetes cluster domain. Default: cluster.local |
cluster_name |
Any valid string |
Custom cluster name. Default: default |
disable_scale_hpa |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to disable scale in/out operations for applications when HPA is enabled. Default: True |
disable_hpa |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to disable the HPA feature. Default: False |
max_inst_per_role |
Any valid integer |
Maximum number of instances that can be part of a role. Default: 5000 |
enable_nmap |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to enable a NMap check to avoid IP address collisions. Default: False |
enable_vdi |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to enable the experimental VDI feature. Default: False |
license_server_url |
Any valid URL |
URL of License Server to use when activating license. Default: https://get.robin.io |
license_external_https_proxy |
Any valid URL |
Address of https proxy for external connection to license server in the format IP:Port. It is not set by default |
license_renew_period |
Any valid integer |
Number of days before license expiry to attempt automatic renewal. If the value is set to a negative number the feature is disabled. Default: -1 |
k8s_cluster_tenant_enabled |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the ‘K8sCluster’ tenant is enabled. Default: False |
k8s_cert_expiryalert_days |
Any valid integer |
Number of days before the expiry of the Kubernetes certificate to alert the user. Default: 30 |
pod_ready_timeout |
Any valid integer |
Time in seconds to wait for pod to go into ready state. Default: 900 seconds |
loadbalancer_supported |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the current cluster environment supports loadbalancers. Default: False |
default_csi_respool |
Any valid resource pool |
Default resource pool to use for external PVCs. Default: default |
default_pod_respool |
Any valid resource pool |
Default resource pool to use when planning for compute-storage affinity. Default: default |
default_pod_ippool |
Any valid IP-Pool |
Default IP-Pool name to use for network planning. Default: nonrobin-default |
reserved_ephemeral_pods_count |
Any valid integer |
Number of pods to reserve for application hook scripts that run as Kubernetes Jobs. Default: 10 |
rcm_cluster_ip |
Any valid IP Address |
Robin Master Cluster IP. Not set by default |
dns_cluster_ip |
Any valid IP Address |
Core DNS Cluster IP. Not set by default |
elb_integration |
‘True’, ‘False’ |
Boolean attribute indicating whether or not there should ELB integration when creating LoadBalancer services. Default: False |
enable_volume_jobs |
‘True’, ‘False’ |
Boolean attribute indicating whether or not volume operations should be performed in the context of a Job. Default: True |
calico_backend |
‘bgp’, ‘vxlan’ |
Name of Calico backend. Default: bgp |
reserved_net_enabled |
‘True’, ‘False’ |
Boolean attribute indicating whether or not reserved networks should be configured if needed for a Pod. Default: False |
upgrade_checks_timeout |
Any valid integer |
Time in seconds to wait for Robin nodes to move to Ready state post upgrade. Default: 1800 seconds |
create_user_ns_tenant_isolation_nw_policies |
‘True’, ‘False’ |
Boolean attribute indicating whether or not Kubernetes Ingress/Egress Network policies should be created during user addition. Default: False |
custom_theme |
Any valid integer |
The file object ID of the tarball associated with the custom theme. This is not set by default |
max_ips_per_range |
Any valid integer |
Maximum number of IPs that can be configured per range, should be a power of 2. Default: 8192 (8k) |
disable_ip_alloc_in_ipam |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to allocate IP Addresses via Robin IPAM. Default: True |
best_effort_qos |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to set CPU requests to O for Best-Effort Pods on clusters with isolated cores. Default: False |
22.3.19. Manager Node Attributes¶
Configuration attributes associated with the manager
section often relate to or impact the configuration of the Kubernetes master nodes of the Robin cluster. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
connect_timeout |
Any valid time string |
The default HaProxy connection timeout, presented in seconds. Default: ’10s’ |
client_timeout |
Any valid time string |
The default timeout for HaProxy clients, presented in seconds. Default: ’45s’ |
server_timeout |
Any valid time string |
The default timeout for HaProxy servers, presented in seconds. Default: ’45s’ |
robincp_mode |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to enable HaProxy access to Robin control plane services. Default: True |
disabled_masters |
Any valid string of hostnames |
Comma seperated list of master nodes to disable in HaProxy. Not set by default |
robin_k8s_extension |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to enable Robin’s scheduler extender and webhooks such that helm applications are planned by the Robin orchestrator. Default: True |
extender_failure_policy |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to allow the native Kubernetes scheduler to plan on it’s own in the case Robin’s orchestrator fails to plan. Default: True |
extender_hard_affinity |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to allow the native Kubernetes scheduler to continue to deploy objects when storage affinity cannot be satisfied. Default: False |
extender_timeout |
1 - 600 |
Amount of time, in seconds, the Kubernetes scheduler waits for a response from Robin before applying the |
mutating_webhook_timeout |
1 - 30 |
Amount of time, in seconds, the Kubernetes scheduler waits for a response from Robin before admitting resources. Default: 30 seconds |
validating_webhook_timeout |
1 - 30 |
Amount of time, in seconds, the Kubernetes scheduler waits for a response from Robin before admitting resources during validation. Default: 3 seconds |
webhook_k8spodplannerjob_timeout |
1 - 30 |
Timeout value, in seconds, for the network planning to occur as part of the K8SPodPlanner job. Default: 20 seconds |
extender_k8spodplannerjob_timeout |
1 - 600 |
Timeout value, in seconds, for the storage planning to occur as part of the K8SPodPlanner job. Default: 58 seconds |
mutating_webhook_delay_failure |
1 - 20 |
Additional time, in seconds, added to the failure response from the Robin scheduler to reduce the number of calls from Kubernetes. Default: 3 seconds |
mutating_webhook_staticip_validation_enable |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to validate static IP addresses in the context of the webhook as it can cause delays. Default: False |
mutating_webhook_check_planq |
‘True’, ‘False’ |
Boolean attribute indicating whether or not the Robin scheduler should check the planning queue before submitting an additional job. Default: False |
robincns_k8s_apiserver_feature_gates |
Any valid string |
Comma seperated list of feature gates of the Kubernetes API server in the format <F1>=True,<F2>=False etc. This attribute is only valid when Robin CNS is installed and is not set by default |
22.3.20. Server Attributes¶
Configuration attributes associated with the server
section often relate to or impact the configuration of the Robin server itself and the actions it takes with regards to orchestration. Shown below are all the relevant attributes for the section.
Note
Each of these attributes are only visible to superadmin users and hence can only be updated by the aforementioned users. They are presented here as a reference.
Attribute |
Valid values |
Description |
---|---|---|
hostname |
Any valid FQDN |
The hostname of the Robin server |
rest_server |
Any valid FQDN |
The fully qualified hostname of the Robin rest server. Default: master.robin-server.service.robin |
rest_port |
Any valid integer |
The port where rest connections are made to the Robin server. Default: 29442 |
storage_task_purge_age |
Any valid integer |
The age, in seconds, of tasks that should be purged. Default: 7776000 (90 days) |
job_archive_cron |
Any valid CRON string |
CRON string representing the time at which the job archival schedule will run. Default: 0 0 * * * (every day at midnight) |
job_archive_age |
Any valid integer |
The age, in seconds, at which jobs should be purged. Default: 86400 (1 day) |
job_purge_max_count |
Any valid integer |
Number of jobs to purge in order to avoid overloading the DB and filesystem. Default: 100,000 |
job_purge_cron |
Any valid CRON string |
CRON string representing the time at which the job purge schedule will run. Default: 30 0 * * * (every day at 30 minutes past midnight) |
job_purge_age |
Any valid integer |
The age, in seconds, at which successfully completed jobs should be purged. Default: 1209600 (2 weeks) |
job_purge_failed_age |
Any valid integer |
The age, in seconds, at which completed jobs, which have failed, should be purged. Default: 2419200 (4 weeks) |
job_purge_maintenance_age |
Any valid integer |
The age, in seconds, at which maintenance jobs should be purged. Default: 604800 (1 week) |
job_purge_maintenance_jtypes |
Any valid string |
Comma seperated list of job types to be referenced as maintenance jobs. Default: ‘JobArchive,JobPurge’ |
job_cleanup_cron |
Any valid CRON string |
CRON string representing the time at which the schedule for cleaning up stale job logs will run. Default: 0 1 1 * * (1st of every month at 1AM) |
image_prune_cron |
Any valid CRON string |
CRON string representing the time at which the schedule for pruning unused images will run. Default: 0 0 * * * (every day at midnight) |
workflow_execution_type |
‘sync’, ‘async’ |
Type of workflow execution. Default: async |
enable_workflow_debugging |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to enable workflow debugging. Default: False |
insight_cron |
Any valid CRON string |
CRON string representing the time at which the schedule for producing an insight report will run. Default: 0 */8 * * * (Every 8 hours) |
enable_image_prune_schedule |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to enable the schedule to prune unused images from hosts. Default: False |
log_level |
‘DEBUG’, ‘INFO’, ‘WARNING’, ‘ERROR’, ‘CRITICAL’ |
The log level for the Robin server. Default: DEBUG |
log_file_size |
Any integer value |
The log file size for Robin server logs in MB. Default: 10 |
log_filter_file |
Any valid file path |
Path to the log filter file. Not set by default |
log_retention |
Any valid integer |
The count of log file archive retention. Default: 9 |
log_retention |
Any valid integer |
The number of log records per node to hold in memory before flushing. Default: 100 |
storage_provision_factor |
Any valid float |
The factor used to over or under provision storage per disk. A value of 1 means that the exact amount of storage for a disk will be used. Default: 0.8 |
storage_alloc_policy |
‘PACK’, ‘SPREAD’ |
The storage allocation policy to enforce how volumes are allocated to disks. Default: SPREAD |
compute_alloc_policy |
‘PACK’, ‘SPREAD’ |
The compute allocation policy to enforce how vnodes are allocated to nodes. Default: SPREAD |
compute_resource_sort_order |
‘PODS’, ‘MEMORY’, ‘CPU’ |
The compute resource sort order will determine which attribute of compute resources will be prioritized. A comma seperated string of resources in the necessary priority order must be given. Default: CPU,MEMORY,PODS |
allow_latency_through_vols_on_disk |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to allow latency sensitive volumes and throughput volumes to go on the same disk. Default: False |
voltype_disk_reuse |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not volumes of a volume type gets gets exclusive disk sets. This is not a strict enforement, rather a guideline. Default: True |
auto_move_disks |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to enable automatic attach/detach of disks on cloud based clusters when nodes become unreachable. Default: True |
allow_docker_rootfs |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to enable automatic attach/detach of disks on cloud based clusters when nodes become unreachable. Default: True |
allow_docker_rootfs |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not the root filesystem can be used by docker instances. Default: True |
autopilot |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not the autopilot module should be engaged. Default: True |
token_timeout |
Any valid integer |
The timeout, in hours, for a user login session. Default: 24 |
enable_apaudit |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not autopilot auditing should be enabled. Default: True |
restart_burst_limit |
Any valid integer |
The number of failed restart attempts (within the burst interval) before the Robin server marks instances as ADMIN_WAIT. Default: 15 |
restart_burst_interval |
Any valid integer |
The number of seconds that the restart_burst_limit is tolerated. Default: 600 |
log_path |
Any valid file path |
The path where collected log files of the system will be stored. Default: /var/log/robin/log_collect |
ssl_cert_file |
Any valid file path |
The path at which the SSL certificate file is located. Default: /etc/robin/rcm/ssl/robin_ssl.crt |
ssl_key_file |
Any valid file path |
The path at which the SSL key file is located. Default: /etc/robin/rcm/ssl/robin_ssl.key |
web_token_secret_key |
Any valid string |
The secret key used to sign web tokens. Not set by default |
portmapping |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not portmapping should be enabled. Default: False |
auto_add_storage_disks |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not automatic host discovery and consequent initialization of disks should be enabled. Default: False |
storage_providers |
Any valid string |
Comma seperated list of all storage providers. Default: ‘das,ontap’ |
storage_provider |
‘robin’, ‘ontap’ |
Selected storage provider. Default: ontap |
disk_used_space_threshold |
0 - 100 |
Percentage of disks space that needs to be used in order to trigger an alert. Default: 80% |
disk_used_space_high_watermark |
0 - 100 |
Percentage of disks space that needs to be used in order to trigger a rebalance operation such that usage is reduced. Default: 90% |
disk_used_space_low_watermark |
0 - 100 |
Target percentage of disk space to be used after rebalance operations are complete. Default: 80% |
slice_segcount_threshold |
Any valid integer |
Value that segment count per slice per volume has to reach in order to trigger an alert. Default: 64 |
create_k8s_objects |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not Kubernetes objects can be created during bundle application hook executions. Default: True |
ext_auth_receive_timeout |
Any valid integer |
Timeout, in seconds, to recieve a response from the external auth. Default: 10 |
ext_auth_connect_timeout |
Any valid integer |
Timeout, in seconds, to connect to external auth. Default: 10 |
enable_rcm_metrics |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to collect Robin server metrics for Prometheus scraping. Default: True |
chargeback_track_k8s_resusage |
‘True’, ‘False’ |
Boolean attribute to indicate whether or not to enable the chargeback feature for applications that are not Robin Bundle based. Default: False |
max_jobmgr_planning_threads |
1 - 40 |
The maximum number of job worker threads that can pull from the planning queue |
limitrange_enabled |
‘True’, ‘False’ |
Boolean attribute indicating whether or not to enable a limit range for Ephemeral Storage. Default: False |
limitrange_limit |
Any valid storage limit value |
Value for the default ephemeral-storage limit within LimitRange policy. Default: 1GB (examples: 2GB, 250MB) |
limitrange_interval |
Any valid integer |
Time in seconds the LimitRange schedule periodically waits for before checking for namespaces that do not have a LimitRange applied to them. Default: 3600s |
limitrange_type |
‘Container’ |
The type of object the ephemeral-storage limit within the LimitRange policy will be applied to. Default: Container |
skip_namespace_for_limitrange |
Any valid namespace(s) |
Namespaces that must be skipped when creating a Kubernetes Limit Range. Format is comma separated values. Default: robinio,kube-system. Note when updating do not remove the kube-system or robinio namespaces from the input string |
metrics_timeout |
Any valid integer |
Set timeout period for metrics start job. If any of the Metrics feature related Pods (cAdvisor, Grafana, or Prometheus) do not come up within the timeout period, the metrics start job will fail. The default timeout is 3600 seconds. It is recommended not to set the timeout period to less than 900 seconds. |