AWSとは
私が所属する会社は正直言って規模が小さくSESを主な事業としている会社です。
なので、「バリバリ即戦力です!」という採用はまず、ほぼないです。
オンプレやクラウド環境を触っていましたという人材が来ても、実態は運用をしていましたという人。
さらに、運用をしていたといっても、アラートが上がったら手順書に沿って報告や対応をしていたという、オペレーターに近いくらいの人がいるくらいです。
その他は、他業種からの未経験(MicrosoftOfficeは少々触ってました)、アプリでJavaのテストをしていましたという人がほとんどです。
なので、AWSを触ってましたと言っても、運用の作業で構築済みのシステムの状態を見るためにコンソールを操作したや、アプリ開発でわけがわからずちょっと触ったことがありますというレベル感です。
そういった人に、AWSとは?という点を理解して、一人前に設計や構築ができるよう日々奮闘しています。
そのノウハウがある程度たまり、新人が何に躓くのか多少わかったので、まとめたいと思います。
まず、何をしてもらっているか
SESという特性上、顧客がAWS環境でシステムを作りたい!!
そういった要望を叶えるのが我々SESの役割になります。
なので、要件はあるものの、そこから基本設計、詳細設計や、構築、テストという点を担当することが多くなります。
そのため、新人にはたいてい私が構築した環境をテストしてもらうフェーズから入ってもらい、AWSのコンソールに慣れるということから作業を開始してもらっています。
で、その次のフェーズとして、構築し、AWSの理解を進めてもらい、詳細設計に入ってもらうよう指導しています。
単体テストと、構築という点は直感的にできることが多いのですが、やはり詳細設計のタイミングで躓く人が多いです。

ネットで調べたり書籍で学習すればよくない?
躓くのであれば調べて学習すればよいですよね。
最近では、YouTubeで解説している人も多くいるようです。
ただ、世の中にある大量の記事や書籍は、現場の新人に教えるという観点で書かれていないことが多いです。
なぜそう思うかというと、新人がそういった学習をしても、よくわからないですということが多いからです。
世の中にあるものは、概念やコンサル、AWSを導入するメリットデメリット、こういうことをしたいのであれば、こうした方がよいという観点が多いように感じています。
ただ、現場で必要となるのは、顧客が望み、上長から指示を受けて作業したり、その指示内容を理解して作業するという点が求められます。
顧客が望むことを叶えるという目的に対して、自分がこうしたいみたいなことを入れてしまうと困ったことになります。
なので、まずは、指示通り構築ができる、構築から詳細設計にステップアップするため、依頼通り作業ができる。
そうなるために最低限理解しておきたいことをわかりやすく例えを交えて解説しようと思います。
まず概念の理解
EC2を3台作ってください
といった依頼があったとします。
それぞれ、サーバには役割がありますが、どういったサーバなのかという点はいったん置いておきます。
AWSにおいて、サーバというと、EC2となります。
EC2を作るためにはサブネットが必要になり、サブネットを作るためにはVPCが必要になります。
※もっと言うと、そもそもAWSアカウントがあり、IAMユーザがあり、AWSコンソールにアクセスできる必要がありますが、そこはあるものとして考えます。
この、概念が割と理解できず躓く人が多い印象です。
なので、こんな感じで考えてみるとよいです。


わかりますか?
VPCというのは、東京都や神奈川県、埼玉県などの大きな敷地と思ってもらえればよいです。
その、東京の中に、新宿区や渋谷区など土地が分割されているイメージです。
で、その区の中に店や家などがあると考えるとよいです。
どうですか、VPCという土地がないと店は建てられないですよね。
なんとなくイメージできましたでしょうか。
何となく、わかったような・・・?
ピンとこないですかね。
実はここも、もう一つはまりポイントがあります。
先ほどの図では、東京都→新宿区という、感覚として都道府県の方が多く、その中に市区町村があるという感覚はわかると思います。
なので、東京都の中に新宿区と渋谷区があるという感覚はわかりやすいかと思います。
ただ、VPC→サブネットって感覚がつかめないと、大きさという概念がわからなくないですか?
そして、どのように大きさを考えればよいのか。
過去にサブネットや、NWの大きさという点の記事も書いていますので、そちらもご覧ください。
VPC、サブネットの大きさというのはサブネットマスクという値で指定してあげられます。
VPCを「192.168.1.0/24」
サブネットを「192.168.1.0/25」と「192.168.1.128/25」
とすることで、VPCの中に、2つのネットワークを作ることができます。
ま、これだと、東京都に、新宿区と渋谷区しかないことになってしまうんですが。。
サブネットマスクを24(/24)とすると、256個のお店を作れるくらいの土地の規模
サブネットマスクを25(/25)とすると、128個のお店を作れるくらいの土地の規模
という感覚で覚えておけば大丈夫です。

イメージとしてはこんな感じです。
で、新宿区、渋谷区で分けるとこんな感じです。

ネットワークの切り方に関しては、以下の記事でもまとめているので、ぜひ参考にしてみてください。
こんな形で、VPCは東京都、サブネットは新宿区などの区と覚えておいてくれると、イメージしやすいかと思います。
「EC2=店」について
EC2は店といいましたが、VPCとサブネットの上に店ができるという点は理解いただけたかと思います。
店というからには、客や搬入などがあると思います。
と書いたところで、以下の記事を以前書いていたことを思い出しました。
EC2に関しては以下を参考にしていただければと思います。
店には勝手に泥棒が入ってこないよう、セキュリティとして、店員であれば鍵やカードキーを使用して入ってこれるようになっていると思います。
EC2にも同じようにセキュリティグループという誰でも入ってこれるということが起こらないよう、セキュリティの設定があります。
ここがまたややこしい。
概念として、インバウンド、アウトバウンドという概念が出てきます。
ポイントとしては、
・どこから(または、どこに)
・なにで
となります。
インバウンドとは、店に入ってくる方法。
最近では日本に旅行に来る、インバウンドという言葉がよくつかわれると思います。
なので、インバウンドというのはイメージしやすいかと思います。
セキュリティグループのインバウンドは、EC2に、どこから、何を使って入ってこれるのか
を許可する設定を行うものとなります。
PCからEC2に、RDPを使って入ってこれる
という許可設定になります。
店に誰でも入ってこられると困りますよね。
イメージとしては、入り口のドアがついているというイメージになります。
そこに、鍵がついている。
なので、店員であれば、入り口のドアの鍵を開けて入ってこれる
という設定をする感じになります。
逆にアウトバウンドは、店から外に出ていける設定となります。