【エンジニア・AWS初心者向け】AWSでできることを目的別にまとめてみた
AWSは、クラウドサービス(IaaS)の中で最もサービスバリエーションの多いプラットフォームだ。ところが、サービスのバリエーションが多すぎて、どのようにしたらよいかがわからないケースが多いだろう。
今回は、目的別AWS利用法について簡単にお伝えする。
目的別AWS利用法
レンタルサーバーの様な仮想サーバーをたてたい
主に利用するサービスは以下の3つだ。
- Amazon EC2(仮想内の仮想サーバー)
- VPC(独立したクラウドリソース)
- Route53(スケーラブルなDNSとドメインネーム登録)
AmazonEC2は、仮想サーバー(インスタンス)を構築するサービスで、WindowsやLinuxといったOSを選択すれば、すぐに空の仮想サーバーを構築できる。
CPUやメモリは、インスタンスの種類で固定となっているが、HDDの容量は種類は、ある程度自由に決めることができる。
また、VPCを併せて利用することで、AWS内ネットワークのセグメント分離や固定IPの管理・紐づけを行うことも可能だ。
さらに、Route53というサービスでドメイン登録やゾーン管理を行うこともできる。
WordPressやMagento、Redmineをスピーディに構築したい
主に利用するのは、以下のサービスだ。
- Amazon LightSail
Amazon LightSailは、AmazonEC2とVPCがセットになったサービスで、簡単にアプリケーションがインストールされたインスタンスを構築できる。
ある程度アプリケーションがバンドルされたインスタンスを生成してくれるので、サーバー側の設定を変更しなくても利用できる。
ところが、FTPサーバーがデフォルトでインストールされていない等、制約も多くあるので、システムを作り込みたい場合は、導入は難しいだろう。
Webサイトを高速化したい
Webサイトを高速化する際、主に利用するのは以下のサービスだ。
- Amazon CloudFlont
Amazon CloudFlontは、AWS内外のコンテンツ配信を最適化する仕組みだ。
外部のサイトのCDN(コンテンツデリバリーネットワーク)として活用することができるので、サイトレスポンスを高速化したい場合に非常に重宝する。さらに、AWS内のネットワークだけでなく、外部のサイトに対しても適用できるので、非常に使いやすいサービスの1つだ。
参考:CDNとは?
高速なデータベースを構築したい
高速なデータベースを構築するには、以下のサービスを利用する。
- Amazon RDS
- Amazon Aurora
- Amazon Redshift
Amazon RDSは、所謂データベース専用のインスタンスを構築するサービスだ。DBのスペックとDBのソフトウェア、そのバージョンを選択するだけで、簡単にデータベースを構築できる。
また、Amazon AuroraはRDSをさらに高速化したインスタンスを構築することができる。
一方、Amazon Redshiftは、PostgreSQLをベースとした列指向に特化したビックデータ基盤向けデータベースだ。列指向データベースの特性上、データウェアハウスを構築するのに適したサービスとなっている。
ソースコード管理環境(GitHub)と、自動ビルド環境を簡単に構築したい
システム開発を行っていると、ソースコードのリポジトリ管理が必要になるケースが多々ある。また、継続的インテグレーション(CI)を合わせて必要になるケースもある。
その場合に有益なサービスは、以下の2つだ。
- CodeCommit
- CodeStar
CodeCommitは、所謂プライベートGitだ。Gitの仕組みはここでは割愛するが、Gitリポジトリを簡単にAWS上に構築できる。Redmine等チケット管理システムと連携できるので、非常に使い勝手が良い。
一方CodeStarは、CodeCommitでコミットしたソースコードを、自動ビルドにより特定の環境にデプロイ(反映)させるサービスだ。PHP(Laravel)やASP.NET Core(C#)といったWeb系フレームワークをベースとしたアプリケーションキットをプリセットで用意されているので、サーバーサイドの設定をほとんど意識することなく、開発に注力することができる。
社内用の大容量ストレージを構築したい
大容量ストレージを構築したい場合は、以下でのサービスを利用する。
- Amazon S3
Amazon S3は、保存容量、トラフィックによって課金されるコストそれぞれが非常に安いため、構築と運用コストを従来のストレージサーバーと比べてかなり抑えることができる。
さらに、保存時のバックアップ設定やアクセス権限設定等を柔軟に行えるのも強みだ。
加えて、NFSマウントやCIFSマウント等、様々な接続方法でアクセスできるので、接続元の機種やOSに依存しない強みもある。
但し、注意点として、Google DriveやOne Drive、iCloudと比べて、オフラインでは接続できないので、従来のNASと同じく、オフライン時はローカルで作業を行う必要がある。
拡張現実 (AR) とバーチャルリアリティ (VR)
仮想現実やバーチャルリアリティを構築するには、以下のサービスを利用する。
- Amazon Sumerian
Amazon Sumerianは、Unity3Dのクラウド版の様なイメージだ。
このように、AWSコンソール上で3Dのアセットをセットしたり、編集することが可能だ。
従来は、Unity3DベースでAR、VRの開発を行うには、ハイパフォーマンスのPCとAPIの実装が必要になっていたが、それをAWSである程度吸収してくれるので、より開発効率が上がるようになっている。
コールセンターを構築したい
AWSには、コールセンターを構築することも可能だ。それには、以下のサービスを利用する。
- Amazon Connect
- Amazon Polly
Amazon Connectは、コールセンターを構築可能なサービスだ。受信用電話番号の取得や、問い合わせフローの設定、自動応答音声の設定等、コールセンターを構築するのに必要なリソースがそろっている。それだけではなく、お問い合わせ内容を録音してAmazon S3に保存したり、問い合わせ元の電話番号をCRMに照会したりと、より幅広い顧客戦略を実現可能な機能が備わっている。
さらに、Amazon Pollyと言われるテキストの音声読み上げツールを使えば、わざわざコールスクリプト用音声を用意しなくても、簡単に音声データを作ることが可能だ。
参考:コールセンターを簡単に構築!?Amazon Connectの凄さをご紹介!
最後に
AWSは、数あるクラウドサービスの中でも最も機能が多いサービスだ。AWSのアカウントを1つ作っておけば、ITにおいて幅広いビジネスを展開できるだろう。
より、AWSに興味のある方は、以下の記事が参考にしていただくことをおすすめする。
【AWSに興味がある人向け】AWSの活用方法と事例
【初心者向け】WordPressを構築するのにおすすめなレンタルサーバーとAmazon LightSailの紹介(2019年版)