--- title: Installation reference description: Installation API reference layout: docwithnav --- The Kubernetes resources below configure {{site.prodname}} installation. Each resource is responsible for installing and configuring a different subsystem of {{site.prodname}} during installation. Most options can be modified on a running cluster using `kubectl`.

Packages:

- operator.tigera.io/v1

## operator.tigera.io/v1

API Schema definitions for configuring the installation of Calico and Tigera Secure EE

Resource Types:

- Installation
- TigeraStatus

### Installation

Installation configures an installation of Calico or Tigera Secure EE. At most one instance of this resource is supported. It must be named “default”. The Installation API installs core networking and network policy components, and provides general install-time configuration.

Field | Description
--- | ---
`apiVersion` string | `operator.tigera.io/v1`
`kind` string | `Installation`
`metadata` Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the `metadata` field.
`spec` InstallationSpec | Specification of the desired state for the Calico or Tigera Secure EE installation.
`variant` ProductVariant | (Optional) Variant is the product to install - should be Calico Default: Calico
`registry` string | (Optional) Registry is the default Docker registry used for component Docker images. If specified, all Calico and Tigera Secure images will be pulled from this registry.
`imagePullSecrets` []Kubernetes core/v1.LocalObjectReference | (Optional) ImagePullSecrets is an array of references to container registry pull secrets to use. These are applied to all images to be pulled.
`kubernetesProvider` Provider | (Optional) KubernetesProvider specifies a particular provider of the Kubernetes platform. This is often auto-detected. If specified, this enables provider-specific configuration and must match the auto-detected value (if any).
`calicoNetwork` CalicoNetworkSpec | (Optional) CalicoNetwork specifies configuration options for Calico provided pod networking.
`status` InstallationStatus | Most recently observed state for the Calico or Tigera Secure EE installation.

### TigeraStatus

TigeraStatus represents the most recently observed status for Calico or a Tigera Secure EE functional area.

Field | Description
--- | ---
`apiVersion` string | `operator.tigera.io/v1`
`kind` string | `TigeraStatus`
`metadata` Kubernetes meta/v1.ObjectMeta | Refer to the Kubernetes API documentation for the fields of the `metadata` field.
`spec` TigeraStatusSpec |
`status` TigeraStatusStatus |

### CalicoNetworkSpec

(Appears on: InstallationSpec)

CalicoNetwork specifies configuration options for Calico provided pod networking.

Field | Description
--- | ---
`ipPools` []IPPool | (Optional) IPPools contains a list of IP pools to use for allocating pod IP addresses. At most one IP pool may be specified. If omitted, a single pool will be configured when needed.
`mtu` int32 | (Optional) MTU specifies the maximum transmission unit to use for pods on the Calico network. Default: 1410
`nodeAddressAutodetectionV4` NodeAddressAutodetection | (Optional) NodeAddressAutodetectionV4 specifies an approach to automatically detect node IPv4 addresses. If not specified, will use default auto-detection settings to acquire an IPv4 address for each node.
`nodeAddressAutodetectionV6` NodeAddressAutodetection | (Optional) NodeAddressAutodetectionV6 specifies an approach to automatically detect node IPv4 addresses. If not specified, IPv6 addresses will not be auto-detected.

### ConditionStatus (`string` alias)

(Appears on: TigeraStatusCondition)

ConditionStatus represents the status of a particular condition. A condition may be one of: True, False, Unknown.

### EncapsulationType (`string` alias)

(Appears on: IPPool)

EncapsulationType is the type of encapsulation to use on an IP pool. Valid options are: IPIP, VXLAN, IPIPCrossSubnet, VXLANCrossSubnet, None.

### IPPool

(Appears on: CalicoNetworkSpec)

Field | Description
--- | ---
`cidr` string | CIDR contains the address range for the IP Pool in classless inter-domain routing format.
`encapsulation` EncapsulationType | (Optional) Encapsulation specifies the encapsulation type that will be used with the IP Pool. Default: IPIP
`natOutgoing` NATOutgoingType | (Optional) NATOutgoing specifies if NAT will be enabled or disabled for outgoing traffic. Default: Enabled
`nodeSelector` string | (Optional) NodeSelector specifies the node selector that will be set for the IP Pool. Default: ‘all()’

### InstallationSpec

(Appears on: Installation)

InstallationSpec defines configuration for a Calico or Tigera Secure EE installation.

Field | Description
--- | ---
`variant` ProductVariant | (Optional) Variant is the product to install - should be Calico Default: Calico
`registry` string | (Optional) Registry is the default Docker registry used for component Docker images. If specified, all Calico and Tigera Secure images will be pulled from this registry.
`imagePullSecrets` []Kubernetes core/v1.LocalObjectReference | (Optional) ImagePullSecrets is an array of references to container registry pull secrets to use. These are applied to all images to be pulled.
`kubernetesProvider` Provider | (Optional) KubernetesProvider specifies a particular provider of the Kubernetes platform. This is often auto-detected. If specified, this enables provider-specific configuration and must match the auto-detected value (if any).
`calicoNetwork` CalicoNetworkSpec | (Optional) CalicoNetwork specifies configuration options for Calico provided pod networking.

### InstallationStatus

(Appears on: Installation)

InstallationStatus defines the observed state of the Calico or Tigera Secure installation.

Field | Description
--- | ---
`variant` ProductVariant | Variant is the most recently observed installed variant - should be Calico

### NATOutgoingType (`string` alias)

(Appears on: IPPool)

NATOutgoingType describe the type of outgoing NAT to use.

### NodeAddressAutodetection

(Appears on: CalicoNetworkSpec)

NodeAddressAutodetection provides configuration options for auto-detecting node addresses. At most one option can be used. If no detection option is specified, then IP auto detection will be disabled for this address family and IPs must be specified directly on the Node resource.

Field | Description
--- | ---
`firstFound` bool | (Optional) FirstFound uses default interface matching parameters to select an interface, performing best-effort filtering based on well-known interface names.
`interface` string | (Optional) Interface enables IP auto-detection based on interfaces that match the given regex.
`skipInterface` string | (Optional) SkipInterface enables IP auto-detection based on interfaces that do not match the given regex.
`canReach` string | (Optional) CanReach enables IP auto-detection based on which source address on the node is used to reach the specified IP or domain.

### ProductVariant (`string` alias)

(Appears on: InstallationSpec, InstallationStatus)

ProductVariant represents the variant of the product. Valid options are: Calico.

### Provider (`string` alias)

(Appears on: InstallationSpec)

Provider represents a particular provider or flavor of Kubernetes. Valid options are: EKS, GKE, AKS, OpenShift, DockerEnterprise.

### StatusConditionType (`string` alias)

(Appears on: TigeraStatusCondition)

StatusConditionType is a type of condition that may apply to a particular component.

### TigeraStatusCondition

(Appears on: TigeraStatusStatus)

TigeraStatusCondition represents a condition attached to a particular component.

Field | Description
--- | ---
`type` StatusConditionType | The type of condition. May be Available, Progressing, or Degraded.
`status` ConditionStatus | The status of the condition. May be True, False, or Unknown.
`lastTransitionTime` Kubernetes meta/v1.Time | The timestamp representing the start time for the current status.
`reason` string | A brief reason explaining the condition.
`message` string | Optionally, a detailed message providing additional context.

### TigeraStatusSpec

(Appears on: TigeraStatus)

### TigeraStatusStatus

(Appears on: TigeraStatus)

TigeraStatusStatus defines the observed state of TigeraStatus

Field | Description
--- | ---
`conditions` []TigeraStatusCondition | Conditions represents the latest observed set of conditions for this component. A component may be one or more of Available, Progressing, or Degraded.