AWSについて解説します。AWSを使いこなせるようになると素早くプロダクトを開発できスモールスタートで試すことができます。今回はそんなAWSのメリットや学習方法について詳しく解説していきます。
なお本記事は、TechAcademyの法人向けIT・プログラミング研修での実績をもとに紹介しています。
今回は、ツール系に関する内容だね!
どういう内容でしょうか?
AWSについて詳しく説明していくね!
お願いします!
目次
AWSとは
AWS(Amazon Web Services)とはAmazon社の提供するクラウドサービスです。ストレージサービス(S3)やVM(EC2)から出発し、後述するような多様なサービスを提供する、IaaS, PaaS, SaaS環境となっています。
AWSを利用するメリット・デメリット
従来、企業がITシステムを利用したり提供したりする場合には、ハードウェアやソフトウェアを購入してデータセンタに設置し、その後の運用も自社で行うのが一般的でした。この形態を「オンプレミス」と呼びます。
一方、AWSを含む「クラウドサービス」では、自社でこういった資産を保有しません。代わりに、サービス提供者が必要なハードウェアやソフトウェアを用意し、サービス利用者は料金を支払ってそれらを使います。
オンプレミスと比較し、クラウドサービスには以下のようなメリットとデメリットがあります。
メリット
- 手軽に利用を始められる
必要なハードウェアやソフトウェアはサービス提供者側が用意済です。サービス利用の契約さえ済めば、すぐに(たいていは数日間で、早ければ即時に)サービスを利用できます。 - 初期費用が安い
サービスによりますが、クラウドサービスでは初期費用が安く、スモールスタートや試行利用の容易な価格設定になっています。オンプレミスではハードウェアの購入費用やソフトウェアの導入作業費用など、多額の初期費用を伴います。 - 運用をサービス提供者に任せられる
オンプレミスでは定期的な保守や、機器故障の対応などを全て自社で行わなければなりません。クラウドサービスではサービス提供者がこれら作業を行うため、サービス利用者は意識する必要がありません。
デメリット
- カスタマイズに制約がある
費用や技術力は必要ですが、オンプレミスのシステムは自由にカスタマイズできます。一方、クラウドサービスはカスタマイズできる範囲に制約があります。利用者に特殊な要件がある場合、クラウドサービスでは達成できないかもしれません。 - 維持費用が高い
オンプレミスでは機器は買い切りです(電気代や運用費用はかかります)が、クラウドサービスは利用している限り利用料金を伴います。機器構成や利用期間にもよりますが、合計費用(初期費用+維持費用)を比べると、クラウドサービスの方が高くなる場合もあります。
AWSの代表的なサービス
次にAWSで使える代表的なサービスを紹介していきます。
- Amazon EC2
- Amazon Simple Storage Service (S3)
- Amazon Aurora
- Amazon DynamoDB
- Amazon Lambda
- Amazon VPC
- Amazon SageMaker
それぞれ詳しく解説していきます。
Amazon EC2
WindowsやLinuxなどのVM(仮想マシン)を稼動させられるサービスです。用途や予算に応じて様々なスペックのVMを選択できます。VMに接続するネットワークも柔軟に構成できるので、あらゆる用途に使えます。以下に例をあげます。
- オンプレミスのシステムをそのままクラウドサービスに移行する場合の移行先
- 短期間の開発プロジェクトで、試験用のサーバがすぐに必要な場合
- 災害対策として世界各地にサーバを分散配置させられる
Amazon Simple Storage Service (S3)
ストレージサービスで、99.999999999%というきわめて高い可用性を特徴にしています。AWS上で動作するアプリケーションのデータ保管先、オンプレミスのシステムのデータバックアップ先などで使用されます。
変わった用法として、静的なWebページ(HTMLファイル)をホストするのにも使えます。
Amazon Aurora
MySQL, PostgreSQLと互換性のある、クラウド型SQLデータベースです。データベースの初期構築、設定、バックアップなどが自動化されているので、利用者はテーブル作成やレコード読み書きなど、データベースの本質的な操作に注力できます。
オンプレミスのMySQLやPostgreSQLをクラウドに移行したい場合の有力な選択肢となります。
Amazon DynamoDB
AuroraがSQLデータベースなのに対し、DynamoDBはクラウド型NoSQLデータベースです。スケーラビリティにすぐれ、高性能(低遅延)を保ちながら、データベースをスケールアウトできます。
ECサイトやオンラインゲームなど、トランザクションが多数並走する環境での採用事例が多々あります。
Amazon Lambda
「サーバレス」アーキテクチャの普及するきっかけとなったサービスです。利用者はJava, Python, Node.jsなどでコードを記述し、Lambdaにアップロードします。所定のイベントが発生すると、コードが実行されます。利用者はサーバの存在や台数を意識する必要なく、しかも負荷に応じて自動的にスケールアウトします。
映像データのリアルタイム変換や、APIリクエストの処理などで利用されています。
Amazon VPC
Virtual Private Cloudの略で、しばしば前述のEC2と組み合わせて使われます。AWS内のネットワークを論理的に分離でき、相互にルーティングやアクセス制御を設定できます。
Amazon SageMaker
機械学習のサービスで、モデルの構築、訓練、デプロイなどを簡略化します。様々な機械学習アルゴリズムを選択でき、モデルのチューニングも自動化されています。
AWSと他のサービスとの違い
AWSはしばしばMicrosoft Azure(Microsoft社のクラウドサービス)と比較されます。AWSとAzureは相互に影響しているので、サービス構成には似通った部分が多いです(片方があるサービスを追加すると、もう片方もそれに追随する)。
AWSは大手クラウドサービスの中では最も歴史が長く、運用実績、導入実績が豊富です。新規サービスの追加、既存サービスの改善も頻繁に行われていて、先進的な技術や環境を試したい場合に有力な選択肢となります。
AWSの学習方法
では最後に学習方法について詳しく解説していきます。
書籍を使った学習
日本語の書籍も豊富ですが、クラウドサービスは進歩が早く、書籍の内容が最新のサービスに追いついていないことがあります。書籍と公式Webサイトのリファレンスを併用すると確実です。
- クラウドエンジニア養成読本
Software Design誌の別冊ですが、クラウドサービスの使い方についてよく整理されています。AWSだけでなく、Azure, GCP(Google Cloud Platform)についても触れられているため、主要なクラウドサービスを網羅できます。 - Amazon Web Services実践入門
AWSの各種サービスを利用する手順や運用管理のポイントがまとめられています。AWSは従量課金ですが、コストを抑えるための工夫も記述されていて、実際の業務に活用できる内容です。
勉強会やセミナーでの学習
- AWSのイベント
Amazon社がAWSに関連するセミナー、イベントを定期的に開催しています。 - conpass IT勉強会カレンダー
IT関連の勉強会がまとめられています。興味のある分野を登録しておくと、関連する勉強会の通知を受けられます。 - TECH PLAY
同じくIT関連の勉強会がまとめられています。 - ストリートアカデミー
講師と生徒のマッチングサービスです。ITに限らず、趣味、スポーツ、教養など、多様な分野の講座が登録されています。
監修してくれたメンター
橋本紘希 システムインテグレータ企業勤務のシステムエンジニア。 開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、従来の講義型研修とは違い、実務を想定したカリキュラムで実践的スキルを短期間で確実に身につけられる法人向けオンラインIT・プログラミング研修を展開しています。
1名〜数百名規模・業界を問わず、500社以上の企業様の研修を実施しています。 受講生一人ひとりに現役エンジニアのメンターが付き、皆様のニーズにあったサポートを行います。学習時の「わからない」を確実に解消いたします。