TimesTenClassicオブジェクトの定義および作成

環境を定義するには、環境用にカスタマイズされた属性を使用してTimesTenClassicオブジェクトを作成する必要があります。フィールドには、イメージ・プル・シークレットの名前、TimesTenイメージの名前、およびTimesTenデータベースを正常にデプロイするために必要なその他の定義が含まれます。TimesTenClassicタイプのオブジェクトの定義の詳細は、「TimesTenClassicオブジェクト・タイプについて」を参照してください。

TimesTenClassicオブジェクトを定義および作成するには、次のステップを実行します。

  1. 空のYAMLファイルを作成します。任意の名前を選択できますが、TimesTenClassicオブジェクトに使用した名前と同じ名前を使用することもできます。(この例では、sampleです。)YAMLファイルには、TimesTenClassicオブジェクトの定義が格納されています。このYAMLファイルで指定する必要があるフィールド、およびオプションのフィールドの詳細は、TimesTenClassicSpecSpecを参照してください。

    この例では、次のものを置き換えます。(置き換えることができる値はboldで表示されています。)

    • name: sampleを、TimesTenClassicオブジェクトの名前に置き換えます。

    • storageClassName: oci-bvを、TimesTenを保持するためのPersistentVolumesの割当てに使用される記憶域クラスの名前に置き換えます。

    • storageSize: 250Giを、各ポッドがTimesTenを保持するために要求する必要がある記憶域の量に置き換えます。(この例は、本番環境を想定しているため、250Giの記憶域を使用します。デモ用の場合は、50Giの記憶域を使用できます。詳細は、表17-3storageSizeエントリとlogStorageSizeエントリを参照してください。

    • image: container-registry.oracle.com/timesten/timesten:22.1.1.19.0を、ご自分のイメージの場所と名前に置き換えてください。この例では、container-registry.oracle.com/timestenはイメージ・レジストリの場所であり、timesten:22.1.1.19.0はイメージの名前です。

    • imagePullSecret: sekretを、KubernetesがTimesTenイメージをフェッチするために使用するイメージ・プル・シークレットに置き換えます。

    • dbConfigMap: この例では、db.iniadminUserおよびschema.sqlメタデータ・ファイルに1つのConfigMap (sampleという名前)を使用します。このConfigMapはProjectedVolumeに組み込まれます。このボリュームはTimesTenコンテナに/ttconfigとしてマウントされます。ConfigMapの詳細は、「ConfigMapおよびシークレットの使用」および「1つのConfigMapを使用する例」を参照してください。

    % vi sample.yaml
    
    apiVersion: timesten.oracle.com/v1
    kind: TimesTenClassic
    metadata:
      name: sample
    spec:
      ttspec:
        storageClassName: oci-bv
        storageSize: 250Gi
        image: container-registry.oracle.com/timesten/timesten:22.1.1.19.0
        imagePullSecret: sekret
        dbConfigMap:
        - sample
    
  2. kubectl createコマンドを使用して、YAMLファイル(この例ではsample.yaml)のコンテンツからTimesTenClassicオブジェクトを作成します。これにより、KubernetesクラスタにあるTimesTenデータベースのアクティブ・スタンバイ・ペアをデプロイするプロセスが開始されます。
    % kubectl create -f sample.yaml
    timestenclassic.timesten.oracle.com/sample created
    

KubernetesクラスタにTimesTenClassicオブジェクトを正常に作成しました。TimesTenデータベースをデプロイするプロセスが開始されますが、まだ完了していません。