ScalarDB Analytics with PostgreSQL のカスタム値ファイルを構成する
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
このドキュメントでは、PostgreSQL チャートを使用した ScalarDB Analytics のカスタム値ファイルを作成する方法について説明します。パラメーターの詳細については、ScalarDB Analytics with PostgreSQL チャートの README を参照してください。
必要な構成
このセクションでは、ScalarDB Analytics with PostgreSQL のカスタム値ファイルを設定するときに必要な構成について説明します。
データベース構成
ScalarDB Analytics with PostgreSQL 経由でデータベースにアクセスするには、database.properties
ファイルの構成に使用するのと同じ構文に従って、scalardbAnalyticsPostgreSQL.databaseProperties
パラメータを設定する必要があります。設定の詳細については、ScalarDB Configurations を参照してください。
scalardbAnalyticsPostgreSQL:
databaseProperties: |
scalar.db.contact_points=localhost
scalar.db.username=${env:SCALAR_DB_USERNAME:-}
scalar.db.password=${env:SCALAR_DB_PASSWORD:-}
scalar.db.storage=cassandra
データベース名前空間の構成
ScalarDB Analytics with PostgreSQL 経由で読み取りたいテーブルを含むすべてのデータベース名前空間に schemaImporter.namespaces
を設定する必要があります。
schemaImporter:
namespaces:
- namespace1
- namespace2
- namespace3
オプションの構成
このセクションでは、ScalarDB Analytics with PostgreSQL のカスタム値ファイルを設定する場合のオプションの構成について説明します。
リソース構成 (実稼働環境で推奨)
Kubernetes でリクエストと制限を使用してポッドリソースを制御するには、scalardbAnalyticsPostgreSQL.resources
を使用できます。
Kubernetes のリクエストと制限と同じ構文を使用して、リクエストと制限を構成できます。Kubernetes のリクエストと制限の詳細については、Resource Management for Pods and Containers を参照してください。
scalardbAnalyticsPostgreSQL:
resources:
requests:
cpu: 1000m
memory: 2Gi
limits:
cpu: 2000m
memory: 4Gi
シークレット構成 (運用環境で推奨)
環境変数を使用して scalardbAnalyticsPostgreSQL.databaseProperties
で資格情報などのいくつかのプロパティを設定するには、scalardbAnalyticsPostgreSQL.secretName
を使用していくつかの資格情報を含むシークレットリソースを指定します。
たとえば、環境変数を使用してバックエンドデータベースの資格情報 (scalar.db.username
および scalar.db.password
) を設定できるため、ポッドの安全性が高まります。
シークレットリソースの使用方法の詳細については、[シークレットリソースを使用して資格情報を環境変数としてプロパティファイルに渡す方法(./use-secret-for-credentials.mdx)を参照してください。
scalardbAnalyticsPostgreSQL:
secretName: "scalardb-analytics-postgresql-credentials-secret"
アフィニティ構成 (運用環境で推奨)
Kubernetes でアフィニティとアンチアフィニティを使用してポッドのデプロイメントを制御するには、scalardbAnalyticsPostgreSQL.affinity
を使用できます。
Kubernetes のアフィニティとアンチアフィニティと同じ構文を使用して、アフィニティとアンチアフィニティを構成できます。Kubernetes でのアフィニティの構成の詳細については、Assigning Pods to Nodes を参照してください。
scalardbAnalyticsPostgreSQL:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- scalardb-analytics-postgresql
- key: app.kubernetes.io/app
operator: In
values:
- scalardb-analytics-postgresql
topologyKey: kubernetes.io/hostname