Amazon Web Services ブログ

オンプレミスの VMware 環境での Amazon RDS マネージド型データベースの使用開始

Amazon RDS on VMware は、数十万の顧客が利用している Amazon RDS テクノロジーを使用して、AWS Relational Database Service (RDS) のマネージド型データベース体験をオンプレミスの VMware 環境に拡張します。

この記事では、VMware 管理者とデータベース管理者が RDS on VMware 環境にデプロイする方法を説明します。オンプレミスの vSphere クラスターを RDS on VMware デプロイ用に準備する方法と、RDS on VMware をクラスターにオンボードする方法について説明します。

RDS on VMware アーキテクチャ

RDS on VMware は、VMware vSphere 環境のソフトウェアアプライアンスで RDS コネクタを使用します。RDS コネクタを使用すると、AWS リージョンからの専用仮想プライベートネットワーク (VPN) トンネルを介してオンプレミスのリレーショナル DB インスタンスを管理できます。これにより、Amazon RDS のコントロールプレーンがリージョンの AWS クラウドに留まることができます。

Amazon RDS は、セットアップ中に VMware vSphere クラスターにデプロイされるローカルコンポーネントを通じて、オンプレミスの VMware 環境で DB インスタンスをプロビジョニングおよび管理します。これらはローカルコントロールプレーンを構成します。これらのコンポーネントは、仮想アプライアンスとしてオンプレミスクラスターにデプロイされます。これらのコンポーネントは、コントロール仮想マシン (VM) とも呼ばれます。コンポーネントは次の通りです。

  • エッジルーター – vSphere クラスターにデプロイして、AWS クラウドと vCenter サーバーへのルートを提供します。このアプライアンスは、クラスターコントロールネットワークの DNS サーバーと DHCP サービスも実行します。また、オンプレミス環境を AWS クラウドに接続する VPN トンネルも管理します。
  • RDS コネクタ – オンプレミスでデータ管理操作を実行します。
  • データストア (コントロール VM) – Amazon RDS メタデータを VMware クラスター内のローカルデータベースに保存し、仮想アプライアンスで実行します。
  • スナップショットマネージャーとオブジェクトストア (コントロール VM) – スナップショット操作を開始し、オンプレミスのプロビジョンドデータストアを使用してローカルに保存します。
  • イベントプロセッサ (コントロール VM) – データベースの状態をモニタリングし、必要に応じて欠陥のある RDS インスタンスの交換をトリガーします。
  • イベントサービスアグリゲーター (コントロール VM) – 接続された AWS リージョンにメトリックとイベントをプッシュします。
  • VDME (コントロール VM) – Amazon RDS への vCenter 操作のインターフェイスを提供します。これらのアプライアンスのうち 2 つは、セットアップ中にクラスターにデプロイされます。

次の図は、RDS on VMware の高レベルのアーキテクチャを示しています。

AWS クラウドの Amazon RDS コントロールプレーンは、AWS VPN トンネルを介してオンプレミスの VMware クラスターのローカルコントロールプレーンと通信します。これにより、Amazon RDS は、プロビジョニング、削除、電源操作、パッチ適用、オンプレミス RDS DB インスタンスへのバックアップなどの操作コマンドを発行できます。このアーキテクチャでは、オンプレミスの VMware 環境が AWS クラウドの Amazon RDS への接続を失った場合でも、DB インスタンスが機能します。Amazon CloudWatch を使用して、オンプレミスの VMware vSphere クラスターの DB インスタンスをモニタリングできます。

VMware クラスター内で vSphere 高可用性と分散型リソーススケジューラ (DRS) を使用して、ハードウェア障害シナリオで先行するアプライアンスに追加の保護を提供します。ホストまたはストレージハードウェアの障害が原因でいずれかのコンポーネントがクラッシュした場合、vSphere 高可用性は別の正常なホスト上でコンポーネントを再起動しようとします。これが失敗した場合、RDS on VMware イベントプロセッサは、新しいアプライアンスを正常なホストにデプロイすることにより、コンポーネントを自動的に置き換えます。

前提条件

RDS on VMware を使用する前に、次の前提条件を満たす必要があります。

  • vCenter Server および ESXi はバージョン 6.5 以降でなければなりません。
  • 分散リソーススケジューラ (DRS) と分散スイッチが必要なため、vSphere は最低でもエンタープライズプラス版を使用する必要があります。
  • vCenter サービスアカウントが必要です。このユーザーアカウントは、同じシングルサインオンドメイン内の ADMINISTRATORS、CAADMINS、SYSTEMCONFIGURATION.ADMINISTRATORS、LICENSESERVICE.ADMINISTRATORS、COMPONENTMANAGER.ADMINISTRATORS、SYSTEMCONFIGURATION.BASHSHELLADMINISTRATORS グループに追加する必要があります。上記のグループに属している限り、vCenter でサポートされているすべてのタイプのユーザーを使用できます。このアカウントは、オンプレミスの vSphere クラスターへのオンボード RDS にのみ使用されるため、オンボーディングプロセスの後でこのアカウントを無効化または削除できることにご注意ください。vCenter に対する適切な権限を持つ Active Directory アカウントもサポートされています。
  • 同じリソースプール内にある同じクラスターの RDS on VMware のすべてのマネージド型 VM および DB インスタンスをデプロイする必要があるため、vCenter で利用可能な適切なリソースを備えた vSphere リソースプールが必要です。リソースプール内のコントロール仮想マシンでは、少なくとも 24 vCPU、24 GB RAM、および 180 GB のストレージが利用可能である必要があります。したがって、より多くの CPU およびメモリリソースをリソースプールに割り当て、予約プロパティをリソースプールで拡張可能に構成する必要があります。これにより、リソースプール内でリソースの競合が発生した場合に、リソースプールは必要に応じてより多くのリソースを取得できます。したがって、この基本容量とデータベースインスタンス VM の容量が必要です。
  • 使用する分散スイッチは、RDS on VMware が使用するクラスターの一部であるすべてのホストにまたがる必要があります。クラスターコントロールのネットワークポートグループから配信される動的ホスト設定プロトコル (DHCP) ブロードキャストは、RDS on VMware をホストするクラスターの一部であるすべてのホストに到達する必要があります。
  • RDS コンソールからデプロイプロセスを開始できる IAM ユーザーとアクセスキーを持つ AWS アカウントです。これを行うには、AWS アカウントの設定をご覧ください。

こちらの一般的な前提条件に加えて、RDS on VMware に正常にデプロイする前に特定の前提条件を設定する必要があります。これらの特定の要件は、ネットワークとストレージを中心にデプロイします。次のセクションでは、これらについて説明します。

ネットワーキング

ネットワーク構成の重要な前提条件は、*rdsonvmware.rds.amazonaws.com に対するすべてのリクエストを RDS エッジルーター VM の IP アドレスに転送するようにローカル DNS サーバーを構成することです。これには、ワイルドカードレコードの使用が含まれます。詳細については、Wikipedia のワイルドカード DNS レコードを参照してください。オンプレミスで実行されている DB インスタンス VM の DNS エンドポイントに接続するには、エッジルーター VM を使用して DNS リクエストを解決します。つまり、ローカル DNS サーバーの DNS リゾルバーとしてエッジルーター VM を使用します。

4 つの異なるネットワークと、既存の ESXi 管理ネットワークに加えて、分散スイッチ内に作成する必要があるポートグループがあります。また、RDS on VMware でのみ使用するために、別の管理ネットワークを作成することもできます。分散型スイッチには、ESXi 管理またはカスタム管理ネットワーク用のポートグループが必要です。

インターネット/パブリックネットワーク

インターネット/パブリックネットワークは、アウトバウンドインターネットアクセスを持つクラスター内のポートグループです。これは難しい要件であり、ご使用の環境に実装する必要があります。セットアップ中に vSphere クラスターと Amazon RDS ウェブサイトの間に VPN トンネルを確立するために使用する発信元 IP として機能する 1 つのパブリック IP を提供します。これは、vSphere クラスターから RDS ウェブサイトへの送信トラフィックに使用される外部 IP アドレスです。

RDS on VMware が使用する仮想アプライアンスコンポーネントに対して自動 IP 割り当てを許可するには、VMware クラスターが使用するオンプレミスネットワークに DHCP が必要です。

ネットワークチームと協力して、デフォルトゲートウェイでパブリックネットワーク用の DHCP サービスを構成します。ネットワーク管理者は、DHCP トラフィックがパブリックネットワークの VLAN ID に制限されていることを確認する必要があります。このネットワークのポートグループは、アクセスモードまたはトランクモードでのアップリンクスイッチポートの構成方法に応じて、正しい VLAN ID でタグ付けする必要があります。詳細については、VMware ナレッジベースの仮想スイッチ、物理スイッチ、および仮想マシンの VLAN 構成を参照してください。

インターネットネットワークポートグループの発信元 IP には、ポート50、500、および 4500 への送信トラフィックおよび関連する受信トラフィック (VPN トンネル用の IKE/IPsec、UDP または TCP、両方は不要) が必要です。また、ポート 443 への TCP アクセスを許可する必要があります (これにより、パブリック Amazon RDS エンドポイントへの HTTPS アクセスが許可されます)。

アプライアンスがポートグループに接続されたときに自動的にスケールアウトできるように、分散スイッチポートグループのポート割り当てタイプを [伸縮自在] に設定します。

クラスターコントロールネットワーク

クラスターコントロールネットワークは、インターネット、管理、およびアプリケーションネットワークの VLAN ID とは異なる一意の VLAN ID を持つ、新規 VLAN にバックされたポートグループ上のネットワークである必要があります。この VLAN は、クラスターコントロール VM 専用にする必要があります。このネットワークは、接続されたエッジルーターアプライアンスから DHCP サーバーと DNS リゾルバーを実行します。RDS on VMware は、このネットワークの事前定義された 54.239.236.0/22 パブリックアドレス範囲に IP アドレスを割り当てます。クラスター操作に影響を与えないようにするには、VLANS でタグ付けしてネットワークを適切に分離する必要があります。特に DB インスタンス VM をクラスターにデプロイし始めたときに、分散ポートグループのポート割り当てタイプを [伸縮自在] に設定して、自動的にスケールアウトできるようにする必要があります。この場合、各 DB インスタンスにはポートグループに新しいポートが必要です。

アプリケーションネットワーク

アプリケーションネットワークは、Amazon RDS インスタンスが接続されている既存または新規のネットワークにすることができます。これは、一意の VLAN ID を持つ、新しい VLAN にバックされたポートグループ上のネットワークである必要があります。つまり、アプリケーションネットワーク上で実行されている他のネットワークからのトラフィックがあってはなりません。このネットワーク内では、DHCP サービスを提供する必要があります。DHCP は、アプリケーションネットワークに関連付けられた VLAN ID に限定する必要があります。このネットワークのポートグループは、アクセスモードまたはトランクモードでのアップリンクスイッチポートの構成方法に応じて、正しい VLAN ID でタグ付けする必要があります。

カスタムアベイラビリティーゾーンで DB インスタンスを作成およびスケーリングするときに自動的にスケールアウトできるように、分散ポートグループのポート割り当てタイプを [伸縮自在] に設定する必要があります。

企業ネットワーク

企業ネットワークは、RDS データベースと通信するアプリケーションサーバーの内部運用ネットワークのポートグループです。このネットワークに一意の VLAN ID をプロビジョニングします。このネットワークには DHCP は必要ありません。ただし、DHCP を使用する場合は、アップリンクスイッチポートの構成方法に応じて、正しい VLAN タグ付けのみを使用して DHCP がこのネットワークの VLAN に制限されていることを確認してください。

次の図は、前述のコンポーネントを使用して構成および接続された環境を論理的に表しています。この図は、このセクションで説明するネットワークを介して DB インスタンスがさまざまなコンポーネントに接続する方法を示しています。

RDS on VMware は NSX をサポートしています。ネットワークの DHCP 設定の詳細については、VMware ドキュメントのウェブサイトを参照してください。オンプレミスの NSX-T をご使用の場合は、DHCP を参照してください。NSX-V をご使用の場合は、DHCP サービスの管理を参照してください。

ポートグループ全体のレイヤー2 ネットワークセキュリティをさらに強化するには、無差別モード、MAC アドレスの変更、および REJECT への偽造送信を考慮して、ポートグループにセキュリティポリシーを設定します。詳細については、VMware ドキュメントの分散ポートグループまたは分散ポートのセキュリティポリシーの構成を参照してください。

ストレージ

RDS on VMware は、環境内の既存の vSphere ストレージを利用します。ただし、ソリューションをデプロイする前に、次の前提条件を満たす必要があります。

  • RDS on VMware が使用するクラスター上のすべての ESXi ホストは、同じデータストアに接続する必要があります
  • 1 つの専用データストアが vSphere クラスターに提供されます
  • データストアタイプは VSAN、VMFS、または NFS である必要があります

オンプレミス VMware クラスターへの Amazon RDS のオンボーディング

オンプレミスクラスターの準備ができたら、RDS on VMware をローカルのオンプレミス vSphere クラスターにオンボードする準備が整います。

オンボーディングプロセス中に、前述の各ネットワークの正しいポートグループ (インターネット/パブリック、クラスターコントロール、およびアプリケーション) を選択します。これらはアプライアンスで必要です。

RDS on VMware を環境にオンボードするには、次の手順を実行します。

  1. Amazon RDS コンソールで、RDS インスタンスをデプロイする適切なリージョンを選択します。
  2. Amazon RDS コンソールから、[カスタムアベイラビリティーゾーン] を選択します。
  3. [カスタム AZ] セクションで、[インストーラをダウンロード] を選択します。
  4. RDS on VMware サービス契約の条件を読み、受け入れる場合は [同意する] をクリックすると、RDS インストーラのダウンロードが開始されます。
  5. ダウンロードしたファイルを解凍し、コンピュータに保存します。
  6. [カスタム AZ] セクションで、[カスタム AZ を作成] を選択します。
  7. カスタム AZ の詳細については、アベイラビリティーゾーンの名前を入力します。
  8. VPN 設定には、トンネル名と発信元 IP を入力します。
  9. [カスタム AZ を作成] を選択します。
  10. vCenter にログインします。
  11. ダウンロードした OVA ファイルを RDS on VMware インストーラにデプロイします。
    詳細については、OVF または OVA テンプレートをデプロイを参照してください。
    次のスクリーンショットは、OVA デプロイダイアログを示しています。
  12. インストーラアプライアンスの電源を入れます。
    アプライアンスには 2 つの IP が自動的に割り当てられます。ブラウザでポップアップを許可してください。
  13. https://installer-ip/ui を使用してコンソールに接続します。
    次のスクリーンショットは、表示されるページを示しています。
  14. 前提条件で作成した AWS アクセスキー ID と AWS シークレットアクセスキーを提供します。
  15. [AWS 認証情報で検証] を選択します。
  16. [AWS の設定] を選択します。
  17. [リージョンを選択] で、以前に作成したカスタムアベイラビリティーゾーンを含むリージョンを選択します。
  18. [AZ を取得] を選択します。
  19. ドロップダウンメニューから、ご使用のアベイラビリティーゾーンを選択します。
  20. [次へ] を選択します。
  21. [ネットワーク設定] セクションで、ESXi 管理ネットワークの詳細を入力します。ESXi 管理の静的 IP アドレスは、管理ネットワークからの単一の IP アドレスであり、作成した既存またはカスタムの管理ネットワークのいずれかになります。この IP は、カスタムアベイラビリティーゾーンの全有効期間にわたって、RDS on VMware 用に設定されています。
  22. [次へ] をクリックします。
  23. vCenter 設定セクションで、vCenter サーバーの詳細を入力します。
    FQDN は、オンプレミス vCenter サーバーの DNS URL です。管理者名とパスワードは、前提条件セクションで作成した vCenter ユーザー用のものです。このユーザーには、前述のすべての権限が必要です。
  24. [テスト接続] を選択します。
    これにより、オンプレミス VM が vCenter に正常に接続されます。
  25. [次へ] を選択します。
  26. [配置の詳細] セクションで、RDS on VMware コントロール VM および DB インスタンス上の配置を指定します。
    すべての RDS on VMware VM は、同じクラスターまたはリソースプールとデータストアにデプロイされ、同じままでなければなりません。
  27. [次へ] をクリックします。
  28. [概要] セクションで、すべてのオンボーディング構成を確認し、[インストール] を選択します。
    コントロール仮想マシンのデプロイには数時間かかる場合があります。ほとんどの場合、2〜4 時間がかかります。
  29. [Amazon RDS コンソール] にログインします。
  30. カスタムアベイラビリティーゾーンのステータスを確認します。
    カスタムアベイラビリティーゾーンのステータスは、アクティブである必要があります。アクティブ状態は、インストールが成功し、vSphere クラスターがオンボードされ、登録されていることを示します。
  31. vCenter サーバーにログオンします。
    コントロール VM がデプロイされていることがわかります。または、すべてのコントロールアプライアンスを含む新しい VM フォルダが [VM とテンプレート] タブにあります。
    オンボーディングプロセスが完了すると、インストーラ仮想マシンの電源がオフになります。ここでインストーラ VM を削除できます。
    これで、オンプレミスの VMware クラスターで実行する最初の RDS インスタンスを作成する準備ができました。詳細については、AWS ドキュメントページのオンプレミス DB インスタンスの作成を参照することもできます。

まとめ

この記事では、RDS on VMware を使用するためにクラスターを準備する方法と、オンプレミスの vSphere クラスターで最初の RDS インスタンスを作成する方法についての簡潔な手順を説明しました。AWS CLIAmazon RDS API、または AWS マネジメントコンソールを介して、サポートされている任意のエンジンを使用して最初の RDS データベースをデプロイできます。

 


著者について

 

Schneider Larbi は、アマゾン ウェブ サービスのスペシャリストソリューションアーキテクトで、世界の公共部門をご使用のお客様が AWS Outposts と VMWare Cloud on AWS で安全かつスケーラブルで復元力のあるワークロードを設計して構築できるよう支援することに専念しています。彼はまた、お客様が VMware Cloud on AWS および AWS Outposts 上のすべてのタイプのワークロードを移行するよう支援することを専門としています。彼は、IT 業界で約 14 年間、電気通信、MSP、企業など、さまざまな業界のさまざまな企業で働いています。こちらの LinkedIin (linkedin.com/in/schneiderl) で彼とつながることができます。