# provisioning ## Index - [Cluster](#cluster) - [ClusterDef](#clusterdef) - [K8sAffinity](#k8saffinity) - [K8sAffinityLabelSelector](#k8saffinitylabelselector) - [K8sAffinityMatch](#k8saffinitymatch) - [K8sAntyAffinityLabelSelector](#k8santyaffinitylabelselector) - [K8sBackup](#k8sbackup) - [K8sConfigMap](#k8sconfigmap) - [K8sContainers](#k8scontainers) - [K8sDefs](#k8sdefs) - [K8sDeploy](#k8sdeploy) - [K8sDeploySpec](#k8sdeployspec) - [K8sKeyPath](#k8skeypath) - [K8sKeyVal](#k8skeyval) - [K8sPort](#k8sport) - [K8sPrxyGatewayServer](#k8sprxygatewayserver) - [K8sPrxyPort](#k8sprxyport) - [K8sPrxyTLS](#k8sprxytls) - [K8sPrxyVirtualService](#k8sprxyvirtualservice) - [K8sPrxyVirtualServiceMatch](#k8sprxyvirtualservicematch) - [K8sPrxyVirtualServiceMatchURL](#k8sprxyvirtualservicematchurl) - [K8sPrxyVirtualServiceRoute](#k8sprxyvirtualserviceroute) - [K8sResources](#k8sresources) - [K8sSecret](#k8ssecret) - [K8sService](#k8sservice) - [K8sVolume](#k8svolume) - [K8sVolumeClaim](#k8svolumeclaim) - [K8sVolumeMount](#k8svolumemount) - [RunSet](#runset) - [ScaleData](#scaledata) - [ScaleResource](#scaleresource) - [Server](#server) - [ServerDefaults](#serverdefaults) - [Settings](#settings) - [Storage](#storage) - [StorageVol](#storagevol) - [TaskServDef](#taskservdef) ## Schemas ### Cluster cluster settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**admin_host**|str||| |**admin_port**|int||| |**admin_user**|str||| |**clusters_save_path**|str||| |**def** `required`|"K8sDeploy" | ""||""| |**local_def_path** `required`|str||"./clusters/${name}"| |**name** `required`|str||| |**not_use** `required`|bool||False| |**profile**|str||| |**scale**|[ScaleResource](#scaleresource)||| |**ssh_key_path**|str||| |**template**|"k8s-deploy" | ""||| |**version** `required`|str||| ### ClusterDef ClusterDef settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**name** `required`|str||| |**profile** `required`|str||"default"| ### K8sAffinity K8S Deployment Affinity settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**affinity**|[K8sAffinityLabelSelector](#k8saffinitylabelselector)||| |**antiAffinity**|[K8sAntyAffinityLabelSelector](#k8santyaffinitylabelselector)||| ### K8sAffinityLabelSelector K8S Deployment Affinity Label Selector settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**labelSelector** `required`|[[K8sAffinityMatch](#k8saffinitymatch)]||| |**matchLabelKeys**|[str]||| |**topologyKey**|str||| |**typ** `required`|"requiredDuringSchedulingIgnoredDuringExecution" | "preferredDuringSchedulingIgnoredDuringExecution"||"requiredDuringSchedulingIgnoredDuringExecution"| ### K8sAffinityMatch K8S Deployment Affinity Match settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**key** `required`|str||| |**operator** `required`|"In" | "NotIn" | "Exists" | "DoesNotExist"||| |**values** `required`|[str]||| ### K8sAntyAffinityLabelSelector K8S Deployment AntyAffinity Label Selector settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**labelSelector** `required`|[[K8sAffinityMatch](#k8saffinitymatch)]||| |**matchLabelKeys**|[str]||| |**topologyKey**|str||| |**typ** `required`|"requiredDuringSchedulingIgnoredDuringExecution" | "preferredDuringSchedulingIgnoredDuringExecution"||"requiredDuringSchedulingIgnoredDuringExecution"| |**weight** `required`|int||100| ### K8sBackup K8S Backup settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**mount_path** `required`|str||| |**name** `required`|str||| |**typ** `required`|str||| ### K8sConfigMap K8S Volume ConfigMap settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**name** `required`|str||| ### K8sContainers K8S Container settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**cmd**|str||| |**env**|[[K8sKeyVal](#k8skeyval)]||| |**image** `required`|str||| |**imagePull** `required`|"IfNotPresent" | "Always" | "Never"||"IfNotPresent"| |**name** `required`|str||"main"| |**ports**|[[K8sPort](#k8sport)]||| |**resources_limits**|[K8sResources](#k8sresources)||| |**resources_requests**|[K8sResources](#k8sresources)||| |**volumeMounts**|[[K8sVolumeMount](#k8svolumemount)]||| ### K8sDefs #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**cluster_domain** `required`|str||| |**domain** `required`|str||| |**full_domain** `required`|str||| |**name** `required`|str||| |**ns** `required`|str||| |**primary_dom** `required`|str||| ### K8sDeploy K8S Deployment settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**backups**|[[K8sBackup](#k8sbackup)]||| |**bin_apply** `required`|bool||True| |**create_ns** `required`|bool||False| |**full_domain**|str||| |**labels** `required`|[[K8sKeyVal](#k8skeyval)]||[K8sKeyVal {key: "${name}", value: "${name}"}]| |**name** `required`|str||| |**name_in_files** `required`|str||"${name}"| |**namespace** `required`|str | "default"||| |**prxy** `readOnly`|"istio"||"istio"| |**prxyGatewayServers**|[[K8sPrxyGatewayServer](#k8sprxygatewayserver)]||| |**prxyVirtualService**|[K8sPrxyVirtualService](#k8sprxyvirtualservice)||| |**prxy_ns**|str||"istio-system"| |**sel_labels** `required`|[[K8sKeyVal](#k8skeyval)]||labels| |**service**|[K8sService](#k8sservice)||| |**spec** `required`|[K8sDeploySpec](#k8sdeployspec)||| |**tls_path**|str||"ssl"| |**tpl_labels** `required`|[[K8sKeyVal](#k8skeyval)]||labels| ### K8sDeploySpec K8S Deployment Spec settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**affinity**|[K8sAffinity](#k8saffinity)||| |**containers** `required`|[[K8sContainers](#k8scontainers)]||| |**hostUsers**|bool||True| |**imagePullSecret**|str||| |**nodeName**|str||| |**nodeSelector**|[[K8sKeyVal](#k8skeyval)]||| |**replicas** `required`|int||1| |**secrets**|[[K8sSecret](#k8ssecret)]||| |**volumes**|[[K8sVolume](#k8svolume)]||| ### K8sKeyPath K8S key,path settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**key** `required`|str||| |**path** `required`|str||| ### K8sKeyVal K8S label,selector,env settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**key** `required`|str||| |**value** `required`|str||| ### K8sPort K8S Port settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**container**|int||| |**name** `required`|str||| |**nodePort**|int||| |**target**|int||| |**typ**|str||"TCP"| ### K8sPrxyGatewayServer K8S Deployment Proxy Gateway Server settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**hosts**|[str]||| |**port** `required`|[K8sPrxyPort](#k8sprxyport)||| |**tls**|[K8sPrxyTLS](#k8sprxytls)||| ### K8sPrxyPort K8S Proxy Port settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**name** `required`|str||| |**number**|int||| |**proto** `required`|"HTTP" | "HTTPS" | "TCP"||"HTTPS"| ### K8sPrxyTLS K8S Deployment Proxy TLS settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**credentialName**|str||| |**httpsRedirect**|bool||False| |**mode**|"SIMPLE" | "PASSTHROUGH" | "MULTI" | ""||"SIMPLE"| ### K8sPrxyVirtualService K8S Deployment Proxy Virtual Service settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**gateways** `required`|[str]||| |**hosts** `required`|[str]||| |**matches**|[[K8sPrxyVirtualServiceMatch](#k8sprxyvirtualservicematch)]||| ### K8sPrxyVirtualServiceMatch K8S Deployment Proxy Virtual Service Match settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**location**|[[K8sPrxyVirtualServiceMatchURL](#k8sprxyvirtualservicematchurl)]||| |**route_destination**|[[K8sPrxyVirtualServiceRoute](#k8sprxyvirtualserviceroute)]||| |**typ** `required`|"tcp" | "http" | "tls"||| ### K8sPrxyVirtualServiceMatchURL K8S Deployment Proxy Virtual Service Match URL settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**port**|int||| |**sniHost**|[str]||| ### K8sPrxyVirtualServiceRoute K8S Deployment Proxy Virtual Service Route settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**host** `required`|str||| |**port_number** `required`|int||| ### K8sResources #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**cpu** `required`|str||| |**memory** `required`|str||| ### K8sSecret K8S Volume Secret settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**items** `required`|[[K8sKeyPath](#k8skeypath)]||| |**name** `required`|str||| ### K8sService K8S Service settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**externaIPs**|[str]||| |**externalName**|str||| |**name** `required`|str||| |**ports** `required`|[[K8sPort](#k8sport)]||| |**proto** `required` `readOnly`|"TCP"||"TCP"| |**selector**|[[K8sKeyVal](#k8skeyval)]||| |**typ** `required`|"ClusterIP" | "NodePort" | "LoadBalancer" | "ExternalName" | "Headless" | "None"||"ClusterIP"| ### K8sVolume K8S Volume settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**configMap**|[K8sConfigMap](#k8sconfigmap)||| |**items**|[[K8sKeyPath](#k8skeypath)]||| |**name** `required`|str||| |**persitentVolumeClaim**|[K8sVolumeClaim](#k8svolumeclaim)||| |**secret**|[K8sSecret](#k8ssecret)||| |**typ** `required`|"volumeClaim" | "configMap" | "secret"||"volumeClaim"| ### K8sVolumeClaim K8S VolumeClaim settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**abbrev_mode**|["RWO" | "ROX" | "RWX" | "RWOP"]||["RWO"]| |**hostPath**|str||| |**modes** `required`|["ReadWriteOnce" | "ReadOnlyMain" | "ReadWriteMany" | "ReadWriteOncePod"]||["ReadWriteOnce"]| |**name** `required`|str||| |**pvMode**|"unspecified" | "Filesystem" | "Block"||| |**pvcMode**|"unspecified" | "Filesystem" | "Block"||| |**reclaimPolicy**|"Recycle" | "Retain" | "Delete"||"Retain"| |**storage**|str||| |**storageClassName** `required`|"manual" | "nfs-client" | "rook-cephfs"||"manual"| |**typ** `required`|"volumeClaim" | "configMap" | "secret" | ""||""| ### K8sVolumeMount K8S VolumeMounts settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**mountPath** `required`|str||| |**name** `required`|str||| |**readOnly** `required`|bool||False| |**subPath**|str||| ### RunSet #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**inventory_file** `required`|str||"./inventory.yaml"| |**output_format** `required`|"human" | "yaml" | "json"||"human"| |**output_path** `required`|str||"tmp/NOW-deploy"| |**use_time** `required`|bool||True| |**wait** `required`|bool||True| ### ScaleData scale data #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**def** `required`|str||| |**disabled** `required`|bool||False| |**expire**|str||| |**from**|str||| |**mode** `required`|"auto" | "manual" | "ondemand"||"manual"| |**to**|str||| ### ScaleResource scale server settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**default** `required`|[ScaleData](#scaledata)||| |**down**|[ScaleData](#scaledata)||| |**fallback**|[ScaleData](#scaledata)||| |**max**|[ScaleData](#scaledata)||| |**min**|[ScaleData](#scaledata)||| |**path** `required`|str||"/etc/scale_provisioning"| |**up**|[ScaleData](#scaledata)||| ### Server server settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**cluster**|[[ClusterDef](#clusterdef)]||| |**delete_lock** `required`|bool||False| |**domains_search**|str||| |**extra_hostnames**|[str]||| |**fix_local_hosts** `required`|bool||True| |**hostname** `required`|str||| |**installer_user**|str||"${user}"| |**labels** `required`|str||| |**lock** `required`|bool||False| |**main_domain**|str||| |**network_private_id**|str||| |**network_private_name**|str||| |**network_public_ip**|str||| |**network_public_ipv4**|bool||True| |**network_public_ipv6**|bool||False| |**network_utility_ipv4** `required`|bool||True| |**network_utility_ipv6** `required`|bool||False| |**not_use** `required`|bool||False| |**primary_dns**|str||| |**priv_cidr_block**|str||| |**running_timeout** `required`|int||200| |**running_wait** `required`|int||10| |**scale**|[ScaleResource](#scaleresource)||| |**secondary_dns**|str||| |**ssh_key_name**|str||| |**ssh_key_path**|str||| |**storage_os**|str||| |**storage_os_find** `required`|str||"name: debian-12 \| arch: x86_64"| |**taskservs**|[[TaskServDef](#taskservdef)]||| |**time_zone** `required`|str||"UTC"| |**title** `required`|str||| |**user** `required`|str||| |**user_home**|str||"/home/${user}"| |**user_ssh_key_path**|str||| |**user_ssh_port**|int||22| |**zone**|str||| ### ServerDefaults Server Defaults settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**domains_search**|str||| |**fix_local_hosts** `required`|bool||True| |**installer_user**|str||"${user}"| |**labels** `required`|str||| |**lock** `required`|bool||False| |**main_domain**|str||| |**network_private_id**|str||| |**network_private_name**|str||| |**network_public_ip**|str||| |**network_public_ipv4**|bool||True| |**network_public_ipv6**|bool||False| |**network_utility_ipv4** `required`|bool||True| |**network_utility_ipv6** `required`|bool||False| |**primary_dns**|str||| |**priv_cidr_block**|str||| |**running_timeout** `required`|int||200| |**running_wait** `required`|int||10| |**scale**|[ScaleResource](#scaleresource)||| |**secondary_dns**|str||| |**ssh_key_name**|str||| |**ssh_key_path**|str||| |**storage_os**|str||| |**storage_os_find** `required`|str||"name: debian-12 \| arch: x86_64"| |**time_zone** `required`|str||"UTC"| |**user** `required`|str||| |**user_home**|str||"/home/${user}"| |**user_ssh_key_path**|str||| |**user_ssh_port**|int||22| |**zone**|str||| ### Settings Settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**cluster_admin_host** `required`|str||| |**cluster_admin_port** `required`|int||22| |**cluster_admin_user** `required`|str||"root"| |**clusters_paths** `required`|[str]||["clusters"]| |**clusters_save_path** `required`|str||"/${main_name}/clusters"| |**created_clusters_dirpath** `required`|str||"./tmp/NOW_clusters"| |**created_taskservs_dirpath** `required`|str||"./tmp/NOW_deployment"| |**defaults_provs_dirpath** `required`|str||"./defs"| |**defaults_provs_suffix** `required`|str||"_defaults.k"| |**main_name** `required`|str||| |**main_title** `required`|str||main_name| |**prov_clusters_path** `required`|str||"./clusters"| |**prov_data_dirpath** `required`|str||"./data"| |**prov_data_suffix** `required`|str||"_settings.k"| |**prov_local_bin_path** `required`|str||"./bin"| |**prov_resources_path** `required`|str||"./resources"| |**runset** `required`|[RunSet](#runset)||| |**servers_paths** `required`|[str]||["servers"]| |**servers_wait_started** `required`|int||27| |**settings_path** `required`|str||"./settings.yaml"| ### Storage Storage settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**fstab** `required`|bool||True| |**mount** `required`|bool||True| |**mount_path**|str||| |**name** `required`|str||| |**parts**|[[StorageVol](#storagevol)]||[]| |**size** `required`|int||0| |**total** `required`|int||size| |**type** `required`|"ext4" | "xfs" | "btrfs" | "raw" | "zfs"||"ext4"| ### StorageVol StorageVol settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**fstab** `required`|bool||True| |**mount** `required`|bool||True| |**mount_path**|str||| |**name** `required`|str||| |**size** `required`|int||0| |**total** `required`|int||size| |**type** `required`|"ext4" | "xfs" | "btrfs" | "raw" | "zfs"||"ext4"| ### TaskServDef TaskServDef settings #### Attributes | name | type | description | default value | | --- | --- | --- | --- | |**install_mode** `required`|"getfile" | "library" | "server" | "library-server" | "server-library"||"library"| |**name** `required`|str||| |**profile** `required`|str||"default"|