5 Oracle Cloud InfrastructureでのOracle Database Shardingの使用

Oracle Shardingでは、管理デプロイメント用にネイティブOracle Cloud Infrastructure (OCI)サービスが用意されており、シャード・データベースのデプロイ操作を自動化し、さらに簡略化するためのツールが提供されます。

Oracle Cloud Infrastructureサービス

Oracle Globally Distributed Autonomous Databaseは、完全マネージド型のOracle Cloud Infrastructureサービスであり、グローバルに分散された直線的にスケーラブルなマルチモデル・データベース内で、多数のデータベース・インスタンス(シャード)にまたがってデータ・セットをデプロイおよび管理するための単一のユーザー・インタフェースを提供します。

Oracle Globally Distributed Autonomous Databaseにより、分散(シャード)データベースの機能をOracle Autonomous Database on Dedicated Exadata Infrastructureで活用できます。このサービスは、Oracleの自律型テクノロジをベースとして構築されており、自動運転、自己保護および自己修復を実現しています。これにより、パッチ適用、チューニング、バックアップおよびリカバリなど、データベースの管理に関連する多くのルーチン・タスクを自動化できるため、ヒューマン・エラーのリスクを軽減し、システムの稼働時間を改善できます。https://docs.oracle.com/en/cloud/paas/globally-distributed-autonomous-database/を参照してください

Kubernetesでのシャード・データベースのデプロイ

Oracle Cloud Infrastructure AnsibleモジュールおよびHelm/チャートを使用して、Oracle Kubernetes Engine (OKE)でのシャード・データベースのプロビジョニングを自動化します。

OKEにOracle Shardingをデプロイするには、Oracle Cloud Infrastructure Ansibleモジュールでコンピュート・リソースを作成し、ネットワークを構成し、Ansibleプレイブックに渡されるyamlファイルを使用してブロック・ストレージ・ボリュームを作成します。

Kubernetesでのシャード・データベース・デプロイメントの手順およびダウンロードは、https://github.com/oracle/db-sharding/tree/master/oke-based-sharding-deploymentを参照してください。

Terraformによるシャード・データベースのデプロイ

Oracle Shardingのツールには、Oracle Cloud Infrastructureとオンプレミスの両システムでシャード・データベースのデプロイを自動化するためのTerraformモジュールおよびスクリプトが含まれています。

Terraformモジュールおよびスクリプトでは、シャード・ディレクタ、シャード・カタログおよびシャードを含む完全なシャード・データベース・インフラストラクチャを作成して構成します。このスクリプトには、シャード・データの高可用性および障害時リカバリを実現するためにレプリケーションにOracle Data Guardを使用し、スタンバイ・シャードおよびシャード・カタログをデプロイするためのオプションも用意されています。

設定プロセスの一環として、Terraformバイナリをインストールし、Oracle Shardingシャード・ディレクタ・インストール・パッケージをダウンロードし、またオンプレミス・デプロイメントの場合には、Oracle Databaseインストール・ファイルをダウンロードします。

次の場所で、ターゲット・システムのTerraformベースのシャード・データベースのデプロイに関する手順およびダウンロードを参照してください。

Dockerによるシャード・データベースのデプロイ

Oracle Shardingには、DevOpsユーザーのシャード・データベースのインストール、構成および環境設定を容易にするサンプルのDockerビルド・ファイルが用意されています。

このプロセスでは、Dockerエンジンのインストールおよび構成、グローバル・サービス・マネージャ(シャード・ディレクタ)およびOracle Databaseイメージの作成、ネットワーク・ブリッジの作成、Oracle Shardingオブジェクトおよびシャード・ディレクタのコンテナの作成、およびコンテナのデプロイを行います。

Dockerによるシャード・データベース・デプロイメントの手順およびダウンロードは、https://github.com/oracle/db-sharding/tree/master/docker-based-sharding-deploymentを参照してください。