本記事では、Amazon Web Services (AWS) PrivateLinkを使用してOceanBase Cloudに接続する方法について説明します。
前提条件
- AWSアカウントに登録されていること。
- OceanBase Cloudアカウントに登録されており、クラスタインスタンスとテナントが作成されていること。詳細については、インスタンスの作成およびテナントの作成を参照してください。本記事ではMySQL互換テナントを例に説明します。
- クライアントIPアドレスがテナントの許可リストに追加されていることを確認してください。具体的な操作については、IPアドレスの許可リストの設定を参照してください。
初回プライベートネットワーク接続の使用
インスタンスに利用可能なプライベートネットワークアドレスがない場合は、まずプライベートネットワークアドレスを作成し、その後接続文字列を取得する必要があります。
OceanBase Cloudコンソールにログインし、左側のナビゲーションバーで、**ネットワーク**をクリックします。
ネットワーク設定ページで、**プライベート接続を作成**をクリックします。
ポップアップダイアログで、以下の情報に従って**ステップ1:エンドポイントサービスの作成の設定を完了した後、作成**をクリックします。
パラメータ説明クラウドプロバイダの選択 **AWS**を選択します。 インスタンスまたはテナントの選択 接続するインスタンスとテナントを選択します。 顧客アカウントの入力 AWSアカウントIDです。AWSクラウドコンソールに移動し、右上隅のユーザー名をクリックして、ドロップダウンメニューからアカウントIDをコピーします。 AWSエンドポイントを作成します。
AWSコンソールでの作成
**ステップ2: エンドポイントを作成で、サービスID**をコピーして保存します。
AWSクラウドコンソールに移動し、検索バーでエンドポイントを検索して、**機能 > エンドポイント**を選択します。
エンドポイントページで、**エンドポイントの作成**をクリックし、以下の設定情報を入力して、エンドポイントの作成をクリックします。
パラメータ説明名前 カスタム名を入力します。 タイプ NLBとGWLBを使用するエンドポイントサービスを選択します。 サービス名 **ステップ2: エンドポイントを作成**でコピーしたサービスIDを入力し、サービスの検証をクリックします。 VPC エンドポイントを作成するVPCを選択し、対象のサブネットを選択します。 AWSエンドポイントの作成が成功したら、VPCエンドポイントIDをコピーします。そして、エンドポイントページで、作成したばかりのエンドポイントを選択し、操作 > プライベートDNS名の変更を選択します。表示された画面で、プライベートDNS名の有効化の下にあるこのエンドポイントで有効化を選択して保存します。
コマンドラインでの作成
Amazon VPCコンソールに移動し、VPC IDとサブネットIDを取得して入力します。
ステップ2: エンドポイントを作成 > AWS CLIによる作成 タブで、エンドポイントを作成するコマンドをコピーします。
AWSコンソールのコマンドラインページで、コピーしたコマンドを実行します。
作成が完了したら、エンドポイントページにアクセスし、VPCエンドポイントID をコピーします。エンドポイントページで、作成したばかりのエンドポイントを選択し、操作 > プライベートDNS名の変更 を選択します。表示された画面で、プライベートDNS名の有効化 の下の このエンドポイントで有効にする を選択して保存します。
OceanBase Cloudコンソールに戻り、ステップ2: エンドポイントを作成 に、コピーした VPCエンドポイントID を入力し、エンドポイントの作成 をクリックします。
エンドポイントの作成が完了したら、専用DNSが有効になっていることを確認し、ステップ3:プライベートDNSを有効化 で OK をクリックします。
ステップ4:データベースにアクセス で、既存のデータベースとアカウントを選択するか、新しいデータベースとアカウントを作成します。
説明
アカウント作成時に生成されたパスワードは、安全な場所に保管してください。
必要に応じて接続方式(例:OBClient)を選択し、生成された接続文字列をクライアントにコピーして接続します。接続に成功すれば、データベースへのアクセスと利用が可能になります。
利用可能なプライベートIPアドレスが既に存在する場合
利用可能なプライベートIPアドレスが既にある場合は、作成済みのプライベート接続を選択し、直接接続できます。以下では、作成済みのプライベート接続を使用して接続する方法について説明します。新しいプライベート接続を作成する必要がある場合は、上記のプライベートネットワーク接続の初回使用のセクションを参照して作成してください。
OceanBase Cloudコンソールにログインします。インスタンス一覧ページで、対象インスタンスの情報を展開し、対象テナントで、接続 > 接続文字列を取得 を選択します。
ポップアップウィンドウで、プライベートIPアドレスの使用 を選択します。
ステップ4:データベースにアクセス で、データベースとアカウントを選択するか、新しいデータベースとアカウントを作成します。
説明
新しいアカウントの作成を選択した場合は、アカウント作成時に生成されたパスワードを適切に記録してください。
必要に応じて接続方式(例:OBClient)を選択し、生成された接続文字列をクライアントにコピーして接続します。接続に成功すると、データベースへのアクセスと使用が可能になります。
ページ内の 単一接続文字列を有効にする ボタンをクリックすると、ワンセグメント接続文字列機能を有効にできます。有効にすると、接続文字列の形式は次のように変わります:
obclient -h <host> -P <port> -u <username> --ssl-ca=<path>/ca.pem -p
説明
- 二段階接続文字列ではODPホストのアドレスとポートを同時に指定する必要がありますが、ワンセグメント接続文字列ではデータベースサービスのアドレスのみを使用するため、形式が簡潔です。
- ワンセグメント接続文字列を有効にする ボタンをクリックすると、ワンセグメント接続文字列が表示され、コピーして使用できます。
- ワンセグメント接続文字列を使用する前に、クライアントのIPアドレスが許可リストに追加されていることを確認してください。追加されていない場合は、データベースに正常にアクセスできません。
- ワンセグメント接続文字列機能を有効にした後も、既存の二段階接続文字列は引き続き正常に使用でき、影響はありません。
- ワンセグメント接続文字列を有効にする ボタンがグレーアウトされている場合は、現在のODPバージョンがv4.3.6未満で、この機能をサポートしていないことを意味します。OceanBase Cloudのテクニカルサポートに連絡し、アップグレードを依頼してください。
次のステップ
エンドポイントの作成が完了すると、テナントのダッシュボードにあるトポロジーマップで作成したエンドポイントの情報を確認できます。VPCの変更などの理由で既に作成したエンドポイントを変更する必要がある場合、現在のOceanBase Cloudでは既存のエンドポイントを削除して再度作成することができます。エンドポイントの削除手順は以下のとおりです:
OceanBase Cloudコンソールのインスタンス一覧ページで、対象テナント名をクリックしてテナントのダッシュボードに入ります。
テナントのダッシュボードの トポロジー の下にある削除ボタンをクリックして、作成したエンドポイントを削除します。