TimesTenデータベースの作成について

TimesTenオペレータは、TimesTen Classicデータベースを作成、管理および監視します。次のトポロジがサポートされています:
  • レプリケートされたアクティブ・スタンバイ・ペア構成: TimesTenオペレータは、1つのTimesTenデータベースをアクティブ・データベースとして構成し、アクティブ・データベースをスタンバイにコピーして、それらの間にアクティブ・スタンバイ・ペアのレプリケーション・スキームを構成します。

  • レプリケートされない構成: TimesTenオペレータは、1つ以上のTimesTen Classicデータベースを構成します。各データベースは独立しており、相互に関係はありません。

ttclassic Helmチャートを使用して、レプリケートされた構成とレプリケートされない構成の両方に対してTimesTen Classicデータベースを作成します。2つの構成を区別するために、ttclassicチャートにはreplicationTopology変数が用意されています。次に、例を示し、具体的に説明します。

両方の構成の変数を定義する2つのYAMLファイルを示します。これらのファイルを使用してTimesTenデータベースを作成する方法については、後述の項で説明します。
  • レプリケートされた構成:
    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

    replicationTopology変数の値はactiveStandbyPairで、TimesTenオペレータがTimesTenデータベースのアクティブ・スタンバイ・ペアを作成するレプリケートされた構成を示します。replicationTopology変数のデフォルト値はactiveStandbyPairであるため、レプリケートされた構成にreplicationTopology変数を指定しないオプションがあります。

  • レプリケートされない構成:
    storageClassName: oci-bv
    storageSize: 10Gi
    image:
      repository: container-registry.oracle.com/timesten/timesten
      tag: "22.1.1.34.0"
    imagePullSecret: sekret
    replicationTopology: none
    replicas: 3
    rollingUpdatePartition: 2
    dbConfigMap:
      - name: norepsamplehelm
      directory: cm
    replicationTopology変数の値はnoneで、TimesTenオペレータがレプリケートされない1つ以上のTimesTenデータベースを作成するレプリケートされない構成を示します。各データベースは、レプリケーションを構成せずに独立して動作します。また、ttclassicチャートには、カスタマイズに役立つ追加の変数が用意されています:
    • replicas: 構成するポッドの数を決定します。各ポッドにはTimesTenデータベースが含まれています。たとえば、replicas3の場合、それぞれTimesTenデータベースを含む3つのポッドがあります。デフォルトは1です。

    • rollingUpdatePartition: アップグレードされるデータベースの数を決定します。アップグレード手順については、後述の項で説明します。

    両方の構成に次のカスタマイズが適用されます:

    • storageClassNameおよびstorageSize: TimesTenはデータベースであり永続的であるため、データベースの永続ボリュームをリクエストするために使用される記憶域クラスを指定する必要があります。storageSizeデータ項目は、TimesTenとそのデータベースにプロビジョニングされる記憶域の量を決定します。

    • image: repositoryの場合、TimesTenコンテナ・イメージを含むコンテナ・レジストリを指定する必要があります。tagには、イメージ・タグを指定します。この例のimageは、TimesTenコンテナ・イメージを含むコンテナ・レジストリと、TimesTenのリリースを表すイメージ・タグを表します。

    • imagePullSecret: Kubernetesを認証するKubernetes Secretを指定して、指定したコンテナ・レジストリからTimesTenコンテナ・イメージをプルする必要があります。

    • dbConfigMap: オプションで、TimesTenデータベースのメタデータ・ファイルを含む1つ以上のConfigMapsを指定できます。ユーザーは、これらのConfigMapsを作成しません。かわりに、ttclassicチャートのインストール・プロセスによってConfigMapsが作成されます。この方法については、この章の後半で説明します。

使用可能なカスタマイズは他にも多数あります。「ttclassicチャート」を参照してください。また、TimesTenオペレータには、TimesTenデータベースの構成をカスタマイズおよび定義できるメタデータ・ファイルが用意されています。これらのファイルには、testUserdb.iniadminUsercacheUserschema,sqlcachegroups.sqlなどが含まれています。TimesTenオペレータには、これらのファイルをTimesTenオペレータおよびTimesTenで使用できるようにするための複数のメソッドが用意されています。詳細は、「構成メタデータの使用」を参照してください。