クラウドプラクティショナー対策：AWSサービスを調べる

AWSクラウドプラクティショナー試験対策をしていますが、やはりサービスの多さには手を焼いております...
Udemyの模擬試験では合格ラインの70％を超えましたが、まだなんとなくで解いていたり、そもそも問題を覚えてしまってたりの部分があります。


AWS初心者向けハンズオンで頻繁に登場したものはなんとなく覚えましたが、登場しなかったものはほとんどAWSの資料、文献でさらっと読んだだけでいまいち把握できてません。
ハンズオン、資料で取りこぼしたAWSサービスについてまとめて調べていきます。

#取りこぼし一覧
模擬試験をやってみて取りこぼしを感じたAWSサービスは以下の通り

- [CloudTrail](#-CloudTrail)
- Elastic Beanstalk
- Trusted Advisor
- AWS Config
- AWS Artifact
- AWS Cost Explorer
- AWS Organizations
- AWS簡易見積もりツール
- TCO計算ツール
- Fargate
- Amazon EMR
- SCP
- コストと使用状況レポート
- コスト配分レポート
- AWSサポート
- ElastiCache
- SMS
- OpsWorks
- AWS Global Accelerator
- Cassandra
- Lightsail
- AWS Cognito

結構あるな...

#各サービスについて
調べつつ、気軽にさわれそうなら多少触ってみる。
目的はクラウドプラクティショナー対策なので1つ1つは軽く済ませる。

##CloudTrail

アカウントのAPIコールを過去90日分記録し、誰がいつ何をしたか記録してくれる。
デフォルトでオンになってて勝手に記録してくれてるらしい。

###触ってみた
証跡を作成、とかいうボタンを発見。S3バケットに保存して90日を超えても保持してくれるらしい。
イベント履歴、から90日分のイベントを表示。
入社が２ヶ月前なので入社後のログ全て見れる、なんか感慨深い。

##Elastic Beanstalk
>AWS Elastic Beanstalk により、開発者は AWS クラウドのアプリケーションを迅速にデプロイし管理することがより簡単になります。開発者は単にそのアプリケーションをアップロードするだけで、Elastic Beanstalk が自動的に容量のプロビジョニング、負荷分散、Auto-Scaling、およびアプリケーション状態モニタリングといったデプロイの詳細を処理します。
https://aws.amazon.com/jp/elasticbeanstalk/faqs/

インフラはAWSがよしなにやってくれるからアプリに集中できる、ってことらしい。
###触ってみた
Create Applicationとかいうボタンを発見、よく分からんまま名前とプラットフォームを設定したら何かを作成し始めた。
黒い画面が出てきて、CloudWatch Alarm、EC2の作成、Auto Scalingの設定とかをしてるっぽい、すごい。
やがてアプリケーションのファイルをアップロードをする画面に遷移。
もしかして片付けが面倒？と思ったが心配ご無用、EC2とかも自動で消してくれてる。便利すぎる。

##Trusted Advisor
コスト最適化、セキュリティ、耐障害性、パフォーマンス、サービスの制限、の5つの観点でアドバイスしてくれるらしい。
使用率の低いEC2があるから勿体無い、S3バケットがグローバルに公開されているから危ない、とか。
AWSサービス全体に対して総合的に浅く広く指摘してくれるかんじかな？

###触ってみた
ダッシュボードに、コスト最適化、セキュリティ、耐障害性、パフォーマンス、サービスの制限のアイコン、全体的にみやすい。
セキュリティ、サービスの制限、以外はサポートプランをアップグレードしないと利用できないぽい。

##AWS Config
"リソースの設定を記録して評価"するらしい。
CloudTrailが「人の行動を記録」するのに対し、こちらは「リソースの変更を記録」して、評価もする。

###触ってみた
ホーム画面に「今すぐ始める」「1-click セットアップ」の2つが、とりあえず1-clickを押してみる。
確認、を押したら勝手にもろもろ作成したのちダッシュボードに遷移。
S3 Bucket、EC2 VPCなどなど各種リソースに「ルール」を追加できるっぽい。
アクセスキーが設定した日数を超えて使用されていないか、VPCのトラフィックが適正であるか、などのルールが用意されていた、自分でも作成できるらしい。

##AWS Artifact
第三者による監査レポートをダウンロードできるらしい。

###触ってみた
レポートの表示、契約の表示がある。
契約の方は4つの契約が確認できる、全部非アクティブの表示。
レポートの方は77のレポートが確認できる、試しに一番上のをダウンロード。
全編英語でよくわからん、教育機関がAWSを利用するときのガイドらしい。

##AWS Cost Explorer
>AWS Cost Explorer の使いやすいインターフェイスでは、AWS のコストと使用量の経時的変化を可視化し、理解しやすい状態で管理できます。
https://aws.amazon.com/jp/aws-cost-management/aws-cost-explorer/

###触ってみた
いつものIAMユーザーでアクセスすると、権限がないと言われてしまった。
ルートユーザーで出直したら今度は、初めての利用だから24時間待てと言われた。

##AWS Organizations
複数のAWSアカウントを一元管理できるらしい、請求も一括にできる。

###触ってみた
組織を作成する、ボタンを発見。
ボタン一発で組織が完成、メール承認を完了するとAWSアカウントの招待が可能になった。
組織の削除は管理アカウントを削除することで行えるらしい、組織の削除もボタン一発。
と思ったら削除できない、組織で作成したアカウントの削除はアカウント作成後7日以降じゃないとだめらしい。

##AWS簡易見積もりツール
SIMPLE MONTHLY CALCULATORというらしい。
毎月の支払い料金を試算できる。

###触ってみた
左側にEC2、S3、CloudFront、RDSなどなどサービス名が並んでいる。
それぞれのサービスごとに使用するリソースを選択できる、試しにEC2のインスタンスを選んでみる。
(関係ないけど400Gbpsのインスタンスを発見、こんなのあるのか、バケモンや...)
適当にぽちぽちして、たっけーって遊べる、楽しい。

##TCO計算ツール
AWS Pricing Calculatorというらしい、物理さーばとの比較を行える。
>AWS 料金計算ツールを使用して AWS のサービスを調べ、AWS を使用するために必要なコストの見積りを作成できます。
https://docs.aws.amazon.com/ja_jp/pricing-calculator/latest/userguide/what-is-pricing-calculator.html

簡易見積もりツールと何が違うのだろう。

###触ってみた
見積もりの作成ボタンを発見。
リージョン、サービスを選択すると見積もりが作成された。
ニーズにあった最低コストの構成を探せたりする、簡易見積もりツールよりもさらに手軽な感じがする。

##Fargate
EC2でコンテナを実行する際の起動タイプの1つだった、サービス名ではない。
EC2でECS使うときにFargateで起動するとコンテナを楽に使えるよ、ということらしい。

##Amazon EMR
Elastic MapReduceの略、大量のデータを効率よく処理するためのサービス。
クラスタを構築して分散処理するから強力、ってことらしい。

##SCP
サービス名ではなく、AWS Organizationの機能の1つ。
>Service Control Policyの頭文字をとったもので、複数のAWSアカウントに対する権限の制御ができる。
>SCP自体は権限を与えるものではなく、「ここまでは許可できる」という境界を設定するもの。
https://qiita.com/mzmz__02/items/8ad282f8e8ef091c8e66

IAMと似ているが、IAMはアカウント内のユーザーに権限を付与するのに対し、SCPはアカウント自体に権限を付与できる境界を示す。

#コストと使用状況レポート
Cost & Usage Reports
請求情報とコスト管理ダッシュボード、からAWS請求レポートをS3に発行できる。

#コスト配分レポート
請求情報とコスト管理ダッシュボード、から詳細な請求レポートをS3に発行できる。

#AWSサポート
>AWS サポートとは、お客様がインフラストラクチャをクラウドで運用できるように技術的な問題に関して支援するものです。お客様は、要件を満たす最適なレベルを選択できます。
https://aws.amazon.com/jp/premiumsupport/faqs/

AWSのアカウントを作った時点でベーシックプランを与えられる。
有料プランは下からデベロッパー、ビジネス、エンタープライズ。


#ElastiCache
>高スループットかつ低レイテンシーなインメモリデータストアからデータを取得して、大量のデータを扱うアプリケーションを構築したり、既存のアプリケーションのパフォーマンスを改善したりすることが可能です。
https://aws.amazon.com/jp/elasticache/

RAMではなくROMに保存する、からデータの出し入れが速いよってことらしい。

###触ってみた
以下の記事を参考に、触ってみる
https://qiita.com/leomaro7/items/f031cfdd7d12d5d5ccc5

名前を適当に設定し、クラスターの作成を行う。
ap-northeast-1のaとcにノードが作成された、とりあえず今回はこれで終わり。


#SMS
AWS Server Migration Serviceの略、仮想マシンをAWSクラウドへの移行を自動化するサービス。
複雑な操作が少ない、ダウンタイムが小さい、なんかが売りらしい。


#OpsWorks
>AWS OpsWorks は、Puppet または Chef を使用して、クラウドエンタープライズでアプリケーションを設定および運用するための設定管理サービスです。
https://docs.aws.amazon.com/ja_jp/opsworks/latest/userguide/welcome.html

PuppetかChefを使って、アプリケーションを動かせる環境一式を自動構築できるらしい。
CloudFormationとElastic Beanstalkの中間の特性、手軽だけど柔軟に変更もきく。


#AWS Global Accelerator
>AWS Global Accelerator は、アマゾン ウェブ サービスのグローバルネットワークインフラを利用して、ユーザーのトラフィックのパフォーマンスを最大 60％ 向上させるネットワーキングサービスです。
https://aws.amazon.com/jp/global-accelerator/

導入するだけでネットワークが低レイテンシーになるらしい。
マルチのオンラインゲーム、通話の品質などに有効。
(もしや、と思ったらまさに導入されてた　https://www.youtube.com/watch?v=ftC1Rpi8mtg&t=164s)

###触ってみた
以下のサイトでどれくらい改善されるのか簡単に把握できる。
https://speedtest.globalaccelerator.aws/#/

遠いリージョンのサーバに対してより効果があることがわかった。


#Cassandra
AWSのサービスの名前ではない
>Apache Cassandra（アパッチ カサンドラ）は、オープンソースの分散データベース管理システムである。
https://ja.wikipedia.org/wiki/Apache_Cassandra

NoSQLデータベース


#Lightsail
>Amazon Lightsailは、AWSが提供しているVPS（Virtual Private Server:仮想プライベートサーバー）サービスです。
https://techblog.nhn-techorus.com/archives/14300

###触ってみた
https://lightsail.aws.amazon.com/ls/webapp/create/instance?region=ap-northeast-1
にアクセス、言語を選択したらロボットのマスコットが出てきた。
適当に設定してインスタンス作成、アイコンと文字がデカくてみやすい、わかりやすい。
Ubuntuを起動、SSHで接続ボタン押すだけ。
インスタンスの削除も簡単、削除のボタンもでかい。


#AWS Cognito
>Amazon Cognito は、ウェブアプリケーションやモバイルアプリケーションの認証、許可、ユーザー管理に対応しています。
https://docs.aws.amazon.com/ja_jp/cognito/latest/developerguide/what-is-amazon-cognito.html

サインインの機能、を簡単に使えるってことらしい。
最近よくみるGoogleアカウントとかサードパーティを通じてのサインインにも対応してる。