Type: object

TFOperatorSpec defines the desired state of TFOperator

Type: string Default: "tungstenfabric-operator-bind-mounts"

Data Storage Class name

Type: object

DevOptions mainly defines options that using during development process.

Type: enum (of string) Default: "thrift"

Allow to set Cassandra driver

Must be one of:

  • "thrift"
  • "cql"

Type: boolean

This option is 'false' by default. Set it to 'true' if there are any issues with virtual gateway deployment for octavia workers

Type: boolean Default: true

Force update of TF version from 2011 to 21.4. Enabled by default.

Type: string

GlobalRegistry defines registry that could be used for testing

Type: object

ImageList defines list of all images used by TF operator Main purpose is testing one or some specific images

Type: object

CassandraImages defines images that are used by Casskop operator

Type: string

Define registry path for cassandra bootstrap image

Type: string

Define registry path for cassandra image that would be used for Analytics cluster

Type: string

Define registry path for cassandra image that would be used for Config cluster

Type: string

Define registry path for cassandra config-builder image

Type: string

Define registry path for Casskop operator image

Type: object

Kafka define image settings for Kafka

Type: string

Define registry path for exporter image

Type: string

Define registry path for operator image

Type: string

Define registry path for service image

Type: object

RabbitMQ define image settings for rabbitMQ

Type: string

Define registry path for exporter image

Type: string

Define registry path for operator image

Type: string

Define registry path for service image

Type: object

Redis define image settings for Redis

Type: string

Define registry path for exporter image

Type: string

Define registry path for operator image

Type: string

Define registry path for service image

Type: object

TFServiceImages defines images for TF service containers. Should be used for testing specific images. All images can be set via TFImage structure

Type: object

Define images for TF Analytics services

Type: string

Define registry path for Analytics API pod

Type: string

Define registry path for Analytics AlarmGen pod

Type: string

Define registry path for Analytics Collector pod

Type: string

Define registry path for Analytics Query pod

Type: string

Define registry path for Analytics SNMP Collector pod

Type: string

Define registry path for Analytics SNMP Topology pod

Type: object

Define images for TF common(provisioner,nodemgr) services

Type: string

Define registry path for Node Manager pods

Type: string

Define registry path for Provisioner pods

Type: object

Define images for TF Config services

Type: string

Define registry path for Config API pod

Type: string

Define registry path for Config Device Manager pod

Type: string

Define registry path for Config SVC Monitor pod

Type: string

Define registry path for Config Schema pod

Type: object

Define images for TF Control services

Type: string

Define registry path for kubernetes Control pod

Type: string

Define registry path for Control DNS pod

Type: string

Define registry path for Control Named pod

Type: string

Define registry path for TF tool pod

Type: object

Define images for TF vRouter services

Type: object

TFCommonImages allow to set images to TF provisioner and nodemgr containers

Type: string

Define registry path for Node Manager pods

Type: string

Define registry path for Provisioner pods

Type: string

Define registry path for Node Init pod

Type: string

Define registry path for vRouter Agent pod

Type: string

Define registry path for vRouter Agent DPDK pod

Type: string

Define registry path for vRouter Kernel pod

Type: object

Define images for TF WebUI services

Type: string

Define registry path for WebUI job pod

Type: string

Define registry path for WebUI web pod

Type: object

ToolsImages defines registry paths for TF utilities images

Type: string

Define registry path for kubernetes entrypoint init container

Type: string

Define registry path for node info image. TF node info utility gathers info from control node.

Type: string

Define registry path for pause image part of TF node info utility

Type: string

Define registry path for TF Cli

Type: string

Define registry path for Tungsten PyTest

Type: object

ZookeeperImages defines images that would be used by zookeeper operator

Type: string

Define registry path for operator image

Type: string

Define registry path for Zookeeper image that would be used for Analytics cluster

Type: string

Define registry path for Zookeeper image that would be used for Config cluster

Type: object

MigrationSpec is additional struct that should be used during migration process to use external TF services.

Type: string

Config API port

Type: string

Config API VIP address (MCP terminology)

Type: string

Config Nodes ips is a string separated by comma

Type: string

Control Nodes ips is a string separated by comma

Type: boolean

Disable wait for 3rd party services to be ready, false by default

Type: object

TFImage struct contains general definition for TF images. It is possible to set only one of structure's fields.

Type: string

Common path for TF service images. Default is "tungsten".

Type: string

Name of docker registry with TF service images

Type: string

Common docker image tag for TF service images

Type: string

Specific tag for vRouter docker images

Type: object

Features defines TF and TF operator's features that can be additionally enabled/disabled

Type: object

TFConfigFeatures allow to enable specific TF Config features

Type: integer

Defines the control node’s Autonomous System Number (ASN). Default value 64512

Type: integer

Number of Config API workers. Default 4

Type: boolean

Enables the 4-byte ASN format. Default FALSE

Type: string

List of Encapsulation priority order. Default is "MPLSoUDP,MPLSoGRE,VXLAN"

Type: string

Defines in which availability zone svc-monitor creates networking namespaces

Type: string

Default value is "automatic"

Type: object

TFControlFeatures allow to enable specific TF Control features

Type: string

Specify control interface. By default, the TF control service uses the management interface for the BGP and XMPP traffic.

Type: boolean

Enable/disable external DNS service. Enabled by default

Type: object

GracefulRestart defines parameters to set up GR/LLGR TF options

Type: boolean Default: false

Type: object

TFDBBackupSpec defines the desired state of TFDBBackup

Type: enum (of string) Default: "pvc"

Set backup type. Default is PVC that uses defined storage class

Must be one of:

  • "pvc"
  • "pv_nfs"

Type: string Default: "5Gi"

DataCapacity for PVC where backup will be stored Default is 5Gi

Type: string

Storage class name for PVC, by default used StorageClass that is set for TF Operator

Type: integer Default: 3600

Timeout in seconds to get db dump, by default is 3600

Type: boolean Default: false

Enable DB backups schedule, False by default

Type: object

NFS configurations for backup storage

Type: array of string Default: ["nfsvers=4.2"]

Each item of this array must be:

Type: string

Type: string

Type: string Default: "@weekly"

Set schedule for backups using Cron schedule syntax By default it is @weekly

Type: integer Default: 5

Number of backups to keep, by default 5

Type: boolean Default: false

Suspend TF DB Backup job

Type: object

TFDBRestoreSpec defines the desired state of TFDBRestore

Type: string

Specify name for backup to use, if not set will be used the latest

Type: boolean

Enable restore db mode

Type: integer Default: 3600

Timeout in seconds to execute restore job

Type: boolean Default: true

Image Pre-Caching is enabled by default. To disable set this parameter to false.

Type: object

TFTestSpec defines the desired state of TF Test

Type: string

Set data capacity for TF Test PVC

Type: string

Specify storage class

Type: boolean Default: false

Enable/disable component. Enabled by default

Type: array of object

Each item of this array must be:

Type: object

EnvVar represents an environment variable present in a Container.

Type: string

Name of the environment variable. Must be a C_IDENTIFIER.

Type: string

Variable references $(VARNAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VARNAME) syntax: i.e. "$$(VARNAME)" will produce the string literal "$(VARNAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".

Type: object

Source for the environment variable's value. Cannot be used if value is not empty.

Type: object

Selects a key of a ConfigMap.

Type: string

The key to select.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the ConfigMap or its key must be defined

Type: object

Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

Type: string

Version of the schema the FieldPath is written in terms of, defaults to "v1".

Type: string

Path of the field to select in the specified API version.

Type: object

Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.

Type: string

Container name: required for volumes, optional for env vars


Specifies the output format of the exposed resources, defaults to "1"

Must match regular expression: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$

Type: string

Required: resource to select

Type: object

Selects a key of a secret in the pod's namespace

Type: string

The key of the secret to select from. Must be a valid secret key.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the Secret or its key must be defined

Type: object

TFToolSpec defines the desired state of Config

Type: object

Each additional property must conform to the following schema

Type: string

Type: boolean Default: false

Enable/disable component. Disabled by default

Type: boolean Default: false

Enable/disable component. Disabled by default

Type: object

TFVRouterFeatures allow to enable specific TF vRouter features

Type: boolean

Disable tx offload. Be default is FALSE

Type: string

Tunnel interface name

Type: string

To specify gateway for edge router that is accessible from the data plane.

Type: object

Configurable VRouter kernel module params

Type: string

Set to 1 to dump packets, 0 to disable

Type: string

maximum bridge entries

Type: string

maximum bridge overflow entries

Type: string

maximum flow entries

Type: string

maximum interfaces that can be created

Type: string

maximum MPLS labels used in the node

Type: string

maximum nexthops in the node

Type: string

maximum overflow entries

Type: string

maximum VRFs supported in the node

Type: object

Each additional property must conform to the following schema

Type: object

Node define specific configuration for nodes subset, different from general setup.

Type: object

Nodes subset name

Type: object

Type: object

TFVRouterFeatures allow to enable specific TF vRouter features

Type: boolean

Disable tx offload. Be default is FALSE

Type: string

Tunnel interface name

Type: string

To specify gateway for edge router that is accessible from the data plane.

Type: object

Configurable VRouter kernel module params

Type: string

Set to 1 to dump packets, 0 to disable

Type: string

maximum interfaces that can be created

Type: string

maximum MPLS labels used in the node

Type: string

maximum nexthops in the node

Type: string

maximum VRFs supported in the node

Type: object

TFVRouterAgentDPDKSpec defines the desired state of vRouter

Type: boolean Default: false

Enable/disable component.

Type: object

TFVrouterDPDKEnvSettings allow to set specific options to TF vRouter components via env variables

Type: array of object

Each item of this array must be:

Type: object

EnvVar represents an environment variable present in a Container.

Type: string

Name of the environment variable. Must be a C_IDENTIFIER.

Type: string

Variable references $(VARNAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VARNAME) syntax: i.e. "$$(VARNAME)" will produce the string literal "$(VARNAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".

Type: object

Source for the environment variable's value. Cannot be used if value is not empty.

Type: object

Selects a key of a ConfigMap.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the ConfigMap or its key must be defined

Type: object

Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

Type: string

Version of the schema the FieldPath is written in terms of, defaults to "v1".

Type: string

Path of the field to select in the specified API version.

Type: object

Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.

Type: string

Container name: required for volumes, optional for env vars


Specifies the output format of the exposed resources, defaults to "1"

Must match regular expression: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$

Type: object

Selects a key of a secret in the pod's namespace

Type: string

The key of the secret to select from. Must be a valid secret key.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the Secret or its key must be defined

Type: array of object

Each item of this array must be:

Type: object

EnvVar represents an environment variable present in a Container.

Type: string

Name of the environment variable. Must be a C_IDENTIFIER.

Type: string

Variable references $(VARNAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VARNAME) syntax: i.e. "$$(VARNAME)" will produce the string literal "$(VARNAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".

Type: object

Source for the environment variable's value. Cannot be used if value is not empty.

Type: object

Selects a key of a ConfigMap.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the ConfigMap or its key must be defined

Type: object

Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

Type: string

Version of the schema the FieldPath is written in terms of, defaults to "v1".

Type: string

Path of the field to select in the specified API version.

Type: object

Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.

Type: string

Container name: required for volumes, optional for env vars


Specifies the output format of the exposed resources, defaults to "1"

Must match regular expression: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$

Type: object

Selects a key of a secret in the pod's namespace

Type: string

The key of the secret to select from. Must be a valid secret key.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the Secret or its key must be defined

Type: array of object

Each item of this array must be:

Type: object

EnvVar represents an environment variable present in a Container.

Type: string

Name of the environment variable. Must be a C_IDENTIFIER.

Type: string

Variable references $(VARNAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VARNAME) syntax: i.e. "$$(VARNAME)" will produce the string literal "$(VARNAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".

Type: object

Source for the environment variable's value. Cannot be used if value is not empty.

Type: object

Selects a key of a ConfigMap.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the ConfigMap or its key must be defined

Type: object

Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

Type: string

Version of the schema the FieldPath is written in terms of, defaults to "v1".

Type: string

Path of the field to select in the specified API version.

Type: object

Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.

Type: string

Container name: required for volumes, optional for env vars


Specifies the output format of the exposed resources, defaults to "1"

Must match regular expression: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$

Type: object

Selects a key of a secret in the pod's namespace

Type: string

The key of the secret to select from. Must be a valid secret key.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the Secret or its key must be defined

Type: array of object

Each item of this array must be:

Type: object

EnvVar represents an environment variable present in a Container.

Type: string

Name of the environment variable. Must be a C_IDENTIFIER.

Type: string

Variable references $(VARNAME) are expanded using the previously defined environment variables in the container and any service environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. Double $$ are reduced to a single $, which allows for escaping the $(VARNAME) syntax: i.e. "$$(VARNAME)" will produce the string literal "$(VARNAME)". Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to "".

Type: object

Source for the environment variable's value. Cannot be used if value is not empty.

Type: object

Selects a key of a ConfigMap.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the ConfigMap or its key must be defined

Type: object

Selects a field of the pod: supports metadata.name, metadata.namespace, metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

Type: string

Version of the schema the FieldPath is written in terms of, defaults to "v1".

Type: string

Path of the field to select in the specified API version.

Type: object

Selects a resource of the container: only resources limits and requests (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported.

Type: string

Container name: required for volumes, optional for env vars


Specifies the output format of the exposed resources, defaults to "1"

Must match regular expression: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$

Type: object

Selects a key of a secret in the pod's namespace

Type: string

The key of the secret to select from. Must be a valid secret key.

Type: string

Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?

Type: boolean

Specify whether the Secret or its key must be defined

Type: object

TFVrouterDPDKLogging allow to set logging options to TF Config components

Type: object

Logging defines log level for component

Type: enum (of string)

Setting log level

Must be one of:

  • "SYS_DEBUG"
  • "SYS_INFO"
  • "SYS_NOTICE"
  • "SYS_WARN"
  • "SYS_ERR"
  • "SYS_CRIT"
  • "INVALID"
  • "SYS_ALERT"
  • "SYS_EMERG"

Type: enum (of string)

Setting log local default 1

Must be one of:

  • "0"
  • "1"

Type: object

Logging defines log level for component

Type: enum (of string)

Setting log level

Must be one of:

  • "SYS_DEBUG"
  • "SYS_INFO"
  • "SYS_NOTICE"
  • "SYS_WARN"
  • "SYS_ERR"
  • "SYS_CRIT"
  • "INVALID"
  • "SYS_ALERT"
  • "SYS_EMERG"

Type: enum (of string)

Setting log local default 1

Must be one of:

  • "0"
  • "1"