Overview of TimesTen CRDs

Kubernetes operates on objects of various built-in object types, including Pods, Services, and StatefulSets. One way to extend Kubernetes is with CRDs. CRDs define new object types to Kubernetes. Once installed, Kubernetes understands these object types just like it understands Pods, Services, StatefulSets, and all other built-in object types.

The TimesTen Kubernetes Operator (TimesTen Operator) provides two CRDs, TimesTenClassic and TimesTenScaleout. The TimesTenClassic CRD defines the attributes and metadata for TimesTen Classic databases while the TimesTenScaleout CRD defines the attributes and metadata for TimesTenScaleout grids and associated databases.

The CRD definition, including the object type and its set of attributes, is referred to as a schema.

Kubernetes supports CRD versioning whereby different versions of the same CRD are supported simultaneously and each version can provide a different schema. This enables the attributes of a CRD to be extended from release to release.

The TimesTen Operator provides two different versions of the TimesTenClassic CRD. The v1 schema contains attributes from earlier releases of the TimesTen Operator. No additional changes will be made to this schema. The v2 schema version is the most current. It provides the attributes of the v1 schema plus additional attributes specific to the latest release of the TimesTen Operator. When defining new TimesTenClassic objects, use the v2 schema. The v1 schema is available to facilitate compatibility with previous releases of the TimesTen Operator. There are examples later in this chapter that show you how to do this.