BLOG ブログ

エンジニアブログ

2017.04.25

Amazon Web Services 実践入門1に参加した感想

こんにちは。
入社3か月目のエンジニアのキムです。

本日はAmazon Web Services 実践入門1 ~一日で学ぶ、AWSクラウド活用~に参加した感想を共有いたします!

この勉強会に参加しようと決めた理由は?

自分の分野だけではなく、周りの分野の知識を持っている人材という意味の「T字人材」という言葉があります。
私と言えば、T字どころか何の字も書けないぐらい、自分の分野の知識も周りの分野の知識も足りない新米プログラマーなので、T字エンジニアを目指すためには今主にしているコーディング以外の知識も持つべきだと思ってました。
特にサーバについては大学時代に学んだこともあり、AWSの本を読んでAWSでサーバを立ち上げてみたこともあって、「いつかサーバ関連の勉強会に参加して知識の幅を広げたいなー」と思ったのが、今回勉強会の参加のきっかけです。

勉強会の内容

【各機能の概念の説明 → ハンズオン】のような流れで、細かく教えてもらいました。
ハンズオンは、前に学んだ機能を含める感じで、最後の機能を学ぶ際は前に学んだ機能をすべて活かすことができました。
理解できなかった内容が実習の繰り返しで使い方に慣れて理解できるという素敵な流れでした。
では、今回の勉強会で学んだ内容について共有させていただきます。

AWSとは

AWSで提供しているサービスがたくさんありまして一言でいうのは難しいですが、主なサービスで説明しますと、Webを支えるインフラ技術を提供する「クラウドコンピューティング」だといえます。

AWSには下記のような利点があります。

・ 簡単に借りれる
クリック数回だけでサーバを借りることができます。

・ 世界中のリージョンからサーバを立ち上げることができる
簡単にシステムの構築ができるので、日本にいながら海外へのサービスの展開にも対応しやすくなります。

・ 同様なサーバを何回もコピーして作れる
サーバの設定やデータなどをAMIというもので保存することができ、AMIから新しくEC2を作ることができます。

・ 数や量の変更が簡単にできる
借りるサーバ数やその性能の変更がいつでも簡単にできます。

使う期間だけお金を払って、使わない期間はいつでも消せるというのはすごいメリットだと思います。
ただし、使う分料金が発生するので負担になるし、無料のバージョンも使える機能が制限されているので
勉強のためにAWSを使うのはちょっと難しいかなと思いました。

EC2

EC2は、簡単に説明しますとAWSで借りれる「仮想サーバ」です。
いつでもほしいOSでサーバを立ち上げることができます!

EC2の起動のためにはキーペアとセキュリティーグループを作成する作業が必要です。

■ キーペアとは?
・インスタンスへログインするのに利用する公開鍵・秘密鍵のペアのこと
・リージョンごとに独立
・秘密鍵は再発行できない
・秘密鍵を紛失すると、既存のAMAZON EC2インスタンスにログインできない
・管理しないと、不正ログインができる

■ セキュリティーグループとは?
・インスタンスへトラフィックを制限するステートフルなファイアウォール機能
・インスタンスの用度に応じたセキュリティクループを用意
・アクセス元を指定して制限
・アクセス元にセキュリティグループも設定可能

キーペアとセキュリティークループを作成してからEC2インスタンスを生成して起動して、
Wordpressサーバとその他のコンポネントをsshを通じてインストールし、自分のブログを作成してみるような実習を行いました。

AMI

AMIを利用して、1台のEC2に入れた設定とデータを複数台に同じように設定することができます。
EC2に設定したデータなどをイメージとして管理し、同様の設定の新しいEC2が必要の場合、AMIを使うことで簡単に作られます。

同じ設定であればサーバを何回も作れるというのはAWSの魅力的なところだと思います。
私はAMIをCDを焼くことと同じだと思いました。
「一つのCDにデータを入れたら、何枚のCDでも焼ける = 1台のEC2の設定をAMIで焼いて、何個のEC2も作成できる」と思ったら理解しやすかったです。

S3

S3はインターネット経由で利用できるストレージサービスです。
S3画像のような頻繁にアクセスしないファイルや消えてほしくないファイルを保存するのに利用するそうです。

S3の特性は、堅牢度が高いということです。
その堅牢度がなんと99.999999999%(イレブンナイン)ぐらいで、
地理的に離れた3箇所以上のデータセンターを保持し、
2箇所のデータセンターで同時にデータロストが発生しても耐えられるほどの耐久性があるそうです。
その他にもWeb公開機能があり、Webサイト機能をonにするだけで、画像ファイルやWebサイトを公開できるらしいです。

勉強会ではEC2の負荷を減らすために、ブログにアップロードする画像をS3にアップして保管することを実習として学びました。
このハンズオンではS3の堅牢度が実感できる学びはできませんでしたが、S3にイメージなどを補完するのはEC2の負荷を減らす方法の一つという学びはできました。

RDS

RDSと従来のデータベースとの違いを言いますと、設計や設定に時間がかからないということです。
サイズもいつでも簡単に変更できて、使いやすいです。
AWSのRDSではデータベースエンジンとしてAmazon Aurora、MySQL、MariaDB、Oracle、SQL Server、PostgreSQLを提供しています。

勉強会ではEC2とRDSを用意し、処理を分散するような利用方法を学びました。

ELB

サーバに負荷が発生した場合、サーバが1台だけだったら止まってしまう可能性があります。
こういう場合は、ELBを使って複数のサーバを用意しておくと負荷が発生した場合、ダウンしないように負荷を分散することができます。

勉強会ではELBを作成して、この前のAMIの実習で保管したイメージを使って新しくEC2インスタンスを作成し、ELBのヘルスチェックをする方法や設定方法などを学びました。

終わりに

今回の勉強の参加をきっかけに、AWSの基本的な概念と使い方が分かりました。
AWSの機能の使い方や概念のまとめなどはネット上にもあふれるほどの情報がありますが、何が正しい使い方か、もっと効率的に使える方法はないかなどは、この勉強会に参加してからやっとわかったと思います。
AWSについてはこれからも勉強会に参加したり本を読んだりしながら学びを続ける予定です!

AWSの初心者でも勉強会の内容をうまく追えるぐらい内容の敷居は低いですので、
「他の勉強会の内容が難しそう」、「内容に追いつけなさそう」のようなことを心配している方は、この勉強会に参加してみることをお勧めします!

では、次のブログをお楽しみにしてください!

  • Happi+ 「ハピタス」とは?