レプリケートされたTimesTenデータベースの作成
この例では、ttclassic Helmチャートを使用して、レプリケートされたTimesTen Classicデータベースを作成する方法を示します。この例では、YAMLマニフェスト・ファイルを使用し、ファイル用にkube_files/helm/customyamlディレクトリが作成されていることを前提としています。
- 開発ホストで、
helmディレクトリに変更します。cd kube_files/helm - レプリケートされた構成の変数を定義するYAMLファイルを作成します。
vi customyaml/repsamplehelm.yaml storageClassName: oci-bv storageSize: 10Gi image: repository: container-registry.oracle.com/timesten/timesten tag: "22.1.1.34.0" imagePullSecret: sekret replicationTopology: activeStandbyPair dbConfigMap: - name: repsamplehelm directory: cm次の点に注目してください。-
storageClassNameはoci-bvです。oci-bvを記憶域クラスの名前に置き換えます。 -
storageSizeは10Giです。10Giを、各ポッドがTimesTenを保持するためにリクエストする必要がある記憶域の量に置き換えます。 -
image変数の場合:-
repository:repositoryはcontainer-registry.oracle.com/timesten/timestenです。を、TimesTenコンテナ・イメージの名前と場所に置き換えます。container-registry.oracle.com/timesten/timesten -
tag: タグは22.1.1.34.0です。tagをTimesTenリリースのタグに置き換えます。
-
-
imagePullSecretはsekretです。sekretを、KubernetesがTimesTenコンテナ・イメージをフェッチするために使用するイメージ・プル・シークレットに置き換えます。 replicationTopologyはactiveStandbyPairで、TimesTenデータベースのアクティブ・スタンバイ・ペアで構成されるレプリケートされた構成を示します。- ConfigMapの名前は
repsamplehelmです。メタデータ・ファイルの場所は、kube_file/helm/ttclassicディレクトリ・ツリー内のcmディレクトリにあります。
-
ttclassicチャートをインストールします。helm install -f customyaml/repsamplehelm.yaml repsamplehelm ./ttclassic次のhelminstallコマンドを見てみましょう。-
-fオプションは、YAMLファイルがhelminstallコマンドに渡されることを示します。 -
カスタマイズを含むYAMLファイルの名前は、
customyamlディレクトリにあるrepsamplehelm.yamlです。 -
リリースの名前は
repsamplehelmです。 -
チャートの名前は
ttclassicで、これはkube_files/helm/ttclassicディレクトリにあります。
helminstallコマンドの出力を見てみましょう。NAME: repsamplehelm LAST DEPLOYED: Thu Jan 16 14:58:40 2025 NAMESPACE: default STATUS: deployed REVISION: 1 NOTES: Version 2211340.1.0 of the ttclassic chart has been installed. This release is named "repsamplehelm". To learn more about the release, try: $ helm status repsamplehelm $ helm get all repsamplehelm $ helm history repsamplehelm To rollback to a previous version of the chart, run: $ helm rollback repsamplehelm <REVISION> - run 'helm history repsamplehelm' for a list of revisions.次の点に注目してください。-
ttclassicチャートのバージョンは、TimesTenリリース22.1.1.34.0に対応する2211340.1.0です。 -
リリース名は
repsamplehelmです。 -
リリースのステータスは
deployedです。
-
- (オプション)リリースを確認します。
helm list出力は、次のようになります。NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION repsamplehelm default 1 2025-01-16 14:58:40.109402333 +0000 UTC deployed ttclassic-2211340.1.0 22.1.1.34.0 ...helmlistコマンドは、repsamplehelmリリースが存在し、ネームスペースにインストールされていることを示します。 - 進捗を監視します。
kubectl get ttc repsamplehelm出力は、次のようになります。NAME STATE ACTIVE AGE repsamplehelm Initializing None 44sプロビジョニングは開始されますが、
Initializing状態で示されるとおり、まだ完了していません。数分間待機します。次に、再度確認します。kubectl get ttc repsamplehelm出力は、次のようになります。NAME STATE ACTIVE AGE repsamplehelm Normal repsamplehelm-0 4m23sプロビジョニング・プロセスが完了します。TimesTenデータベースのアクティブ・スタンバイ・ペアは
Normal状態で示されるとおり、稼働中であり、動作しています。 - ConfigMapおよびメタデータ・ファイルが存在することを確認します。
kubectl get configmap repsamplehelm出力は、次のようになります。NAME DATA AGE repsamplehelm 4 8m50sメタデータ・ファイルを確認します。
kubectl describe configmap repsamplehelm出力は、次のようになります。
Name: repsamplehelm Namespace: default Labels: app.kubernetes.io/managed-by=Helm Annotations: meta.helm.sh/release-name: repsamplehelm meta.helm.sh/release-namespace: default Data ==== adminUser: ---- adminuser/adminuserpwd db.ini: ---- PermSize=200 DatabaseCharacterSet=AL32UTF8 schema.sql: ---- create table adminuser.emp (id number not null primary key, name char (32)); testUser: ---- sampletestuser/sampletestuserpwd1 BinaryData ==== Events: <none>repsamplehelmConfigMapが存在し、メタデータ・ファイルが含まれています。testUserファイルが存在するため、Helmを使用してTimesTenをテストできます。「レプリケートされた構成のTimesTenのテスト」を参照してください。 - (オプション)ポッドを確認します。
kubectl get pods出力は、次のようになります。NAME READY STATUS RESTARTS AGE repsamplehelm-0 3/3 Running 0 11m repsamplehelm-1 2/3 Running 0 11m ...repsamplehelm-0およびrepsamplehelm-1ポッドはネームスペースで実行されています。各ポッドはTimesTenを実行しています。
ttclassicチャートが正常にインストールされました。TimesTen Classicデータベースのアクティブ・スタンバイ・ペアは稼働中であり、完全に動作しています。