AWSのハンズオンでつまづいてしまう人へ

はじめに

こんにちは、クラウド事業本部の飯島です。

私はAWSエンジニアになるため、IT業界に飛び込み
日々奔走している者です。

そんな初学者がハンズオンにつまづく現状を書き記した

AWS初学者向け?の記事です。

1. 初学者の悩み

ハンズオンがうまくいかない・・・
あれ、なんでエラーがでるの?
どこで間違ったのかわからない。(あ!ここかな)

あ・・・やっぱり、うまくいきませんね。

普段はこんな感じで、嘆いております。
原因を特定するのも一苦労で、作ったリソースとにらめっこしています。

2. つまづいたシリーズ

1. Tera TermでEC2にログインするときのユーザー名がわからない。
2. 気づいたら別のリージョンにリソースを作っていた。
3. ハンズオン画面で出てくる項目がコンソール画面にない。
4. リソース名の命名規則が定まっていない。
5. コードを貼り付けるときに、置き換えが必要なリソース名やリージョンを見落としてしまいエラーが出る。
6. EventBridgeの時間指定がよくわからない。
7. VPCなど一部のリソースが削除できない。

などなど

3. つまづきを減らすために

個別の対策の前に、ミスが起こりづらいように設定してあげましょう。

もっといい方法があるよ!というのがあれば、どこかで教えていただけるとうれしいです。

・ 作業前にまず、リージョンを設定する

変更の手間を減らすために、ハンズオン内で利用されているリージョンと合わせるのが良いと思います。

リージョンによっては使えないサービスがあったり、AZによっては対応していないインスタンスのタイプがあったりと
細かい差があるので、少しでも面倒事は減らしましょう。

・ リソースに接続できないときは、VPCのリソースマップをみてみる。



→ 視覚的で見やすいですね。繋がらない原因がセキュリティグループやIAMの場合も多いですが、
そもそもPublicがインターネットゲートウェイと繋がっていなかったり、関連付けがうまくいってなかったりします。

・ 最終手段は、リソースの作り直し(念のため前のリソースは残しておく)

これは、アクセスできるようになったときに何が違ったのか確認するためです。(今後のために)
仮におかしなことになっても、新しく作り直した方を消せば元の状態に戻せます。

4. 個別の対策

それでは、つまづいたシリーズの対処方法についてまとめてみます。

1. Tera TermでEC2にログインするときのユーザー名がわからない。

EC2を作成すると、AWS側でEC2にログインするためのユーザー名ec2-userが自動で作られているようで、
ユーザー名を設定していない場合は、デフォルトのec2-userになるそうです。

↓以下の画面は、インスタンス一覧画面の右上の「接続」ボタンから入れます。
EC2 Instance Connectタブ内に記載あり。

2. 気づいたら別のリージョンにリソースを作っていた。

デフォルトでは前回、そのサービスで開いていたリージョンが表示されるようで、
違うAWSのサービスを選択したら、リージョンが切り替わっていたなんてことがままあります。

コンソール右上のアカウント名をクリックすると「設定」より、
デフォルトでどのリージョンを使用するか設定できます。
「設定を保存」を忘れずに行いましょう。




3. ハンズオン画面で出てくる項目がコンソール画面にない。

AWSはコンソールの設定画面がけっこう頻繁に変わるようで、
ハンズオン画面では表示されてる項目が、どこかにまとめられて消えていたりします。
これは、注意深く見るしかないですね。

ハンズオン記事を読んでいると、CLIを使う人がよくいるのが不思議だったんですが、
たしかにCLIの方がシンプルですし、操作が変わらないので使いやすいのかもしれません。

4. リソース名の命名規則が定まっていない。

ひとえに命名規則といっても、あとで検証で利用したリソースを消去するときなど
管理がいい加減だと困る場面があると思います。

リソースの命名規則に関して調べてみると、いろんな記事がありました。
一般的なのが、{システム名(sysname)}-{環境(env)}-{AWSのサービス名}
などのようにハイフン(-)で区切るやり方です。

基本的には、一緒に作業をする周りの方に合わせたやり方が良いと思いますが、
リソース名には、AWSのサービス名を含めないほうが良いなど、
色々な意見があって、なかなか奥が深そうです。

5. EC2のユーザーデータなどコードを貼り付けるときに、置き換えが必要なリソース名やリージョンを見落としてしまいエラーが出る。

コピペ前に、著者の環境に依存するリソース名がないか確認する。(リージョンやリソース名など)
これは、貼り付ける前にエディター(Visual Stadioなど自分が見やすいやつ)に貼り付けて何が書かれているか
よく読んだ方が良いです。慣れてくれば意識が向くのでしょうが、はじめのうちは気をつけましょう。

6. EventBridgeの時間指定にクセがある。

これは、Cron式に慣れていないというのもあるのですが、

だいたいのイメージとしては、
日本時間の午前0時(24時)に起動するなら、UTC(GMT)15などで+9時間で調整する。
というイメージでいます。

公式のドキュメントを読んでみたり・・・
Amazon CloudWatch Events ユーザーガイド – ルールのスケジュール式

7. VPCなど一部のリソースが削除できない。

基本は、作った順番の逆から消していくことです。最後に消すのはVPCになることが多いです。

まとめ

AWSのサービスに対する知識ももちろんですが、
初学者に一番必要なのはエラーが起きたときに
どのように問題を切り分けられるか、その方法を知ることだと思います。

切り分けについては、まだ十分に把握できていないので今後記事にできればと思います。

ハマるとなかなか抜け出させない沼もありますが、めげずに進んでいきましょう!
それでは今日はこのあたりで、、、読んでいただきありがとうございました。

Last modified: 2023-07-21

Author