ベアメタル クラスタ用 Google Distributed Cloud(ソフトウェアのみ)に AlloyDB Omni をインストールして実行します。
概要
Google Distributed Cloud for ベアメタル は、AlloyDB Omni(AlloyDB Omni Operator バージョン 1.7.0 以降)のパートナー認定を完了しました。
AlloyDB Omni は、ダウンロード可能なデータベース ソフトウェア パッケージです。
- AlloyDB for PostgreSQL の簡素化されたバージョンをデプロイできます。
- PostgreSQL との完全な互換性を提供します。
- トランザクション ワークロードで高スループットを実現します。
- 分析ワークロード向けにカラム型エンジンの高速化を提供します。
- AlloyDB AI を使用して、生成 AI とベクトル検索のワークロードを組み込みでサポートします。
AlloyDB Omni Kubernetes Operator を使用して、ベアメタル クラスタに AlloyDB Omni をデプロイして管理します。
始める前に
AlloyDB Omni をインストールする前に、次のものが必要です。
- Kubernetes バージョン 1.21 以降を実行している Google Distributed Cloud ベアメタル クラスタ。
- クラスタと通信するように構成された
kubectlコマンドライン ツール。 - 管理ワークステーションにインストールされた
helmパッケージ マネージャー(バージョン 3 以降)。 - 動的ボリューム プロビジョニング用にベアメタル クラスタで構成されたデフォルトの StorageClass。詳細については、ストレージの概要をご覧ください。
- AlloyDB Omni の最小リソース要件を満たすクラスタ内のノード:
- データベース インスタンスあたり 2 個以上の CPU。
- CPU あたり 8 GB 以上の RAM(2 個の CPU の場合は 16 GB など)。
- 対照群(cgroup)v2 が有効になっている Linux カーネル 4.18 以降。
cert-manager をインストールする
AlloyDB Omni Operator は、アドミッション Webhook の TLS 証明書を管理するために cert-manager を必要とします。
クラスタに
cert-managerがまだインストールされていない場合は、Helm を使用してインストールします。sh helm repo add jetstack https://charts.jetstack.io helm repo update helm install cert-manager jetstack/cert-manager \ --namespace cert-manager \ --create-namespace \ --version v1.16.0 \ --set crds.enabled=true \ --kubeconfig KUBECONFIGKUBECONFIGは、クラスタ kubeconfig ファイルのパスに置き換えます。cert-managerPod が実行されていることを確認します。sh kubectl get pods -n cert-manager --kubeconfig KUBECONFIGAlloyDB Omni Operator をインストールする
Helm を使用して OCI レジストリから AlloyDB Omni Kubernetes Operator をインストールする手順は次のとおりです。
オペレーター Helm チャートをインストールします。
helm install alloydbomni-operator oci://gcr.io/alloydb-omni/alloydbomni-operator \ --version OPERATOR_VERSION \ --create-namespace \ --namespace alloydb-omni-system \ $(helm install --help | grep -q -- '--rollback-on-failure' && echo '--rollback-on-failure' || echo '--atomic') \ --timeout 5m \ --kubeconfig KUBECONFIG次のように置き換えます。
OPERATOR_VERSION: インストールする AlloyDB Omni Operator のバージョン(1.8.0以降など)。KUBECONFIG: クラスタの kubeconfig ファイルのパス。
Operator Pod が実行されていることを確認します。
kubectl get pods -n alloydb-omni-system --kubeconfig KUBECONFIG出力は次のようになります。
NAME READY STATUS RESTARTS AGE fleet-controller-manager-796c698cd7-x2vsr 1/1 Running 0 22h local-controller-manager-76f6c98446-rzpsc 1/1 Running 0 22h
AlloyDB Omni クラスタを作成する
オペレーターの実行後、パスワード シークレットを作成し、DBCluster カスタム リソースを適用して、AlloyDB Omni データベース クラスタを作成します。
データベース ワークロードの Namespace を作成します。
kubectl create namespace my-db-ns --kubeconfig KUBECONFIGデフォルトの
postgresユーザーのデータベース管理者ログイン パスワードを含む Kubernetes Secret を作成します。kubectl create secret generic db-pw-my-db-cluster \ --namespace my-db-ns \ --from-literal=my-db-cluster=PASSWORD \ --kubeconfig KUBECONFIGPASSWORDを安全なパスワードに置き換えます。db-cluster.yamlという名前のマニフェストを作成します。apiVersion: alloydbomni.dbadmin.goog/v1 kind: DBCluster metadata: name: my-db-cluster namespace: my-db-ns spec: databaseVersion: "18.3.0" primarySpec: adminUser: passwordRef: name: db-pw-my-db-cluster resources: cpu: 2 memory: 16Gi disks: - name: DataDisk size: 20Gi次のようにマニフェストを適用します。
kubectl apply -f db-cluster.yaml --kubeconfig KUBECONFIGデータベース クラスタが
Ready状態になっていることを確認します。kubectl get dbclusters -n my-db-ns --kubeconfig KUBECONFIG出力は次のようになります。
NAME PRIMARY PRIMARYSTATUS STANDBY STANDBYSTATUS STATUS my-db-cluster my-db-cluster-0 Ready Ready
次のステップ
- Kubernetes 上の AlloyDB Omni の詳細を確認する。
- AlloyDB Omni を実行して接続する方法について説明します。
- Kubernetes の高可用性を構成する方法を確認する。
- ベアメタルでサードパーティ LLM をサービングする方法と、ベクトル データベースと統合する方法について学習します。
- 本番環境で AlloyDB Omni を実行する方法を学習する