admin_gui |
Parameters of the admin GUI |
object({ name = optional(string, “admin-app”) image = optional(string, “dockerhubaneo/armonik_admin_app”) tag = string port = optional(number, 1080) limits = optional(map(string)) requests = optional(map(string)) service_type = optional(string, “ClusterIP”) replicas = optional(number, 1) image_pull_policy = optional(string, “IfNotPresent”) image_pull_secrets = optional(string, “”) node_selector = optional(map(string), {}) }) |
null
|
no |
authentication |
Authentication behavior |
object({ name = optional(string) image = optional(string) tag = optional(string) image_pull_policy = optional(string) image_pull_secrets = optional(string) node_selector = optional(any) authentication_datafile = optional(string) require_authentication = bool require_authorization = bool trusted_common_names = optional(set(string), []) }) |
n/a |
yes |
chart_name |
Name for chart |
string
|
"keda-hpa"
|
no |
chart_version |
Version for chart |
string
|
"0.1.0"
|
no |
charts_repository |
Path to the charts repository |
string
|
"../charts"
|
no |
compute_plane |
Parameters of the compute plane |
map(object({ partition_data = object({ priority = optional(number, 1) reserved_pods = optional(number, 0) max_pods = optional(number, 1) preemption_percentage = optional(number, 0) parent_partition_ids = optional(set(string), []) pod_configuration = optional(map(string), {}) }) replicas = number termination_grace_period_seconds = number image_pull_secrets = string node_selector = any annotations = any service_account_name = string socket_type = optional(string, “unixdomainsocket”) security = optional(object({ user = optional(number, 5000) # keep default user if set to -1 }), {}) polling_agent = object({ image = string tag = string image_pull_policy = string limits = optional(map(string)) requests = optional(map(string)) conf = optional(any, {}) }) worker = list(object({ name = string image = string tag = string image_pull_policy = string limits = optional(map(string)) requests = optional(map(string)) conf = optional(any, {}) })) cache_config = object({ memory = bool size_limit = string # if larger than supported, the max value for the node will be used instead }) node_cache = optional(object({ path = optional(string) threshold = optional(number, 0) })) readiness_probe = optional(bool, false) hpa = any })) |
n/a |
yes |
configurations |
Extra configurations for the various components |
object({ core = optional(any, []) control = optional(any, []) compute = optional(any, []) worker = optional(any, []) polling = optional(any, []) log = optional(any, []) metrics = optional(any, []) jobs = optional(any, []) }) |
n/a |
yes |
control_plane |
Parameters of the control plane |
object({ name = string service_type = string replicas = number image = string tag = string image_pull_policy = string port = number limits = optional(map(string)) requests = optional(map(string)) image_pull_secrets = string node_selector = any annotations = any hpa = any default_partition = string service_account_name = string }) |
n/a |
yes |
environment_description |
Description of the environment deployed |
any
|
null
|
no |
fluent_bit |
the fluent-bit module output |
object({ configmaps = object({ envvars = string config = string }) container_name = string image = string is_daemonset = bool tag = string
windows_configmaps = object({ envvars = string config = string }) windows_container_name = string windows_image = string windows_is_daemonset = bool windows_tag = string }) |
null
|
no |
grafana |
the grafana module output |
object({ host = string port = string url = string }) |
null
|
no |
ingress |
Parameters of the ingress controller |
object({ name = optional(string, “ingress”) service_type = optional(string, “LoadBalancer”) replicas = optional(number, 1) image = optional(string, “nginxinc/nginx-unprivileged”) tag = optional(string) image_pull_policy = optional(string, “IfNotPresent”) http_port = optional(number, 5000) grpc_port = optional(number, 5001) limits = optional(map(string)) requests = optional(map(string)) image_pull_secrets = optional(string, “”) node_selector = optional(map(string)) annotations = optional(map(string)) tls = optional(bool, false) mtls = optional(bool, false) generate_client_cert = optional(bool, false) custom_client_ca_file = optional(string, “”) langs = optional(set(string), [“en”]) cors_allowed_host = optional(string, “*”) cors_allowed_headers = optional(set(string), []) # Will be added to the default cors headers. cors_allowed_methods = optional(set(string), [“GET”, “POST”, “OPTIONS”]) cors_preflight_max_age = optional(number, 1728000) }) |
n/a |
yes |
init |
Parameters of the init job |
object({ name = optional(string, “init”) image = string tag = string image_pull_policy = string image_pull_secrets = string node_selector = map(string) annotations = map(string) populate = optional(object({ partitions = optional(bool, true) authentication = optional(bool, true) }), {}) }) |
null
|
no |
job_partitions_in_database |
LEGACY: Job to insert partitions IDs in the database |
object({ name = string image = string tag = string image_pull_policy = string image_pull_secrets = string node_selector = any annotations = any }) |
null
|
no |
keda_chart_name |
Name of the Keda Helm chart |
string
|
"keda"
|
no |
load_balancer |
Parameters of the Load Balancer deployment |
object({ image = optional(string, “dockerhubaneo/armonik_load_balancer”) tag = optional(string) image_pull_policy = optional(string, “IfNotPresent”) limits = optional(map(string)) requests = optional(map(string)) image_pull_secrets = optional(string, “”) replicas = optional(number, 1) node_selector = optional(map(string), {}) annotations = optional(map(string), {}) service = optional(object({ type = optional(string, “HeadLess”) annotations = optional(map(string), {}) })) labels = optional(map(string), { app = “armonik”, service = “load-balancer” }) conf = optional(object({ listen_ip = optional(string) listen_port = optional(number, 8081) refresh_delay_seconds = optional(number) sqlite_db_path = optional(string) session_cache_size = optional(number) result_cache_size = optional(number) task_cache_size = optional(number) log_format = optional(string) }), {}) extra_env = optional(map(string)) }) |
null
|
no |
logging_level |
Logging level in ArmoniK |
string
|
n/a |
yes |
metrics |
the metrics exporter module output |
object({ host = string name = string namespace = string port = string url = string }) |
null
|
no |
metrics_exporter |
Parameters of Metrics exporter |
object({ image = string tag = string image_pull_policy = optional(string, “IfNotPresent”) image_pull_secrets = optional(string, “”) node_selector = optional(any, {}) name = optional(string, “metrics-exporter”) label_app = optional(string, “armonik”) label_service = optional(string, “metrics-exporter”) port_name = optional(string, “metrics”) port = optional(number, 9419) target_port = optional(number, 1080) }) |
n/a |
yes |
metrics_server_chart_name |
Name of the metrics-server Helm chart |
string
|
"metrics-server"
|
no |
namespace |
Namespace of ArmoniK resources |
string
|
n/a |
yes |
pod_deletion_cost |
value |
object({ image = string tag = string image_pull_policy = optional(string, “IfNotPresent”) image_pull_secrets = optional(string, “”) node_selector = optional(any, {}) annotations = optional(any, {}) name = optional(string, “pdc-update”) label_app = optional(string, “armonik”) prometheus_url = optional(string) metrics_name = optional(string) period = optional(number) ignore_younger_than = optional(number) concurrency = optional(number) granularity = optional(number) extra_conf = optional(map(string), {}) limits = optional(map(string)) requests = optional(map(string)) }) |
null
|
no |
prometheus |
the prometheus module output |
object({ host = string port = string url = string }) |
null
|
no |
seq |
the seq module output |
object({ host = string port = string url = string web_url = string }) |
null
|
no |
shared_storage_settings |
the shared-storage configuration information |
object({ file_storage_type = optional(string) service_url = optional(string) console_url = optional(string) access_key_id = optional(string) secret_access_key = optional(string) name = optional(string) must_force_path_style = optional(string) host_path = optional(string) file_server_ip = optional(string) }) |
null
|
no |
static |
json files to be served statically by the ingress |
any
|
{}
|
no |