AWSは、クラウドで環境構築=AWSといっても過言ではないほど普及しています。これからはクラウドだ!という表現ももはや古くなりました。転職の際にAWSの知識や技術が有利になるのも、気になりますね。一念発起してAWSの勉強をするか!と意気込んでも・・・AWSの守備範囲が広すぎて、何から手をつけてよいのか分かりませんよね。
そこで本記事では、これからAWSの学習をしようという方に向けて、勉強のポイントを解説します。
AWSを勉強する際のポイント
とにかく最初はEC2とS3
まず、この2サービスを押さえましょう。理由は、これらのサービスは単独のサービスかつシンプルだからです。
EC2の学習における達成ポイントはサーバーを立ち上げて接続するというシンプルなものなので、問題が発生したときのトラブルシューティングは比較的容易です。またEC2はネット上の情報量はとても多く、それもトラブルシューティングを容易にしています。S3も同様です。
バケット(いわゆるS3でいうフォルダ)にファイルをアップロードできれば学習目標の達成です。S3はとても簡単に試せるサービスです。他のサービスとの連携はほぼありません。
よって、この2つのサービスからAWSに入るのは王道といえるでしょう。
逆に、AWS Cloudwatchはどうでしょうか。監視サービスであるAWS Cloudwatchは、他のサービスと連携して初めて真価が発揮されるものです。DNSサービスであるAWS Route53は、サービス外(ドメインの購入など)の作業が必要なので、うまくいかなかったとしてもAWSの作業に問題があるのか、それ以外の問題なのか判断が難しいのです。
いきなりすべてを理解しようとしない
AWSのサービスは2018年8月現在で100以上あります。
それらをすべて理解して初めてAWSを習得しましたと言ってよい、というわけではないのです。AWSは、ITの時代の流れに追従して、今なおサービスを追加し続けています。今も増え続けているのです。よって、すべてを理解しようとするのは無理があります。
むしろ基本を理解して、新サービスが追加されても最小限の努力で習得できるだけの応用力をつける方がよいのです。
例えば、以下のような学習パスが考えられます。
- EC2やS3でAWSマネジメントコンソールに慣れる
- RDSでデータベース
- VPCとRoute53でネットワーク
- IAMやCloudWatchで管理機能
このように、基本から積み上げていきましょう。これらの基本がしっかりしてくると、上に何を積み上げても大丈夫!
AWS EMRやAWS DynamoDB、AWS Redshiftのようなビッグデータ系のサービスを勉強するのもよいでしょう。
AWS Rambda(ラムダ)を駆使してサーバーレスにチャレンジするのもよいです。自分の作ったRubyやPHPアプリをデプロイしてみるのアリですね。その他、IoTや機械学習、ゲームといった分野に着手するのイマドキで面白そうですね。それらすべて、基本がしっかりしてから積み上げた方が、あとになって応用が利きます。
AWSの製品知識に特化してはいけない
クラウドとは何かをもう一度振り返りましょう。
クラウドはあくまで、オンプレミス(ハードウェアすべてを自前で調達、敷設、運用する形態)の発展形です。つまり、技術的ベースはクラウドもオンプレミスも一緒なのです。
IPアドレスとは何ですか?ドメイン名からIPアドレスの名前解決とは何を意味しますか?サーバー接続するときのSSHキーって何ですか?そういったAWSの知識レイヤのさらに下の知識はとても大事なのです。
AWS上で○○に関するトラブルが起こったから、どのサービスのどのチェックボックスをオンにする、そういったいわゆるAWSの製品知識や作業手順ばかりを気にしてはいけません。AWSマネジメントコンソール上のチェックボックス1つをとっても、それが何なのかを探求するようにしてください。
AWS独特の言い回しに慣れる
AWSの公式ホームページ上の解説は、初めての人には難解なものが多いです。独特な言い回しに徐々に慣れていきましょう。製品の概要説明において、ひんぱんに出てくる語句に目を慣らすだけでも苦労の度合いが全然ちがいます。
<フルマネージド>
サーバーリソースなどなど、サービス外のことは一切気にしなくてよい。
<プロビジョニング>
各種リソースの必要量を予測し、提供できること。またはその事前準備。
<ワークロード>
作業量、作業負荷。
<レイテンシー>
処理を完了するまでの時間遅延。
<デプロイ>
ソースコード等々を稼働環境へセットし、動ける状態にする。
などなどです。サービスの概要説明はだいたい同じような言い回しなので、分からない単語が出てきたら面倒がらずググって、自分のボキャブラリに追加するのが大事です。それを繰り返すうちに、難解な説明も理解できるようになります。
余談ですが、明らかに翻訳上の誤りもあります。AWS SESの説明の一節です。
一般的なワンサイズフィッツオールのEメールでは、パーソナライズされたEメールよりもエンゲージメント率が低くなります。
そもそも何を言っているのかよく分からない上に、ワンサイズフィッツオール(One size fits all)というのは、和製英語でいうフリーサイズのこと。そのままカタカナにするのは誤りです。
上記の日本語を翻訳(!)してみると、以下のようになります。
メールを受け取る人は、多くの受信者に当てはまる最大公約数的なメールより、その人個人に由来する内容を含むメールの方に高い関心を持つのです。
あまり細かい説明の言い回しを追求せず、時にはざっくりと読むことも必要です。
おすすめAWS入門書5選
AWSを学ぶにあたって、おススメな入門書5冊をご紹介します。
Amazon Web Services 基礎からのネットワーク&サーバー構築 改訂版
今はすでにAWSを退社された有名人の玉川憲さんと片山暁雄さんが名前を連ねる名著です。
サーバーとは、TCP/IPとは、といった基本的な話にまで踏み込んでいるのが魅力です。
Amazon Web Services パターン別構築・運用ガイド 改訂第2版
実際にWebシステムを立ち上げるまでを、運用体制まで踏まえて解説しています。
実務的ですがちょっとレベル高め。
Amazon Web Servicesではじめる新米プログラマのためのクラウド超入門
そもそもクラウドとは何か、SaasやPaasとは何か、といった基本まで踏み込んだ一冊。
Amazon Web Services実践入門
表紙の「柔軟な開発を可能にするインフラ構築・運用の勘所」という宣伝文句に恥じない内容。
ただし、出版が2015年と若干古いので、最新情報との比較が必要。
合格対策 AWS認定ソリューションアーキテクト
転職活動にてAWSの知識や技術をアピールしたい人にオススメです。
また資格を目指さない人でも、体系的に学習したい人にもどうぞ。
AWS入門が勉強できるサービス3選
Schoo(スクー)
オンライン学習の老舗。AWS以外にもコースのバラエティが豊富です。
ドットインストール
こちらも老舗です。AWSのコースは正直言って深掘り度合いが足りませんが、ファーストステップとしてはいい感じです。
paiza
かわいいキャラクターが特徴です。この会社のブログpaiza開発日誌(アニメネタが多いですが)でもたまに役立つ技術ネタがありますので要チェックです。
まとめ
AWSの学習方法、イメージが湧きましたか?AWSはサービス追加がひんぱんに行われていますが、基本を身につけてしまえばあとはラクです。ファーストステップは高いながら、それを乗り越えるメリットは十分にありますので、がんばってくださいね!