介護要因系アラフィフ未経験転職者2年生の…「いとあたらし」です。
当初は慣れない操作等に苦労しましたが、周りの方には面倒見のいい方が多く、いろいろな経験を積むことができ、かなり慣れる事ができました。
業務中の空き時間には自己学習も可能な環境ですので、パソコンの操作や、処理の待ち時間が苦にならない人には、非常にいい職場だと思います。
はじめに
AWSの基本から順を追って学習してゆこうと、こちらの学習から始めてみることにしました。
ハンズオンの内容は、最初から最後までスルーすることなく全て網羅してゆく方向でやってみます。
実際にやってみたところ、ところどころ作業中に初歩的なミスをしており、リカバリーした箇所がありますが、敢えてありのままで作成しました。
このブログでは、修正の上確認まで完了しておりますが、何せ初歩的なミスでしたので、敢えてミスの具体的内容は記載しておりません。
どうしたら直るかを考えてみるのも面白いと思いますので、是非トライしてみてください。
やってみました
[AWS Hands-on for Beginners – 1st Steps]
~ハンズオンはじめの一歩:AWSアカウントの作り方&IAM基本のキ
01 今回のハンズオンの説明+アカウント作成に必要なもの+作成の流れ
・AWSアカウントの作り方とIAMについてのレクチャー
・EC2インスタンスの立ち上げやS3バケットの作成
1.必要なものについて
(1) メールアドレス:登録に必ず必要
→① 基本情報の入力
→② 連絡先情報の入力
(2) クレジットカード(デビッドカードでも良いそうです):支払いに必要です。
→③ お支払い情報の入力
(3) 電話番号:アカウント認証に必要となります。
→④ アカウント認証:SMS or音声による認証
→⑤ サポートプランの選択
※アカウント作成の流れは、以下のAWS公式サイトでも確認できます。

02 アカウントを作成してみる
今回は、ハンズオン動画画面に記載された以下のリンクから実施してみました。(以下の画像のボタンのリンク先です。)

リンクをクリックすると、以下のようなAWSにサインアップの画面が開きます。

今回、新規に登録しますので、メールアドレスとAWSアカウント名を入力します。
入力できたら、[認証コードをEメールアドレスに送信]ボタンをクリックします。

次の画面で、先程登録したEメールアドレスに認証コードを送信したので、認証コードを入力して、Eメールの本人確認を促されます。

登録したメールアドレスに、上のような内容のメールが届きますので、届いてから10分以内に上記検証コードを確認コードとして入力します。

実際に入力して、[認証を完了して次へ]のボタンを押します。

本人確認のための、Eメールアドレス認証が終了したら、ルートユーザーパスワードの入力が必要となります。
※パスワードは8文字以上、大文字・小文字・数字・英数字以外の文字のうち、3種類以上を含めての設定が必須です。

次に、連絡先情報などの必要情報を入力します。
・個人用途か、法人用途か?(今回は練習用アカウントなので個人用途としています。)
・電話番号
・具体的住所及び郵便番号

次に、クレジットカード情報と、請求先住所等の情報を登録します。

電話番号(今回はSMS認証としました。その場合はSMSの受信可能な電話番号が必要です。)
国コードを日本として、セキュリティチェックの文字を入力します。
そこまで完了したら、[SMSを送信する]ボタンを押します。

上のような内容の画面に切り替わりますので、SMSに届いたコードを登録する必要が有ります。

携帯のSMSには、上のような内容のメッセージが着信します。

SMSで送られてきたコードを入力します。
すると、以下の画面が表示されますので、サポートプランを選択します。

AWSの学習用なので、勿論無料のベーシックサポートプランを選択しました。
サインアップを完了すると以下の画面が表示されました。

AWSマネジメントコンソールにお進みくださいを押すと以下の画面となりました。

今から1年間は制限はあるものの…無料で利用できるサービスが発生します。
沢山使わないと勿体ないですね。
開始方法のリソースをクリックすると以下の画面となります。

そして、以下の画面も開きます。

いろいろなAWSを開始する方法についてのレクチャー等へのリンクの画面も表示されます。
今回は、AWSコンソールを使用して構築を始めるを選択します。
すると、以下のAWSコンソールへのサインイン画面が表示されます。

次に、初回サインアップの際に入力したルートユーザーパスワードを入力します。

正しく入力できると、ようやくAWSコンソールのホーム画面に到達できました。

最初には、サービスメニューとコンソール設定の説明が表示されます。


ここまでで、実際にAWSアカウントを作成するハンズオンは終了です。
まぁまぁ、やや面倒な作業だった感じがします。お疲れ様でした。
03 ルートユーザーとIAMユーザーについて学ぶ
1.ルートユーザーとは
ログイン時:メールアドレス+パスワード
全リソースに対して、完全なアクセス権限を持つ
日常的なタスクには使用しないユーザー権限:権限が強すぎるユーザーです。
2.IAM(Identify & Access Management )ユーザーとは
アカウントID+IAMユーザー名+パスワードでログイン
紐づけたIAMポリシー権限で設定した操作のみ可能となります。
日常的に広く使われており、IAMユーザー名でログインする利用者ごとに権限を設定でき、設定された権限の範囲内でIAMユーザーは作業を進める事が可能となります。
今回のハンズオン
ルートユーザー:アカウント作成(02にて済)→管理IAMユーザー作成→ログアウト
管理IAMユーザーでログイン→各IAMユーザー作成と動作確認
ところで…ここで、管理IAMユーザーって、ルートユーザーの権限の違いはどうなっているの?という疑問が生じましたので、調べてみました。
[ルートユーザーのみ可能となるタスク]
・アカウント設定の変更
・IAMユーザーのアクセス許可の更新
・請求情報とコスト管理コンソールへのIAMアクセスをアクティブにする。
・IAMユーザーでは表示できない特定の税金請求書がの表示が可能です。
・AWSアカウントの閉鎖が可能です。
・リザーブドインスタンスマーケットプレイスへの出品者登録が可能です。
・S3バケットに対してMFA(多要素認証:Multi-Factor Authentication)を削除する設定が可能です。
・無効となったVPC IDまたは、VPCエンドポイントIDが含まれたAmazon S3バケットポリシーを編集もしくは削除する事が可能です。
・Amazon GovCloud(顧客とアメリカ政府機関が、コンプライアンスや特定の規制要件に準拠しつつ機密データをクラウドに移行できるように設計されたもの)へのサインアップが可能です。
※IAMユーザーで今回何をするか?
インフラ担当者:管理者用権限を付与するポリシーを割り当てます。
→インスタンス一覧の表示や新しくインスタンスを立てて起動する事が可能。
アプリ開発担当者:EC2の参照のみが可能となるポリシーを割り当てます。
→インスタンス一覧の表示のみしかできません。
アプリ担当者:権限の無いポリシーを付与します。
→ログインのみは可能ですが、参照も含めて何の権限も与えません。
※今回のハンズオンで使用するAWSサービス
Amazon EC2(Elastic Compute Cloud)
→仮想サーバサービス(数分で起動、従量課金)
→需要に応じたインスタンスタイプを選択可能
→必要時に、必要分だけのリソースの起動や停止(削除)が可能
Amazon S3(Simple Storage Service )
→オブジェクトストレージサービス(99.999999999%の耐久性があります)
→安価で容量は無制限
→性的Webホスティング機能が有ります。
→AWSの様々なサービスとの連携が可能です。
04 IAMユーザーを作成する
では、ハンズオンに従い、ルートユーザー(管理ユーザー)でログインして、AWSコンソール画面を起動します。
IAMのリンクをクリックします。(上部検索窓にIAMと打って検索してゆく方法も有ります。)

以下のような、IAMのダッシュボード画面が開きます。

左ペインのユーザーをクリックすると以下の画面が開きます。

右上のユーザーを追加ボタンをクリックして、新規に登録したいユーザー名を入力します。
今回は個人名のatarashiとしました。

次に、ユーザー詳細の設定画面が表示されますので、ユーザー名を入力し、コンソールパスワードをどうするかと、次回サインイン時にパスワードリセットが必要か否かを入力します。
→コンソールパスワードは、学習用なので自分で決めたパスワードを使用したいため、カスタムパスワードとしました。
→次回サインイン時のパスワードリセットも、自己学習用なので他の人のログインの予定も全く有りませんので、今回は必要無しとして、チェックは外しておいた状態としました。
そして、次のステップに進みます。

ユーザーを追加の画面が開きますので、今回は、既存のポリシーを直接アタッチのボタンを選択します。
今回は、IAMユーザーとしてのフルアクセス権限を設定しておきたいので、ポリシー名として表示される中のAdministratorAccess というポリシーのチェックボックスを選択します。

次のステップではタグの入力画面が表示されますが、今回は必要無いので、そのまま次に進みます。

次に、確認の画面が表示されますので、アクセス権限の概要で、管理ポリシーがAdministratorAccess というポリシーである事を確認して、
ユーザーを作成のボタンを押します。
以下のように、画面上部にIAMユーザーが作成されたというメッセージが表示され、作成されたユーザーについての情報が表示されます。

画面のatarashiのリンクをクリックすると以下の画面が表示されました。

画面右側に今回作成されたアカウントの情報が表示されます。
このアカウントでのIAMユーザーのアカウントエイリアスやサインインURLが表示されていますので、コピーしておきましょう。
ここまでできたら、ルートユーザーはサインアウトします。

ブラウザを立ち上げて、先程コピーしたURLにて開きます。
すると、AWSサインインの以下のような画面が表示されました。

アカウントエイリアスは、先程コピペしたアカウントエイリアス又はURLの中の12桁の数字です。
以下のように、全て入力された状態でサインインボタンをクリックします。

サインインが完了すると、以下のような画面が表示されました。

まず、試しにS3を作ってみますので、検索窓にs3と入力してS3の箇所を選択します。

以下の画面となりましたので、バケットを作成のボタンをクリックします。

以下のバケットを作成画面が表示されましたので、バケット名を考えて入力します。(既使われているにバケット名とスペースや大文字は使えないそうです。)
リージョンは、今回アジアパシフィック(東京)のままにしてあります。

あとは、以下の画面のような内容で、バケットを作成ボタン部分をクリックします。

すると、S3バケットが正常に表示された旨、上部に表示され、バケットの欄に今回作成したS3バケット名等が表示されます。
これで、S3バケットの作成は完了となります。

次に、引き続き、権限の異なる2種類の実験用IAMユーザーを作成してゆきますので、コンソールからIAMのサービスへ移動します。
→1つ目は、参照のみ(ReadOnly)の権限を持つユーザー
→2つ目は、一切権限を持たないユーザー(ログインのみ可能)
現時点では、先程作成したIAMユーザーとしてのフルアクセス権限を持つ、管理者ユーザーのみが表示されています。

右上のユーザーを追加のボタンをクリックすると、以下の画面となりますので、必要とする内容を入力し、ユーザーを追加します。

今回は、参照のみ(ReadOnly)の権限を持つユーザーを作成しますので、ユーザー名をatarashi_s3_readonlyとして、後は管理者ユーザー作成時の要領で作成します。

完了すると、以下のような画面が表示されますので、上部の赤枠で囲った部分をコピペするか、中央部付近の.csvのダウンロードボタンをクリックして、
IAMでのログイン時に必要となる情報を残しておきます。

同様に、一切権限を持たないユーザー(ログインのみ可能)を作成しておきます。

一通り作成すると、今回作成したユーザーが以下のように表示された状態となります。

次に、参照のみ(ReadOnly)の権限を持つユーザーのatarashi_s3_readonlyにてサインインし直してから、S3のサービスに遷移すると、S3のバケットが見える事を確認できます。
そこから、バケットの作成が可能か試してみます。

以下のように、atarashi_s3_readonlyのIAMユーザーでの操作では、権限の許可が必要な旨のダイアログが表示され、バケットの新規作成ができない状態が表示されます。

次に、一切権限を持たないユーザー(ログインのみ可能)のatarashi_nothingにてサインインし直してから、S3のサービスに遷移すると、S3のバケットを見る事ができない事を確認できます。

更に、IAMダッシュボードを開いてみると、以下のようにいろいろ権限が必要な旨の内容が表示された状態になりました。

ここまでで、既存のポリシーをアタッチする形での、IAM作成時の権限の設定と、設定後の挙動を確認するところまでできました。
05 IAM(ポリシー、グループ、ロール)について学ぶ
IAMポリシー
→アクセス許可の定義を行うJSONドキュメント
※JSONとは「JavaScript Object Notation」の略で、「JavaScriptのオブジェクトの書き方を元にしたデータ定義方法」のことです。
→IAMユーザー、グループ、ポリシーに紐づけて使用します。
→AWSにて準備されている既存のポリシー以外に、独自で作成したポリシーでも定義する事が可能です。
※IAMポリシージェネレーターというツールの使用により、JSONドキュメントをほぼ自動で作成して利用する事も可能となっています。
IAMグループ
→IAMユーザーをグループ(集合)として定義することです。
→複数のユーザーにおけるアクセス許可の定義をまとめて設定が可能となります。
(ユーザー追加ごとに複数のポリシー設定等の煩雑な処理をする必要について省略できます。)
IAMロール
→AWSのリソース自体(ユーザー側の人についての設定ではない)に、必要な権限を割り当てます。
※AWSリソースにポリシーを割り当てて、そのリソースに権限を与えます。
ポリシーをアタッチし、そのIAMロールを該当リソースに割り当ててAWSの操作を行う事が可能となります。
06 IAMポリシーとIAMグループを作ってみる
※IAMユーザーで今回何をするか?
・IAMポリシーを作成します。
インフラ担当者:管理者用権限を付与するポリシーを割り当てます。
→インスタンス一覧の表示や新しくインスタンスを立てて起動する事が可能。
アプリ開発担当者:開発者用の独自のポリシーを割り当てます。
→インスタンス一覧を表示し、インスタンスの起動や停止を実行してみます
新しくインスタンスを立てられない状態を確認します。
・IAMグループを作成します。
[IAMポリシーを作成します。]
まず、フルアクセス権限を持つ、管理者ユーザーのIAMにてサインインし直して、EC2のサービスへ遷移しておきます。

以下のような画面が表示されます。

左側のインスタンスを起動した場合は以下の画面となります。

画面のインスタンスを起動のオレンジ色のボタンからインスタンス作成をしたので良いのですが、敢えてこれまで使った事が無かったということで…
起動テンプレートの方から、新規EC2インスタンスを作ってみようと思います。

以下のような、起動テンプレートを作成の画面に遷移します。
今回は以下の画面のように登録してゆきました。



テンプレート経由でインスタンスを作成してみました。
以下のように、無事インスタンスが作成できたようです。

では、テンプレートからインスタンスを起動の処理を実行してみます。

キーペアは、今回は無しで続行します。

インスタンスの起動までの処理が正常に完了したようです。

続いて、アタッチするポリシーを作成します。

ポリシーを作成のボタンを押すと以下の画面に遷移しました。

ここで、既存には無い独自のポリシーについて、AWSポリシージェネレーターを使用することにより、簡単に作成することも可能です。
まず、ブラウザで「iam ポリシージェネレータ」でググってみると、以下のようなリンク先がヒットします。

リンク先をクリックすると、以下の画面に遷移しました。

今回のポリシー作成に必要な情報として、以下のように選択もしくは入力します。

Add Statementボタンを押すと、以下のような画面に遷移しました。

Generate Policyボタンを押すと、以下のようなウインドウが開きますので、表示されたJSONの内容をコピペしておきます。

ここで、コンソールのポリシーを作成の画面に戻りウインドウのJSONタブをクリックします。
先程コピペしたJSONの内容を貼り付けて、今回アクションを設定したい条件がec2:Describe全体なので、そのように修正します。

ポリシーの作成のタグを追加に関しては、何も入れなくてもいいのですが、今回devとしてあります。

次のポリシーの確認にて名前を入れる必要が有るので、devとしてあります。

独自ポリシーの作成に成功すると以下のように表示されました。

次に、作成したポリシーについて確認するために、新しいユーザーを作成します。

今回は、以下のようにatarashi_devのユーザー名で、これまでと同様に作成してゆきます。

次の画面に遷移したら、既存のポリシーを直接アタッチの部分を選択します。
この時表示する以下の画面のうちの、devの文字の左側のチェックボックスにチェックを入れてdevのポリシーをアタッチします。

次に確認画面が表示されますので、devのポリシー設定をしたユーザーを画面に従い作成します。

ユーザーの作成に成功すると、以下のように表示されます。


次に、今作成したatarashi_devのIAMでログインします。
先程新規作成し起動までしておいたEC2インスタンスの画面に遷移します。
以下のように、インスタンスの内容が表示されたので、表示系の権限が付与されている事が確認できました。

インスタンスを停止できるか試してみます。

無事停止できました。

EC2の新規作成ができるか試してみたところ、以下のように作成できない状態なので、参照や起動終了以外の操作の権限付与が無いことを確認できました。

[IAMグループを作成します。]
再度、管理者用のIAMユーザーでログインし直します。
IAMのサービスメニューのコンソールに遷移して、ユーザーグループを選択して、グループを作成のボタンをクリックします。

ユーザーグループの名前は今回Devとします。

続いてグループの作成を実行します。

付与する該当のポリシーにチェックを入れて、グループの作成ボタンを押します。

次のステップに進みます。
ここで、グループの作成確認用のユーザーとしてatarashi-dev2というユーザーも作成しておきます。

特にタグの指定は不要なので、確認画面の内容で合っていれば、ユーザーの作成ボタンをクリックします。

以下の画面で、Devというグループに、atarashi-dev2というユーザーが正常に作成された事を確認できます。

では、管理者ユーザーを一旦サインアウトして、atarashi-dev2のIAMにてサインインし直します。
インスタンスのサービスメニューに遷移します。

インスタンスが表示される事が確認できましたので、次に、インスタンスを開始できるか試してみます。

インスタンスの開始処理もできました。

次に、新規のインスタンス作成ができるか試してみたところ、以下の通り新規インスタンスの作成はできませんでしたので、正しく権限が付与されていることを確認できました。

07 IAMロールを試してみる
ここで再度、管理者用のIAMユーザーでログインして、AWSコンソール画面を起動します。
※IAMユーザーで今回何をするか?
・先程起動したEC2インスタンスに接続して、コマンドラインを使ってEC2のインスタンス一覧の表示を試してみます。
・先程起動したEC2インスタンスに接続して、コマンドラインを使ってEC2のインスタンス一覧の表示を試してみます。
まず、権限の無いIAMロールを割り当てます。
→一覧が表示できないことを確認します。
・IAMロールにdevポリシーを割り当てて、コマンドラインを叩いてみて期待するレスポンスが返ってくるのかを確認します。
IAMの画面に遷移します。
まず、空のIAMロールを作成します。

エンティティの選択は以下のようにします。

ロール名は以下のように、my-ec2-roleとしてあります。

とりあえず一旦、この内容のみのポリシー無しでのロールを作成します。

今、作成したロールをEC2のインスタンスにアタッチします。
インスタンスサービスメニューの該当インスタンスにチェックを入れて、アクション→セキュリティ→IAMロールを変更の選択肢を選択します。

次の画面で、IAMロールを選択して、IAMロールの更新ボタンをクリックします。

正常にIAMロールがアタッチされた旨の表示がされました。

では、インスタンスにコマンドラインで接続したいと思います。

上記画面の接続をクリックすると以下の画面に遷移しました。

あれれ~~~

インスタンス作成の際に、どうやら一部設定を間違えていたことがわかりました。
以下のように、新たに正しい設定でインスタンスをもう1台立てて起動して試すことにしました。

もう一度、新しく作成し起動したEC2インスタンスに先程設定したロールをアタッチします。

次の画面で、IAMロールを選択して、IAMロールの更新ボタンをクリックします。

正常にIAMロールをインスタンスにアタッチできました。

では、再度インスタンスにコマンドラインで接続したいと思います。

運命の瞬間。ど~~~だぁ!
…以下のように無事EC2インスタンスにコマンドラインで接続することができました。
コマンドをawsと打つことにより、awsのCLI(コマンドライン)が既に備わっていることが確認できました。

次に、EC2の一覧を表示するコマンドを打ってみます。
あれれ~~~!なんか変だぞ!?

とりあえず次に進むとしよう…IAMロールにちゃんとした権限を付けてみます。

My-ec2-roleのリンクをクリックします。

下側の許可を追加のドロップボックスのポリシーをアタッチを選択します。

今回は、devのポリシーを選択しアタッチします。


はい、正しくアタッチが、完了しました。

では、EC2インスタンスのサービスメニューに遷移します。

ここで、EC2の一覧を表示するコマンドを打ってみたところ…
あれれ~~~!先程の表示と同じ内容で、JSONが表示されていない…( ;∀;)
よく見ると、コマンドが微妙に間違っている。
…てな訳で、正しいコマンドに修正したところ、以下の通り正常にJSONが表示されました。

…ということは、ポリシー無しの場合もやり直し( ;∀;)
やるしかないんで、一旦、先程アタッチしたロールのポリシーをデタッチします。

ポリシーが正常にデタッチされた事が確認できました。

再度、許可ポリシーをデタッチしたロールにて、EC2の一覧を表示するコマンドを打ってみます。
はい、今度こそは正しい内容で表示されました。

これで、今回のハンズオンは問題なく!?完了することができました。
次回は、もっとスムーズに対応したいものですが…あんまりスムーズな対応だとブログとしては面白みが減少しませんか?(笑)
後片付け
ここからは、今回受講したハンズオンにて作成や起動したシステムを終了してゆきます。
起動したままにしておくとお金がかかってしまいますので、必ず実行しておきましょう。
まず、インスタンスを終了します。
何故か!?私の作成したインスタンスは不思議!?と2台ありますので…2台とも終了しておきます。
インスタンスサービスメニューに遷移します。
インスタンスの状態→インスタンスの終了を選択します。

以下の確認画面が出ますが、問題無いので終了ボタンをクリックします。

正常に終了しましたと表示されます。
この時点ではこのような表示ですが、時間が経つとインスタンスの表示は消えて無くなります。

次に、S3バケットを削除します。
Amazon S3のサービスメニューに遷移し、バケットを選択して、削除するバケットを選択し、削除ボタンを押します。

次に、バケットを削除の確認画面が出ますので、内容を確認して、テキスト入力フィールドに削除するバケットの名前を入力してからバケットを削除のボタンをクリックします。

バケットが正常に削除された旨の表示が出ます。

次に、作成したIAMユーザーのうち、今後も使用する予定が無いユーザーは全て削除しておきます。
私の場合は、管理者ユーザー以外が不要なので、まとめて削除します。
IAMのサービスメニューに遷移して、ユーザーをクリックします。

確認画面が出ますが、今回はテキスト入力フィールドに削除とだけ入力してから削除のボタンをクリックします。

ユーザーが削除された旨の表示がされます。

次に、IAMで作成したポリシーを削除します。
ポリシーをクリックし、削除したいポリシーを選択します。

確認画面が出ますが、内容を確認したうえで、今回はテキスト入力フィールドに、削除するポリシー名を入力し、削除ボタンをクリックします。


次に、IAMで作成したロールを削除します。
ロールをクリックし、削除したいロールのチェックボックスにチェックし、削除ボタンをクリックします。

確認画面が出ますが、内容を確認したうえで、今回はテキスト入力フィールドに、削除するロール名を入力し、削除ボタンをクリックします。

ロールが削除された旨、上部に表示されます。

最後に、IAMで作成したユーザーグループを削除します。
ユーザーグループをクリックし、削除したいグループ名のチェックボックスにチェックし、削除ボタンをクリックします。

確認画面が出ますが、内容を確認したうえで、今回はテキスト入力フィールドに、削除するグループ名を入力し、削除ボタンをクリックします。

ユーザーグループが削除されましたと上部に表示されます。

これで、後片付けも一通り完了です。
めちゃめちゃお疲れ様でした。

08 まとめ+Next Actionとしてのオススメのコンテンツを紹介
以下が、おまかな今回のハンズオン実施内容です。
・AWSアカウントを作成しました。
・IAM(ポリシー、ユーザー、グループ、ロール)の解説を聞きながらハンズオンを実施しました。
→Next Actionのハンズオンの紹介がありました。
スケーラブルハンズオン
サーバーレスWebAPI編、サーバーレス×AIサービス編→サーバーレス環境自動構築編
セキュリティハンズオン
最後に
今回の講義内容をほぼ網羅した結果となることを意識して、ところどころやった事の無いコンソールリンクを使ったりして進めてみましたが、
案外、妙なところで躓いてしまっており、初回時に講義通りに進まなかった状況も発生してしまいました。
講義のハンズオンでは、直接お客様が関わる処理とかではないので、講義通り一発でスムーズに完了できてしまうよりも…
今のうちに、多少ミスをしておいて、どうしたらそうなって、どうすれば復旧できるのかを自分で考えて自己解決する事ができましたので、
結果的には、いい経験ができて良かったのだと自分に言い聞かせております。(苦笑)
IAM部分のみだから、結構簡単に終わるのかとおもいきや、なかなか内容にボリュームが有りました。
ブログとしても、自身の失敗もありのまま記載して、ここまで最初から最後までの内容を網羅したものは少ないと思います。
AWS自体もどんどん進化している状況も有り、一度学習したところでまだまだ新たな学習を続け、更新してゆかねばなりませんが、
今回の学習をトリガーとして、更にいろいろな知識を広げ、経験を積んでゆくことの必要性を強く感じました。
どうも、長らく閲覧いただきまして有難うございました。
コメント