ScalarDB Cluster の制作チェックリスト
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
このチェックリストは、実稼働環境に ScalarDB Cluster をデプロイする際の推奨事項を提供します。
あなたが始める前に
このチェックリストでは、推奨される管理対象 Kubernetes クラスターに ScalarDB Cluster をデプロイしていることを前提としています。
実稼働チェックリスト: ScalarDB Cluster
以下は、運用環境で ScalarDB Cluster をセットアップする際の推奨事項のチェックリストです。
ポッドと Kubernetes ワーカーノードの数
Kubernetes クラスターの高可用性を確保するには、少なくとも3つのワーカーノードを使用し、ワーカーノード全体に少なくとも3つのポッドをデプロイする必要があります。3つのポッドをワーカーノードに分散させるための podAntiAffinity
のサンプル構成を参照できます。
ワーカーノードを異なるアベイラビリティゾーン (AZ) に配置すると、AZ の障害に耐えることができます。
ワーカーノードの仕様
商用ライセンスの観点から、ScalarDB Cluster を実行する1つのポッドのリソースは 2vCPU / 4GB メモリに制限されます。また、ScalarDB Cluster ポッド以外の一部のポッドがワーカーノード上に存在します。
つまり、次のコンポーネントは1つのワーカーノード上で実行できます。
- ScalarDB Cluster ポッド (2vCPU / 4GB)
- Envoy プロキシ (
indirect
クライアントモードを使用する場合、または Java 以外のプログラミング言語を使用する場合) - アプリケーションポッド (同じワーカーノード上でアプリケーションのポッドを実行することを選択した場合)
- 監視コンポーネント (
kube-prometheus-stack
などの監視コンポーネントをデプロイする場合) - Kubernetes コンポーネント
direct-kubernetes
モードを使用する場合は、Envoy ポッドをデプロイする必要はありません。
これを念頭に置いて、ポッドと Kubernetes ワーカーノードの数で説明されているように、少なくとも 4vCPU / 8GB のメモリリソースを持つワーカーノードを使用し、可用性のために少なくとも3つのワーカーノードを使用する必要があります。
ただし、実稼働環境では、ノードあたり少なくとも 4vCPU / 8GB のメモリリソースを備えた3つのノードが最小限です。システムのワークロードに応じて、Kubernetes クラスターのリソース (ワーカーノードの数、ノードあたりの vCPU、ノードあたりのメモリ、ScalarDB Cluster ポッド、アプリケーションのポッドなど) も考慮する必要があります。また、Horizontal Pod Autoscaling (HPA) などの機能を使用してポッドを自動的にスケーリングすることを計画している場合は、ワーカーノード上のポッドの最大数を考慮してワーカーノードのリソースを決定する必要があります。
通信網
ScalarDB Cluster はインターネットアクセス経由でユーザーに直接サービスを提供しないため、Kubernetes クラスターはプライベートネットワーク上に作成する必要があります。アプリケーションからプライベートネットワーク経由で ScalarDB Cluster にアクセスすることをお勧めします。
監視とログ記録
デプロイされたコンポーネントを監視し、そのログを収集する必要があります。詳細については、Kubernetes クラスター上の Scalar 製品の監視および `Kubernetes クラスター上の Scalar 製品からのログの収集](./K8sLogCollectionGuide.mdx)を参照してください。
バックアップと復元
バックエンドデータベースで自動バックアップ機能とポイントインタイムリカバリ (PITR) 機能を有効にする必要があります。詳細については、ScalarDB/ScalarDL 導入用のデータベースのセットアップを参照してください。