About the Deployment Process
kubectl
create
or the helm
install
command. After the object is deployed in your namespace, the TimesTen Operator notices and takes action. The process to create and configure TimesTen and its databases begins:
-
StatefulSet: The TimesTen Operator creates a StatefulSet to run TimesTen. The StatefulSet contains a specified number of replicas:
-
For replicated objects, the number of
replicas
is2
. -
For non-replicated objects, the TimesTen Opertor uses the value you specified for
.spec.ttspec.replicas
. If you do not specify a value, the TimesTen Operator uses the default value of1
.
-
-
Pods: Because the TimesTen Operator creates a StatefulSet, Kubernetes in turn provisions
replicas
number of Pods.For both replicated and non-replicated configurations, each Pod contains several containers, including
tt
,daemonlog
1
, andexporter
. If you define additional containers in.spec.template
of your TimesTenClassic object, they are included in the Pod. -
PersistentVolumes: Kubernetes provisions one or more PersistentVolumes (persistent storage), which are mounted in the TimesTen containers. This is where your TimesTen databases are stored.
-
Service: The TimesTen Operator creates a headless Service, which causes Kubernetes to issue unique DNS names for each Pod.
When Kubernetes creates and starts a new Pod as part of a TimesTenClassic object's StatefulSet, the TimesTen Operator interacts with the TimesTen Agent in each Pod to perform the actions to get TimesTen and its databases up and running.
-
Creates a TimesTen installation.
-
Creates a TimesTen instance that uses the installation just created.
-
Creates TimesTen configuration files in the instance based on your provided metadata files (such as
db.ini
). -
Starts the TimesTen instance.
-
Creates the TimesTen database.
-
Create database users based on your provided metadata files (such as
adminUser
andcacheUser
). -
Creates database schemas, tables, views, procedures, and other database objects based on your provided metadata files (such as
schema.sql
,cachegroups.sql
, andepilog.sql
).
Let's walk through some examples that show you how to define and create replicated and non-replicated TimesTenClassic objects and how the TimesTen Operator uses the information to create TimesTen databases.