独自のOracleウォレット、証明書およびKubernetes Secretの作成について

独自のOracleウォレット、証明書およびKubernetes Secretを作成して、httpsによってTimesTenメトリックを処理するオプションがあります。このオプションを選択した場合、TimesTenオペレータは、PrometheusにTimesTenへのアクセスを許可するのに十分な情報を持つPodMonitorオブジェクトを作成できません。PodMonitorオブジェクトを自分で作成することも、Prometheus構成ファイルを編集してPrometheusにTimesTenメトリックをスクレイプさせることもできます。

(必要な証明書を含む) Oracleウォレットを含むKubernetes Secretを作成した後、このシークレットをTimesTenClassicまたはTimesTenClassicオブジェクトのYAMLマニフェスト・ファイルに含める必要があります。これを行うには、オブジェクト定義に.spec.ttspec.prometheus.certSecretデータ項目を指定します。

TimesTenClassicオブジェクトのYAMLマニフェスト・ファイルのコード・スニペットを次に示します。
apiVersion: timesten.oracle.com/v2
kind: TimesTenClassic
metadata:
  name: samplecertsecret
spec:
  ttspec:
…
    prometheus:
      certSecret: prometheuscert
      port: 7777
次の点に注目してください。
  • .spec.ttspec.prometheusデータ項目は、TimesTenクラシック・オブジェクトのYAMLマニフェスト・ファイルで指定されます。これにより、TimesTenオペレータは、TimesTenを実行している各ポッド内の個別のコンテナにTimesTenエクスポータを自動的にデプロイします。

  • certSecretデータ項目は、TimesTenClassicオブジェクトの.spec.ttspec.prometheus句で指定されます。prometheusecert Kubernetes Secretに含まれるウォレットは、Transport Layer Security (相互TLS)/httpsに使用されます。

    portデータ項目が指定されます。これは、TimesTenエクスポータがリスニングするポートです。これにより、TimesTenオペレータは、各TimesTenポッドのTCPポート7777にhttpサーバーを設定します。

ここでは、独自のOracle Wallet、証明書およびKubernetes Secretを作成するために完了する必要があるタスクのサマリーを示します。サマリーには、TimesTenClassicまたはTimesTenScaleoutオブジェクトのYAMLマニフェスト・ファイルに適切なKubernetes Secretを含めるタスクも含まれます。「独自のOracle Wallet、証明書およびKubernetes Secretの作成」に完全な例があります。

  • TimesTenインスタンスを作成します。「始める前に」を参照してください。

  • TimesTen ttExporterユーティリティを使用して証明書を生成します。作成される証明書の1つは、自己署名サーバー証明書です。この証明書はOracle Walletに配置されます。「証明書の作成」を参照してください。
  • Oracle WalletをKubernetes Secretに配置します。「Oracle Walletを含むKubernetes Secretの作成」を参照してください。
  • TimesTenClassicまたはTimesTenScaleoutオブジェクトのYAMLマニフェスト・ファイルのspec.ttspec.prometheus.certSecretデータ項目でシークレットの名前を指定します。「TimesTenClassicオブジェクトの定義およびデプロイ」を参照してください。
  • TimesTen ttExporterユーティリティを実行したときに作成されたサーバー証明書、クライアント証明書およびクライアント秘密キーを含むPEM形式のファイルを保存します。これらは後でPrometheusサーバーを構成する際に必要になります。「証明書の作成」を参照してください。

追加のリファレンスは次のとおりです。