初めに
「AWSの構築をしていてなんかうまくいかない...」
「ワッ...突然動かなくなっちゃった...」
こんな時、皆さんどのように対処していますか?
とりあえずサービス名+エラー文で検索したり、思い当たる仮説を片っ端から検索したりしていませんか?
圧倒的...効率の悪さ...!
こんな現状に危機感を覚えた私は、
構築がうまくいかない時の対処フローをまとめた記事はないかと調べてみたものの箸にも棒にもかからず...
なんで誰もまとめてないんだい!?!?!?
という思いでこのまとめを記しています。
私自身の経験が豊富なわけではないので、中身は薄いです。。。
他にもおすすめのリソース、手順があればどしどしコメントください!
構築で困った時のフロー
公式ドキュメントをよく読み、ミスがないか探す
何はともあれ、ドキュメントが命です。
カップヌードルの逸話があるくらいには読みにくいAWSのドキュメントを読みたくない気持ちもわかります。
ただ、読みにくくても公式ドキュメントをしっかり読むことで多くのことは解決します。
補助的にQiitaやZennを見るのはもちろんGoodです!
現象を言語化する
ここでえいや!と検索したくなる思いをグッと堪えます...
まずは落ち着いて、現状の状況を "言葉" として整理します。
声に出す、紙に書く、Slackで質問する、どんな形でも良いので言語化しましょう。
慣れない人は5W1Hを意識すると良いかもです。
- いつ:今も起きているのか、毎回発生するのか
- 誰が:どのアカウント、どのIAMで発生するのか
- どこで:どのリージョン、どの開発環境、どのOS、どの端末で発生するのか
- 何を:どのリソースを
- どのように:発生した事象により何が起こったのか、どんなログが出ているか、発生する前と後で何をしたか
詳しくはクラスメソッドさんの記事を参照すると良いです。
公式サポートドキュメントを見る
現象が言語化できたら整理された同様の過去事例がないかを探してみます。
以下の3つの公式リンクを参照するとよいそうです。
もはや公式認定のDevelopersIOですが、AWSテクニカルサポートノートというタグがあり、ナレッジセンターと同じQ&A形式の記事があります。
Google検索で同様の事象を探す
ここでお待ちかねGoogle検索です。
サポートにない場合、先人の知恵を借りに行きましょう。
StackOverflowやGithubなどで質問されていないかを探しましょう。
仮説を立てる
それでも見当たらなかった場合、ニッチな部分のミスか自分の設定や環境に特有の問題であることが多いです。
現象が言語化できたら、一歩引いた視点で考えられる原因を羅列し、可能性が高そうな順に並べます。
エラーが同じでも原因は様々です。
他のサービスとの連携で起きている?
権限の問題? IAMなのかポリシーなのか?
ネットワークの問題?
自分のPCのプロキシの問題?
これらはどのように検証できる?
等々...
デバッグをしているとどうしても近視眼的になりがちなので、この時間は意外と大切です。
運が良ければここでこれだ!というのがひらめくことも💡💡💡
原因を調査する
ここまでやっても治らないということはめっっっったにないミスや複雑な症状が発生しているはずです。
真因の調査を行いましょう。
仮説リストの上から1つ1つ検証していきます。
真因がもし見つかれば解決です。
(ここもうちょっと詳しく書きます...)
以下の動画を見ると良いかも
サポートに問い合わせる!
ここまでやってもできない場合、社内の有識者やAWSサポートに連絡しましょう。
緊急度、言語化した事象の説明、今まで試したこと、全てを託して待ちましょう!
参考文献
記事内には掲載しませんでしたが、本稿を作るにあたって読んだ参考文献たちです。
本稿よりも役に立つと思うのでさらりと見ていただけると良いかもです。。。