フォーム読み込み中
クラウドサービスでは様々なプロダクトが利用でき、それらプロダクトを組み合わせてどのような構成がよいのか判断するのは非常に難しいものとなっています。
この記事では、いままでのお客さま導入経験の中から、特に参考になりそうな事例を取り上げて、その重要となる技術エッセンスを中心に紹介していきます。
お客さまは東京と東南アジア地域に事業拠点がある土木・建設分野に強い某製造業の会社様になります。
お客さまはクラウド環境への移行を検討していました。しかし、AWSのサービス種類が多いため全体感がつかめていませんでした。また一部の仮想マシンでの操作経験はあるものの、具体的な利用イメージがついていません。そこで、具体的な利用イメージを確認できるWeb3層構成のシステムを実際にAWSに展開してみることになりました。
また、お客さまは土木・建設分野に強い製造業でもあるため東南アジア地域にも事業拠点があり、それぞれの地域での性能や可用性の確認が求められていました。
よって、東京とアジア地域の2つのリージョンを跨いだアクティブ-アクティブ構成を使ってWeb3層システムを構築し、その検証を行いました。
本システムは、クラウド上に3層のWebサンプルシステムを構築するものです。
具体的には、AWSの仮想マシンEC2を使用し、サービス全体の理解と利用イメージの確認を目指します。また、システムは東京とアジア圏内の2つのリージョンで動作させ、両リージョン間での切り替え検証も可能とします。
ここでは、お客さまと検討した2つの案(A案、B案)の特徴について説明します。
二つのA案とB案で共通する特徴として、Amazon Aurora Global Databasesを導入することにより、マルチリージョンでの読み書きが可能となります。さらにAWSのサービスを最大限に活用し、セキュア且つ柔軟にシステムを展開することができます。
特に、A案の場合は、同一リージョン内での読み取りと書き込みを可能にします。これは、各リージョンで完全に独立したデータを扱う場合や、リージョンごとのデータ整合性が求められる場合に適しています。
A案では「Read local, Write local」の形式で、Amazon Aurora Global Databaseの書き込み転送機能を使用します。こちらの案では、同一リージョン内での読み取りと書き込みを可能にします。
一方、B案の場合は、全リージョンへの読み取りと特定のリージョンへのグローバルな書き込みを可能にします。これは大規模な分散環境でもデータ整合性を保つために、書き込みは一箇所で集約することを前提としています。
B案では「Read local, Write global」の形式で、Amazon Aurora Global Databaseを使用します。B案では、全リージョンへの読み取りと特定リージョンへのグローバルな書き込みが可能となります。
次に、お客さまのシステムとクラウドを接続するためのネットワーク構成についての解説を行います。
VPN接続を利用して、お客さまのサイトとAWSを安全に接続します。また、Transit Gatewayを使用して、アジアと東京のリージョン間通信を可能にします。
マルチリージョンの構成であるため、それぞれのリージョンにVPCを設定します。VPCには複数AZを含める構成とし、さらにネットワークを論理分割するためにVPC内にPublic/Privateのサブネットを作成します。
次に、アプリケーション・ロードバランサー(ALB)をそれぞれのリージョンに配置し、Webサーバとアプリケーションサーバのバランシングを行います。
また、データベース間のレプリケーションのために東京リージョンと別リージョンのVPC間で通信を行うことができるようにVPCピアリング接続を追加します。
この構成により、東京拠点と海外拠点のどちらの地域からもシステムにアクセスでき、適切なレイテンシで安定した性能を提供することが可能となります。
さらに構築・運用保守のために、構築作業者拠点よりInternetを経由し踏み台サーバーへログインして、それぞれのリージョンのプライベートサブネットとパブリックサブネットへアクセスします。
我々が検証した各構成のメリットとデメリットを比較します。
A案のメリットとしては、各リージョンで完全に独立したデータを扱うことが可能であり、データ整合性が重要なケースに適用できます。また、各リージョンでの読み書きが可能なので、地理的に近いリージョンからのアクセスが多い場合でも、遅延なく快適に利用できます。
一方、デメリットとしては、各リージョンで独立したデータを保持するため、全リージョン間でのデータ整合性を保つ際に追加の工夫が必要になる可能性があります。また、書き込み時の通信費用が発生します。
B案のメリットは、全リージョンへの読み取りと特定リージョンへの書き込みが可能であるため、大規模な分散環境でもデータ整合性を保つことができます。
デメリットとしては、全リージョンへの読み取りと特定リージョンへの書き込みを可能にするためには、ひとつのリージョンが書き込みを担当することになり、そのリージョンで障害が発生した場合、全体のパフォーマンスに影響を及ぼす可能性があります。
比較項目 | A案 | B案 |
|---|---|---|
案の概要 | Auroraを利用した Read local, write local 書き込み転送有り | Auroraを利用した Read local, write global 書き込み転送なし |
初期費用 | ⚪️ | ⚪️ |
ランニングコスト | ▲ | ⚪️ |
耐障害性 | ⚪️ | ⚪️ |
業務継続性(可用性、災害対策) | ⚪️ | ⚪️ |
読み込みレイテンシー | ⚪️ | ⚪️ |
書き込みレイテンシー | ⚪️ | ▲ |
AP側設計考慮要素 | ▲ | ▲ |
本システムで利用する主なクラウドプロダクトは以下のようになります。
これらのサービスを組み合わせてシステム全体の構成を作り上げています。
ここまで、クラウド導入の具体的なイメージを示すべく、お客さまの要件に沿った複数のシステムを提案しました。基本的な考え方としては、Amazon Auroraを使い、マルチリージョンでのデータの読み書きを可能にするというものです。
それぞれの案には、メリットとデメリットがあり、お客さまのビジネスや技術要件により適用すべきシナリオが異なると考えています。最終的な選択は、お客さまのビジネス戦略やリスク許容度、予算等によるところが大きいと言えます。
私たちは、このような提案から一緒にステップアップして、より効果的なクラウド導入を進めていくパートナーでありたいと思っています。
お客さまのニーズにあわせて、詳しい提案をさせていただくことで、お客さまのビジネスに最適な解決策を見つけていただければと思います。
条件に該当するページがございません