- Kubernetesオペレータ・ユーザーズ・ガイド
- 環境の設定
- TimesTenオペレータのカスタマイズ
TimesTenオペレータのカスタマイズ
TimesTenオペレータをカスタマイズするには、Kubernetesクラスタ内で実行する、TimesTenオペレータのレプリカ(コピー)の数を指定します。また、イメージ・プル・シークレット、およびTimesTenオペレータのTimesTenコンテナ・イメージの場所と名前を指定する必要があります。
- 開発ホストで、
kube_files/deploy
ディレクトリに移動します(このディレクトリに移動していない場合)。cd kube_files/deploy
- テキスト・エディタを使用して
operator.yaml
ファイルを変更し、次のフィールドを変更します。-
replicas:
1
1
をTimesTenオペレータのコピー数に置き換えます。開発およびテストの場合は、値1
を使用できます。ただし、高可用性を確保する目的で、複数のレプリカを指定できます。ノート:
TimesTenオペレータ・メトリックは、TimesTenオペレータ・デプロイメントに1つのTimesTenオペレータが定義されている場合、正確です。TimesTenオペレータ・メトリックの公開の詳細は、「TimesTen Kubernetesオペレータからのメトリックの公開」を参照してください。 -
sekret
を、Kubernetesがレジストリからイメージを取得するために使用するイメージ・プル・シークレットの名前に置き換えます。
TimesTenコンテナ・イメージの場合:
-
container-registry.oracle.com/timesten
を、イメージ・レジストリの場所に置き換えます。この場所は前の手順で決めてあります。「TimesTenコンテナ・イメージについて」を参照してください。この例では、container-registry.oracle.com/timesten
を使用します。 -
timesten:22.1.1.19.0
を、TimesTenコンテナ・イメージの名前に置き換えてください。この名前は前の手順で決めてあります。「TimesTenコンテナ・イメージについて」を参照してください。この例では、timesten:22.1.1.19.0
を使用します。
vi operator.yaml # Copyright (c) 2019 - 2023, Oracle and/or its affiliates. apiVersion: apps/v1 kind: Deployment metadata: name: timesten-operator spec: replicas: 1 selector: matchLabels: name: timesten-operator template: metadata: labels: name: timesten-operator spec: serviceAccountName: timesten-operator imagePullSecrets: - name: sekret containers: - name: timesten-operator image: container-registry.oracle.com/timesten/timesten:22.1.1.19.0 command: - /timesten/operator/operator/timesten-operator ports: - name: probes containerPort: 8081 protocol: TCP - name: metrics containerPort: 8080 protocol: TCP readinessProbe: httpGet: scheme: HTTP path: /healthz port: probes initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 10 successThreshold: 1 failureThreshold: 1 livenessProbe: httpGet: scheme: HTTP path: /healthz port: probes initialDelaySeconds: 10 periodSeconds: 30 timeoutSeconds: 10 successThreshold: 1 failureThreshold: 3 env: - name: WATCH_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace - name: POD_NAME valueFrom: fieldRef: fieldPath: metadata.name - name: OPERATOR_NAME value: "timesten-operator" - name: TT_DEBUG value: "0" - name: EXPOSE_METRICS value: "1" - name: METRICS_SCHEME value: "https" - name: EXPOSE_PROBES value: "1" - name: CREATE_SERVICEMONITOR value: "1" resources: requests: cpu: "250m" memory: "1G" limits: cpu: "250m" memory: "1G" securityContext: runAsNonRoot: true privileged: false allowPrivilegeEscalation: false capabilities: drop: - all ...
このoperator.yaml
ファイルのいくつかのフィールドを見てみましょう。-
TimesTenオペレータ・デプロイメントの名前は
timesten-operator
です。 -
replicas
のデフォルト値は1
です。この例では、値は変更されません。 -
イメージ・プル・シークレットは
sekret
です。この例では、値は変更されません。 -
イメージは
container-registry.oracle.com/timesten/timesten:22.1.1.19.0
です。この例では、container-registry.oracle.com/timesten
リポジトリを使用します。公式のTimesTenコンテナ・イメージの名前は、22.1.1.19.0
TimesTenリリースを反映したtimesten:22.1.1.19.0
です。 -
TimesTenオペレータの準備状況および有効性プローブは、
operator.yaml
ファイルに含まれています。これらのプローブにより、KubernetesはTimesTenオペレータの状態を確認できます。「準備状況および有効性プローブについて」を参照してください。 -
次のTimesTenオペレータ環境変数が
operator.yaml
ファイルに含まれています。-
EXPOSE_METRICS
:"1"
の値は、TimesTenオペレータ・メトリックが公開されることを示します。これがデフォルトです。TimesTenオペレータ・メトリックの詳細は、「TimesTen Kubernetesオペレータからのメトリックの公開」および「TimesTen Kubernetesオペレータの環境変数」を参照してください。 METRICS_SCHEME
:"https"
の値は、TimesTenオペレータ・メトリックがhttpsを使用して公開されることを示します。これがデフォルトです。TimesTenオペレータ・メトリックの詳細は、「TimesTen Kubernetesオペレータからのメトリックの公開」および「TimesTen Kubernetesオペレータの環境変数」を参照してください。-
EXPOSE_PROBES
:"1"
の値は、TimesTenオペレータ・プローブが公開されることを示します。これがデフォルトです。詳細は、「準備状況および有効性プローブについて」および「TimesTen Kubernetesオペレータの環境変数」を参照してください。 -
CREATE_SERVICEMONITOR
:"1"
の値は、TimesTenオペレータがSERVICEMONITOR
オブジェクトを作成することを示します。これがデフォルトです。詳細は、「TimesTen Kubernetesオペレータからのメトリックの公開」および「TimesTen Kubernetesオペレータの環境変数」を参照してください。
-
-
operator.yaml
ファイルには、デフォルトのCPUおよびメモリー・リクエストと制限があります。
ノート:
operator.yaml
ファイルは、リリースによって異なる場合があります。 -
- KubernetesクラスタのネームスペースにTimesTenオペレータをデプロイします。
% kubectl create -f operator.yaml deployment.apps/timesten-operator created
TimesTenオペレータが正常にデプロイされました。これで、TimesTenオペレータが実行されます。