About the TimesTen Operator
The TimesTen Operator is an application that functions like a human operator. It creates, monitors, and manages TimesTen databases in a Kubernetes cluster. It configures a database, configures the database's users and schema, and if applicable, configures cache and replication. The TimesTen Operator automatically manages and monitors the health of TimesTen databases and takes action to fix problems. For example, in an active standby pair replication scheme, if the active database fails, the TimesTen Operator takes automatic action by promoting the standby to the new active. Kubernetes replaces the failed Pod that contains the active database. The TimesTen Operator brings TimesTen back up as the new standby in this replaced Pod. The TimesTen Operator performs these operations automatically and there is no human intervention needed. This TimesTen Operator can create and manage many TimesTen databases simultaneously.
-
In one or more namespaces in your Kubernetes cluster at namespace-scope (namespace-scoped).
-
In the
timesten-operator
namespace in your Kubernetes cluster at cluster-scope (cluster-scoped). Thetimesten-operator
namespace is non-configurable and is reserved for internal use. This namespace is explained in later sections.
-
If you install the TimesTen Operator in a namespace in your Kubernetes cluster at namespace-scope, you can then create TimesTenClassic objects in that same namespace. The TimesTen Operator provisions Pods, Services, and other Kubernetes resources necessary to deploy TimesTen databases in this same namespace. If you want to deploy TimesTen databases in multiple namespaces, you must install multiple copies of the TimesTen Operator, one in each namespace. While this adds complexity, it also adds flexibility. For example, since it is possible to run different versions of the TimesTen Operator in each namespace, test and production environments can share a single cluster.
-
If you install the TimesTen Operator in a Kubernetes cluster at cluster-scope, a new namespace called
timesten-operator
is created in the cluster. The TimesTen Operator runs in thistimesten-operator
namespace. All other namespaces in the Kubernetes cluster can create TimesTenClassic objects. These objects are handled by this TimesTen Operator. The Pods, Services, and other Kubernetes resources that are used to provision these databases reside in the namespace of the associated TimesTenClassic object. Since there is only one TimesTen Operator that manages all TimesTenClassic objects, this option adds a less complex environment. However, this environment is less flexible. For example, there can only be one version of the TimesTen Operator, so test and production environments may not be able to share a single cluster if these environments require different versions of the TimesTen Operator.Note:
Thetimesten-operator
namespace is reserved for internal use. You must not run anything in thetimesten-operator
namespace. In addition, you must create TimesTenClassic objects in your own namespaces.
Regardless of which scope you use, when you create a TimesTenClassic object in a namespace (X
, for example), any references to other Kubernetes objects included in that object also refer to objects in namespace X
. This includes dbConfigMap
, dbSecret
, imagePullSecret
, and all other object references. A TimesTenClassic object in namespace X
cannot refer to such objects in other namespaces.