3大クラウドAWS、Azure、GCPの機能を比較したら見えてきたサービスごとの違いと特徴とは?

3大クラウドAWS、Azure、GCPの機能を比較したら見えてきたサービスごとの違いと特徴とは?

GCP

投稿日:2020/06/24 | 最終更新日:2020/07/25

企業が新システムを導入する際に、クラウドを考慮に入れることが一般的となってきています。しかし、各クラウドベンダーでは数多くの機能を提供している上にコモディティ化してきており、どのクラウドサービスを選択するか悩むことも少なくありません。

そこでこの記事では、3大クラウドと呼ばれている

  • Amazon Web Services
  • Microsoft Azure
  • Google Cloud Platform

の3つのクラウドが提供している機能を徹底的に比較し、その違いと選択の指針についてご紹介します。

3つのクラウドサービス

まずは3つのクラウドサービスについて、その大まかな特徴を抑えておきましょう。

Amazon Web Services

AWSロゴ
AWS(Amazon Web Services)はAmazon.com社が提供するクラウドサービスです。2006年7月にEC2の公開が開始され、クラウドサービスの中では最も長い歴史を持っています。常に業界のトップシェアを誇り、そのシェアは3割を超えています。

サービスの種類も豊富で、常に新しいサービスや独創的な考え方のサービスを提供してくれています。歴史が長いこともあり、様々なクラウドサービス選択の基準となり、最初に検討される場合も多いと思います。

Microsoft Azure

Azureロゴ
AzureはMicrosoft社が提供しているクラウドサービスです。2010年にサービスを開始し、Windows ServerやMicrosoft Officeといった様々なMicrosoft社製品との親和性から、順調に売上を伸ばしています。

既存のオンプレミス環境に存在するActive Directoryとも容易に連携を行うことができ、ハイブリッドクラウド構成を実現する基盤として適している考えられます。

Google Cloud Platform

GCPロゴ
GCP(Google Cloud Platform)はGoogle社が提供するクラウドサービスです。GCPはGmailやYoutube、Google マップなど、Google社の提供するサービスを稼働させる基盤としても利用されており、確かなサービスの運用実績がある点がポイントです。

2008年にGAEの提供を開始してから様々なサービスが追加され、特にコンテナ技術に関してはデファクトスタンダードとなる様々な技術を世の中に提供しています。

コンピュートリソース

コンピュートリソース
ではここからは実際に各サービスを多角的な観点から比較し、評価していきます。まずはアプリケーションを稼働させるインフラ部分となるコンピュートリソースを比較します。

仮想サーバー

AWS Azure GCP
Amazon EC2 Azure Virtual Machine Compute Engine

従量課金制の仮想サーバーサービスです。各社の機能にそれほど大きな違いはありません。課金体系、選べるコアやメモリ等のオプション、OSの種類、GPUへの対応、ネットワークの帯域、長期契約による割引などの観点から検討し、要件に合致することを確認してください。

ベアメタルサーバー

AWS Azure GCP
Amazon EC2 Bare Metal Instance Azure Bare Metal Servers Bare Metal Solution

エンタープライズユーザーの中で注目されているのがベアメタルサーバーです。堅牢なセキュリティとパフォーマンスが特徴で、自由にハイパーバイザを選択することができるサービスも存在します。自社のクラウド環境を最大限にカスタマイズしたい場合に考慮すべきサービスです。ベアメタルサーバーはIBM CloudによるBare Metal Serversが有名ですが、3大クラウド各社でも少しずつ提供が始まっています。

AzureはSAP HANA用途での利用のみ、GCPはコロケーションスペースに物理サーバーを配置するサービスとなっています。

コンテナ環境

AWS Azure GCP
Amazon Elastic Container Service
Amazon Elastic Kubernetes Service
AWS Fargate
Azure Container Instance
Azure Kubernetes Service
Kubernetes Engine
Cloud Run

各社ともマネージドのKubernetesサービスを提供しており、コンテナを運用する上での運用負荷を軽減することが可能です。また、AWS Fargate、Azure Container Instance、及びCloud Runに関してはサーバーレスで運用できるコンテナ基盤であり、より迅速に開発を行うことができます。3社の中で最もコンテナ技術に長けていると考えられるのはGoogleです。Googleは長年に渡って、自社のクラウド基盤としてコンテナ環境を活用しており、その運用管理ツールとしてBorgを作成しました。そのBorgがベースとなってOSS化されたものがKubernetesです。Borgは10年以上に渡ってGoogle社のコンテナ基盤の運用を支え、毎週10億以上のコンテナをデプロイした実績を持っています。サービスの機能自体は同等のものが提供されてきていますが、コンテナ技術の活用を考える場合、GCPの利用を検討すると良いでしょう。

アプリケーション基盤

AWS Azure GCP
AWS Elastic Beanstalk Azure Web Apps App Engine

アプリケーションを作成する際に必要となる環境を簡単に用意できるサービスです。各社ともマネージドの環境となっており、開発者はインフラ部分を気にせずに開発に専念することができます。

サーバーレス

AWS Azure GCP
Amazon Lambda Azure Functions Cloud Functions

サーバーレスサービスでは、イベントをトリガーにしてコードを実行する、イベントドリブンなシステムを構築することができます。連携可能なサービスの種類や実行時間を確認して選択する必要があります。また、Azureでは言語のランタイムとしてPowerShellやTypeScriptを利用することができます。

ストレージ

ストレージ
次に、データを格納するストレージサービスです。

ブロックストレージ

AWS Azure GCP
Amazon Elastic Block Storage Azure Disk Storage Persistent Disk

ブロックストレージサービスでは、パフォーマンスや拡張性、可用性等が判断の基準となります。各社ともIOPSやスループット性能に応じていくつかのオプションを提供しているため、ユースケースに適したオプションを選択する必要があります。また、いずれのサービスもデータのレプリケーションを自動で行いますが、AWSやAzureはゾーン内でのレプリケーションであるのに対し、GCPではゾーンをまたがったレプリケーションを行うことが可能です。

ファイルストレージ

AWS Azure GCP
Amazon Elastic File System Azure Files FileStore

ファイルストレージですが、AWSとGCPではNFS、AzureではSMBがプロトコルとして利用可能です。AzureにはAzure File Syncという機能があり、オンプレミスを含む外部のファイルサーバーをAzure Filesと同期することができます。これにより複数拠点で同一のファイルを扱うことができるようになり、災対用途としても利用することが可能です。

オブジェクトストレージ

AWS Azure GCP
Amazon S3
Amazon Glacier
Azure Blob Storage
Azure Archive Stroage
Cloud Storage

データ耐久性が非常に高く、柔軟にスケールすることができるオブジェクトストレージのサービスです。AWSやGCPではデータへのアクセス頻度に応じて価格体系が設定されているのに対して、Azureでは格納するオブジェクトの種類や用途毎にブロックBLOB、追加BLOB、ページBLOB等と細分化されており、より複雑な課金体系となっています。AWSのS3は99.999999999%の耐久性を実現するように設計されており、ストレージの中でも屈指の耐久性を誇っています。

大容量データ移行サービス

AWS Azure GCP
AWS Snowball
AWS Snowball Edge
AWS Snowmobile
Azure Data Box Transfer Appliance

既存環境から非常に大きなデータを移行する際に、ネットワーク経由で転送すると時間が膨大にかかる場合があります。その場合に検討すべきなのが物理的なデバイスをクラウド環境に持ち込む事ができるデータ転送のサービスです。それぞれ最大容量に違いがあり、Azure Data Box HeavyやGCPのTransfer Applianceではデバイスごとに最大1 PB(ペタバイト)の転送が可能であるのに対し、AWSの Snowmobileではセミトレーラートラックを利用し、最大100 PBまで転送することが可能です。

データベースサービス

データベース
次はデータベースのサービスです。サーバー上に構築することもできますが、ここではDBaaSとして提供されているマネージドのサービスをご紹介します。

リレーショナルデータベース

AWS Azure GCP
Amazon RDS
Amazon Aurora
Azure SQL Database
Azure Database for MySQL/PostgreSQL
Cloud SQL
Cloud Spanner

いずれのサービスも複数拠点へのレプリケーションはデフォルトで実装されており、高い可用性が担保されています。もちろんマネージドサービスなのでバックアップやパッチ適用は考慮する必要はありません。Amazon Auroaはクラウド環境に最適化するように再設計した新しいデータベースです。耐障害性と自己修復機能を有しており、インスタンスごとに最大 64TBまで自動でスケールされます。AzureのSQL Server Stretch Databaseではオンプレミス環境のSQL ServerをAzureに拡張できるユニークなサービスです。また、Cloud Spannerはトランザクションへの強整合性を持ちながら水平方向のスケールを可能としたサーバーレスRDMSです。RDBMSの構造とNoSQLデータベースのスケーラビリティを両立させている点で、今までにない設計のデータベースであると言えます。

NoSQL

AWS Azure GCP
Amazon DynamoDB Azure Cosmos DB Cloud Datastore

NoSQLのサービスでは、一貫性のあるトランザクションを提供できることが重要となります。上記にあげた各サービスはACIDへ完全準拠しており、データの整合性が確保されていると言えます。

データウェアハウス

AWS Azure GCP
Amazon Redshift Azure Synapse Analytics BigQuery

データウェアハウスは、ペタバイト級の大規模なデータを分析するためのシステムです。分析計のシステムであるため、パフォーマンスが気になるところですが、各社とも高速分析を謳っており正確な値は環境ごとに検証を行う必要があると思います。AWSではS3にデータを格納していることも多いと思いますが、Amazon Redshift Spectrumを利用することでS3のデータに直接SQLクエリを実行することも可能です。また、AzureのSynapse AnalyticsではSQLだけでなく、Sparkによる分析を行うことができます。GCPのBigQueryはサーバーレス方式で提供しており、他社に比べて運用が比較的容易です。また、BigQueryでは組み込みの機械学習の機能を利用することができます。

ネットワーク

ネットワーク
ネットワークのサービスを比較していきます。

仮想ネットワーク

AWS Azure GCP
Amazon VPC Virtual Network Virtual Private Cloud

各社とも仮想的なプライベートネットワーク環境を提供しています。IPアドレスの持ち込みやオンプレミス環境との接続など、それぞれのサービスに大きな違いはありません。GCPでは複数のリージョンにまたがって1つのVPCをデプロイする設計となっています。

ロードバランサー

AWS Azure GCP
Elastic Load Balancing Azure Load Balancer
Azure Application Gateway
Cloud Load Balancing

各サービスともL4/L7における負荷分散機能を提供しています。また、複数のゾーンにまたがって負荷を分散することが可能です。AWSのELBではオンプレミスのリソースを配下にし、ハイブリッド構成での負荷分散を実現することもできます。

DNS

AWS Azure GCP
Amazon Route53 Azure DNS Cloud DNS

各社とも権威DNSのサービスを提供しています。いずれのサービスも信頼性が高く、パブリック側と、プライベート側のそれぞれのネットワークに対して名前解決を行うことが可能です。

CDN

AWS Azure GCP
Amazon CloudFront Azure CDN Cloud CDN

静的コンテンツを配置することで容易に高速化を実現することができるサービスです。いずれのサービスでも各仮想サーバーやコンテナ基盤をオリジンとして設定し、アクセス負荷を軽減させることが可能です。また、証明書を追加費用無しで利用することもできます。AWSではAWS ShieldやAWS WAF、IAMとシームレスに統合されており、データをセキュアに保護することができます。また、GCPではLoggingやMonitoringと統合されており、リクエストのログを分析することが可能です。

VPN

AWS Azure GCP
Amazon VPN Azure VPN Gateway Cloud VPN

インターネット経由での安全なアクセスを保証するVPNのサービスです。Amazon VPNとAzure VPN Gatewayはサイト間だけでなく、サーバー – クライアント間のVPNも提供しています。GCPではサイト間のIPsec VPNのみを提供しているため、グローバルIPアドレスを持たないサーバーにアクセスする場合にはCloud VPN経由でアクセスするか、踏み台サーバーを利用するなどの方法を取る必要があります。また、AzureではActive Directoryを利用した認証を行うことが可能です。

専用線接続

AWS Azure GCP
Amazon Direct Connect Azure Express Route Cloud InterConnect

各社とも専用線の接続サービスを提供しています。AzureのExpressRoute DirectやGCPのDedicated Interconnectでは1本あたり100 Gbpsの帯域を利用することが可能です。

アプリケーション開発

アプリケーション
アプリケーションを開発する際に必要となる各種開発者ツールについて比較していきます。

コード管理

AWS Azure GCP
AWS CodeCommit Azure Repos Cloud Source Repositories

プライベートのマネージドリポジトリサービスです。いずれのサービスも無制限でレポジトリを作成することが可能で、5ユーザーまでは無料で利用することができます。

CI/CD

AWS Azure GCP
AWS CodeBuild
AWS CodeDeploy
AWS Code Pipeline
Azure Pipelines Cloud Build

アプリケーション開発の要となる開発サイクルの自動化ツールです。いずれのパイプラインサービスも各プロセスにおいて自社のサービスはもちろん、サードパーティー製のツールも組み込むことが可能です。GCPはネイティブのDocker環境もサポートしており、既存のDockerfileをインポートして利用することもできます。

IDE

AWS Azure GCP
AWS Cloud9 Visual Studio Cloud Code

Cloud9はブラウザのみで完結するクラウドベースのIDEであり、リッチエディタやデバッグ、AWS CLIがあらかじめプリインストールされています。環境構築が不要なため、非常に迅速に利用を開始することができます。また、Visual StudioにはAzureへの拡張機能が含まれており、もともとVisual Studioを利用してアプリケーションを構築していた方は構築環境をそのまま利用することが可能です。Cloud CodeではKubernetes環境の構築に最適なIDEを提供しており、アプリケーションの開発サイクル全体をサポートします。

SDK

AWS Azure GCP
AWS SDK Azure SDK Visual Studio Cloud SDK

各社とも様々な言語に対応したSDKを用意しています。

運用管理

運用管理
運用管理サービスを比較します。クラウド上のサービスを利用して運用管理が完結できることは重要な要因となります。

サービス管理

AWS Azure GCP
AWS Management Console
AWS Command Line Interface
Azure Portal
Azure Command Line Interface
Azure PowerShell
Azure Cloud Shell
Cloud Console
Cloud Shell
Cloud APIs

各クラウドサービスの管理ツールです。コンソールだけでなく各社ともCLIによるコマンド経由の制御が可能です。AzureではPowerShellでの操作、GCPではAPIによる自動化が行えることが特徴です。

監視、ロギング

AWS Azure GCP
Amazon CloudWatch Azure Monitor
Log Analytics
Cloud Monitoring
Cloud Logging
Cloud Trace
Error Reporting
Cloud Debugger

AWSのCloudWatchは統合的な監視ソリューションです。インフラストラクチャ全体におけるリソースやパフォーマンス、ログを分析することが可能です。また、Push型で監視を行うため、監視対象が増えても安心です。Azure Monitorではパフォーマンスやリソース監視はもちろん、ネットワークの監視を行うことができるのが特徴です。また、GCPのCloud Monitoringは複数の監視サービスと統合されており、インシデント、グラフ、トレース、エラー、ログを一元的に管理し、迅速に問題解決を行うことができます。また、BigQueryとの連携によりすぐに分析を行うことが可能です。

環境構築自動化

AWS Azure GCP
AWS CloudFormation Azure Building Blocks Cloud Deployment Manager

テンプレートを元に、リソースの環境構築を自動化するサービスであり、Infrastructure as Codeとも呼ばれる領域です。GCPではYAML、JSON形式に加えてJinjaやPythonによりテンプレートを記述することが可能です。

構成管理

AWS Azure GCP
AWS Config Azure Portal Cloud Security Scanner
Cloud IAM

セキュリティ

セキュリティ
セキュリティ機能は本番環境をデプロイする上で非常に重要となります。様々なレイヤーがあるセキュリティですが、いくつかのカテゴリーに分類して考慮していきます。

権限管理

AWS Azure GCP
AWS Identity and Access Management Azure Active Directory Cloud IAM

クラウドの権限管理ではIAMがよく利用されます。サービスやAPIごとにアクセス権限の設定を行い、各リソースに対しての認証や認可を行います。AzureはAzure Active Directoryにより同等の機能を提供しており、オンプレミスのADとの連携を実現することができます。

SSL証明書

AWS Azure GCP
AWS Certificate Manager App Service Cloud Load Balancing

証明書管理のソリューションです。AWSではACM(AWS Certificate Manager)と連携可能なサービスに対して無料でSSL証明書を払い出し、統合的に管理することができます。プライベートCAを利用する場合には別途料金が必要です。また、AzureではApp Service、GCPではCloud Load Blancingでマネージドの証明書サービスを利用することができますが、有効期限の監視や自動更新など管理機能が利用できるACMが機能的には優れていると言えます。

鍵管理

AWS Azure GCP
AWS Key Management Service
AWS CloudHSM
Azure Key Vault Cloud Key Management Service

暗号鍵の一元的な管理ツールです。いずれのサービスもマネージドのHSMとの連携が可能であり、運用に手間をかけることなくセキュリティを向上させることが可能です。

ネットワークセキュリティ

AWS Azure GCP
Security Group
ネットワークACL
AWS Firewall Manager
AWS Shield
AWS WAF
Azure Firewall
Azure Firewall Manager
Azure DDoS Protection
Azure WAF
Firewall Rule
Cloud Armor

ネットワークセキュリティサービスです。各社ともVPC機能に付随したネイティブのファイアウォールを利用することができます。その上でDDoS防御や、WAFの機能が利用可能です。WAFに関してはどのサービスでもマネージドルールセットの利用だけでなく、ルールのカスタマイズも可能です。AWS ShieldにはStandardとAdvancedの2種類のオプションがあり、Advancedでは24×365で連絡可能なDDoS Response Teamによるサポートを利用することができます。

その他の主要なサービス

最後に、各クラウドベンダーが力を入れているサービスをまとめて比較します。

機械学習

AWS Azure GCP
Amazon Lex
Amazon Comprehend
Amazon Polly
Amazon Recognition
Amazon Recognition Video
Amazon Machine Learning
LUIS
Azure Bot Service
Azure Speech Recognition API
Bing Speech API
Emotion API
Face API
Computer Vision API
Azure Machine Learning
Natural Language API
Cloud Text-to-Speech
Translation API
Speech API
Vision API
Cloud Video Intelligence
Cloud Machine Learning Services

AIや機械学習の分野です。各クラウドサービスとも非常に力を入れており、自然言語処理や画像解析、翻訳など、多くのサービスを提供しています。

IoT

AWS Azure GCP
AWS IoT Platform
AWS IoT Button
Azure IoT Platform
Azure Sphere
Google Cloud IoT

IoTのサービスとして、各社ともデータを収集する基盤であるプラットフォームを提供しています。AWSに関してはAWS IoT Buttonという物理的なデバイスを提供しており、IoTデバイスとしてソリューションに組み込むことが可能です。また、Azure Sphereはハードウェア、OS、クラウドの面からセキュアなIoT環境を構築する事のできるソリューションです。チップやOSはパートナーと提携することで実現しています。

モバイル

AWS Azure GCP
AWS Mobile Hub Azure Mobile Apps Firebase

各社ともモバイルアプリケーションを作成するサービスを提供しています。開発、テストから本番運用に至るまで一貫して管理することができ、迅速にアプリケーション環境を作成することが可能です。

まとめ

この記事では3大クラウドと呼ばれているAmazon Web Services、Microsoft Azure、Google Cloud Platformの3つのクラウドが提供している機能を分類し、その特徴をご紹介しました。上記に記載の通りいずれのクラウドベンダーでも同等の機能を提供していますが、連携するサービスや利用できる環境などに違いがあります。それぞれの違いを捉えて要件に合致するクラウドを選択するようにしましょう。

また、可用性やオープン性を考慮した場合、1つのクラウドだけを利用するのではなく、複数のクラウドを利用することでマルチクラウドとして活用することが最善の選択である場合もあります。既存環境にクラウドを適用する場合には、最適な構成の全体アーキテクチャをあらかじめ検討した上でサービスを選択することが必要となります。



弊社トップゲートでは、 GCP 、または G Suite 導入をご検討をされているお客様へ「Google Meet で無料個別相談会」を実施いたします。導入前に懸念点を解決したい方、そもそも導入した方がいいのかをお聞きしたい方はお気軽にお申し込みください!

お申込みはこちら

記事を探す

GCP のメリットを最大限に活用しよう!

GCP・G Suite のご相談・
お見積り依頼はお気軽に
TEL.03-5840-8815
お問合せフォーム TEL.03-5840-8815