Slide 1

Slide 1 text

コンテナのトラブルシューティング⽬線から AWS SAW についてしゃべってみる [JAWS-UG⾦沢⽀部×コンテナ⽀部合同企画 物理コンテナ⾒ながらコンテナ勉強会︕] 株式会社サーバーワークス 市野 和明(JAWS-UG 神⼾) 2024-11-02

Slide 2

Slide 2 text

⽬次 1. ⾃⼰紹介 2. 本題 3. 余談

Slide 3

Slide 3 text

⾃⼰紹介

Slide 4

Slide 4 text

4 はじめまして 名前︓市野 和明(いちの かずあき) 所属︓株式会社サーバーワークス MS 部 テクニカルサポート1課 好きな AWS サービス︓ AWS CLI (テクサポとして) 嫌いな AWS サービス︓ Amazon FSx for Windows AWS Deadline Cloud 趣味︓ミクが好き、酒を飲む @kazzpapa3

Slide 5

Slide 5 text

5 はじめまして 名前︓市野 和明(いちの かずあき) 所属︓株式会社サーバーワークス MS 部 テクニカルサポート1課 好きな AWS サービス︓ AWS CLI (テクサポとして) 嫌いな AWS サービス︓ Amazon FSx for Windows AWS Deadline Cloud 趣味︓ミクが好き、酒を飲む @kazzpapa3 JAWS-UG 神⼾の 運営もやってます

Slide 6

Slide 6 text

私と⾦沢

Slide 7

Slide 7 text

7 故郷です ⾦沢で⽣まれて⼩学校1年まで住んでいました

Slide 8

Slide 8 text

8 故郷です ⾦沢で⽣まれて⼩学校1年まで住んでいました 鞍⽉⼩学校という⼩学校に通っていました

Slide 9

Slide 9 text

9 故郷です ⾦沢で⽣まれて⼩学校1年まで住んでいました 鞍⽉⼩学校という⼩学校に通っていました ⽗親の転勤で新潟に⼀時期引っ越しましたが、 実家はここから⾞で 5 分くらいです

Slide 10

Slide 10 text

10 故郷です ⾦沢で⽣まれて⼩学校1年まで住んでいました 鞍⽉⼩学校という⼩学校に通っていました ⽗親の転勤で新潟に⼀時期引っ越しましたが、 実家はここから⾞で 5 分くらいです 今回は勉強会駆動の家族旅⾏で⾦沢へ来ていて、 明⽇はお墓参りに⾏ってくる予定です

Slide 11

Slide 11 text

登壇と⾦沢

Slide 12

Slide 12 text

12 テクサポの中の⼈としての 恨みつらみ ベストプラクティス 以前、JAWS-UG 北陸新幹線 で登壇した際の資料が AWS テクニカルサポート内でプチバズりしたそうなのです。 私が普段サポート業務やってて思う、恨みつらみ もっとこうすればいいのに って思いを書いていますので、AWS に限らずなんらかのサポートに問い合わせ をするロールの⽅は⼀読いただけると嬉しいです。

Slide 13

Slide 13 text

私とコンテナ

Slide 14

Slide 14 text

14 ⾃⼰紹介 名前︓市野 和明(いちの かずあき) 元所属︓ヤマト運輸株式会社 在籍期間︓2002〜2008年 嫌いな時期︓ ・12⽉ 歳暮〜クリスマス〜おせち と絶え間なくイベントがある ・7⽉〜お盆前(中元) 好きなトラックメーカー︓いすゞ 在籍中の事故件数︓0 件

Slide 15

Slide 15 text

15 運送業界が⻑く、神⼾で仕事をしている私にとって コンテナといえばこっち

Slide 16

Slide 16 text

16 通称キリンと呼ばれる「ガントリークレーン」 コンテナを荷下ろしするガントリークレーン(神⼾空港側から⾒た⾵景)

Slide 17

Slide 17 text

17 ⼀説には「ガントリークレーン」は神⼾が最多との話も… なので、港湾&神⼾をデザインする「ウミキリン」という ブランドサイトがあったりします。 https://umikirin.net/

Slide 18

Slide 18 text

18 ⼀説には「ガントリークレーン」は神⼾が最多との話も… なので、港湾&神⼾をデザインする「ウミキリン」という ブランドサイトがあったりします。 https://umikirin.net/ ただ、神⼾の港湾エリアはガチすぎて、 物理コンテナを⾒ながら勉強会ができるようなスペースはなさそうでした。

Slide 19

Slide 19 text

19 ⼀説には「ガントリークレーン」は神⼾が最多との話も… なので、港湾&神⼾をデザインする「ウミキリン」という ブランドサイトがあったりします。 https://umikirin.net/ ただ、神⼾の港湾エリアはガチすぎて、 物理コンテナを⾒ながら勉強会ができるようなスペースはなさそうでした。 こうして地元にも帰省するきっかけにもなりましたので、⾦沢開催ありがたい

Slide 20

Slide 20 text

20 ガントリークレーンは操作できないものの さすがに「ガントリークレーン」は操作できませんが、 フォークリフト運転技能講習を修了している私は、 構内作業、かつ、リーチスタッカーやフォークリフトであれば 何トンのコンテナでも運ぶことが可能です

Slide 21

Slide 21 text

21 私とコンテナ さすがに「ガントリークレーン」は操作できませんが、 フォークリフト運転技能講習を修了している私は、 構内作業、かつ、リーチスタッカーやフォークリフトであれば 何トンのコンテナでも運ぶことが可能です やったことはないですけどね…

Slide 22

Slide 22 text

本題

Slide 23

Slide 23 text

23 AWS SAW︖ このところの私の推しソリューション「AWS SAW」

Slide 24

Slide 24 text

24 正式名称は AWS Support Automation Workflows このところの私の推しソリューション「AWS SAW」 正式名称は AWS Support Automation Workflows というそうです。

Slide 25

Slide 25 text

25 AWS Expert Online でも取り上げられていました このところの私の推しソリューション「AWS SAW」 正式名称は AWS Support Automation Workflows というそうです。 2024年3⽉13 に開催された AWS Expert Online でも取り上げられていました。 AWS の中の⽅が登壇・解説されているので、概要はここを⾒ればバッチリ https://www.youtube.com/watch?v=5vokZAudVIE

Slide 26

Slide 26 text

26 AWS Expert Online でも取り上げられていました このところの私の推しソリューション「AWS SAW」 正式名称は AWS Support Automation Workflows というそうです。 2024年3⽉13 に開催された AWS Expert Online でも取り上げられていました。 AWS の中の⽅が登壇・解説されているので、概要はここを⾒ればバッチリ https://www.youtube.com/watch?v=5vokZAudVIE まさかのご本⼈︕

Slide 27

Slide 27 text

27 AWS Expert Online でも取り上げられていました このところの私の推しソリューション「AWS SAW」 正式名称は AWS Support Automation Workflows というそうです。 2024年3⽉13 に開催された AWS Expert Online でも取り上げられていました。 AWS の中の⽅が登壇・解説されているので、概要はここを⾒ればバッチリ https://www.youtube.com/watch?v=5vokZAudVIE ご本⼈の前で少し⼼が折れそうですが、 やれるだけやってみます。 まさかのご本⼈︕

Slide 28

Slide 28 text

28 AWS SAW の概要 これまでに AWS サポートでお客様の課題を解決して得たベストプラクティスを もとに AWS サポートエンジニアリングによって作成されたもの

Slide 29

Slide 29 text

29 AWS SAW の概要 これまでに AWS サポートでお客様の課題を解決して得たベストプラクティスを もとに AWS サポートエンジニアリングによって作成されたもの そのため「AWS サポート」のサービスページの下層ページとして AWS SAW のページが⽤意されています。 AWS Support Automation Workflows (SAW) https://aws.amazon.com/jp/premiumsupport/technology/saw/

Slide 30

Slide 30 text

30 AWS SAW の概要 これまでに AWS サポートでお客様の課題を解決して得たベストプラクティスを もとに AWS サポートエンジニアリングによって作成されたもの そのため「AWS サポート」のサービスページの下層ページとして AWS SAW のページが⽤意されています。 AWS Support Automation Workflows (SAW) https://aws.amazon.com/jp/premiumsupport/technology/saw/ 実体は AWS Systems Manager Automation Runbook となっています。

Slide 31

Slide 31 text

31 AWS SAW ランブックの探し⽅① 前ページの URL へアクセスすると、ページ下部に「ユースケース」セクション があり、⽬的に応じた AWS SAW ランブックを探すことが可能です。

Slide 32

Slide 32 text

32 AWS SAW ランブックの探し⽅① 前ページの URL へアクセスすると、ページ下部に「ユースケース」セクション があり、⽬的に応じた AWS SAW ランブックを探すことが可能です。 ただし、少し最新化されていない印象

Slide 33

Slide 33 text

33 AWS SAW ランブックの探し⽅② その他、実体が Systems Manager Automation Runbook であることから Systems Manager Automation runbook reference ページでも検索可能です。 https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-runbook-reference.html

Slide 34

Slide 34 text

34 AWS SAW ランブックの探し⽅② その他、実体が Systems Manager Automation Runbook であることから Systems Manager Automation runbook reference ページでも検索可能です。 https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-runbook-reference.html ただしこのページは Automation Runbook のリファレンスの総合 そのため AWS SAW ランブック以外のランブックも含まれている

Slide 35

Slide 35 text

35 AWS SAW ランブックの探し⽅② Systems Manager Automation runbook reference ページ内で ランブック名に「AWSSupport-」あるいは「AWSPremiumSupport-」の 接頭辞を持つランブックが AWS SAW ランブックに相当します。 AWSSupport-を接頭辞にもつランブックの例 AWSSupport-CheckXenToNitroMigrationRequirements AWSPremiumSupport-を接頭辞にもつランブックの例 AWSPremiumSupport-ChangeInstanceTypeIntelToAMD https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-aws-changeinstancetypeinteltoamd.html https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-awssupport- checkxentonitromigrationrequirements.html

Slide 36

Slide 36 text

36 AWS SAW ランブックの探し⽅② Systems Manager Automation runbook reference ページ内で ランブック名に「AWSSupport-」あるいは「AWSPremiumSupport-」の 接頭辞を持つランブックが AWS SAW ランブックに相当します。 AWSSupport-を接頭辞にもつランブックの例 AWSSupport-CheckXenToNitroMigrationRequirements https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-awssupport- checkxentonitromigrationrequirements.html AWSPremiumSupport- 【注意点】 AWSPremiumSupport- の接頭辞を持つ ランブックの実⾏には プレミアムサポート※ のサポート契約が必要 ※ビジネスプラン、エンタープライズプラン AWSPremiumSupport-を接頭辞にもつランブックの例 AWSPremiumSupport-ChangeInstanceTypeIntelToAMD https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-aws-changeinstancetypeinteltoamd.html

Slide 37

Slide 37 text

37 いずれの⽅法もいいのですが… ユースケースや、AWS サービスごとに確認しなければならず、 ⼀覧になっていないため少し探しにくい (進化の早い AWS では網羅的なページがないのはあるあるではありますが…)

Slide 38

Slide 38 text

38 いずれの⽅法もいいのですが… ユースケースや、AWS サービスごとに確認しなければならず、 ⼀覧になっていないため少し探しにくい (進化の早い AWS では網羅的なページがないのはあるあるではありますが…) なので、⼀覧にしてみました。 AWS SAW(AWS Support Automation Workflows)というソリューションを知ったのでまとめてみ た https://blog.serverworks.co.jp/summary-about-aws-saw

Slide 39

Slide 39 text

39 いずれの⽅法もいいのだが… ユースケースや、AWS サービスごとに確認しなければならず、 ⼀覧になっていないため少し探しにくい (進化の早い AWS では網羅的なページがないのはあるあるではありますが…) なので、⼀覧にしてみました。 AWS SAW(AWS Support Automation Workflows)というソリューションを知ったのでまとめてみ た https://blog.serverworks.co.jp/summary-about-aws-saw 上記のブログ執筆時には 65 の AWS SAW ランブックがあり、 2024年8⽉25⽇ に再度確認したところ 13個増えて 78 の AWS SAW ランブックを確認しました。

Slide 40

Slide 40 text

40 いずれの⽅法もいいのだが… ユースケースや、AWS サービスごとに確認しなければならず、 ⼀覧になっていないため少し探しにくい (進化の早い AWS では網羅的なページがないのはあるあるではありますが…) なので、⼀覧にしてみました。 AWS SAW(AWS Support Automation Workflows)というソリューションを知ったのでまとめてみ た https://blog.serverworks.co.jp/summary-about-aws-saw 上記のブログ執筆時には 65 の AWS SAW ランブックがあり、 2024年8⽉25⽇ に再度確認したところ 13個増えて 78 の AWS SAW ランブックを確認しました。 先ほど(11/2)に再確認したら、 80 個 に増えているようです︕

Slide 41

Slide 41 text

41 いずれの⽅法もいいのだが… ユースケースや、AWS サービスごとに確認しなければならず、 ⼀覧になっていないため少し探しにくい (進化の早い AWS では網羅的なページがないのはあるあるではありますが…) なので、⼀覧にしてみました。 AWS SAW(AWS Support Automation Workflows)というソリューションを知ったのでまとめてみ た https://blog.serverworks.co.jp/summary-about-aws-saw 上記のブログ執筆時には 65 の AWS SAW ランブックがあり、 2024年8⽉25⽇ に再度確認したところ 13個増えて 78 の AWS SAW ランブックを確認しました。 先ほど(11/2)に再確認したら、 80 個 に増えているようです︕ 結局、つねに 公式情報をウォッチし ておく必要あり

Slide 42

Slide 42 text

コンテナに関連した AWS SAW ランブック

Slide 43

Slide 43 text

43 Amazon ECS 向け Amazon ECS - AWS Systems Manager Automation runbook reference https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-ref-ecs.html

Slide 44

Slide 44 text

44 Amazon EKS 向け Amazon EKS - AWS Systems Manager Automation runbook reference https://docs.aws.amazon.com/systems-manager-automation- runbooks/latest/userguide/automation-ref-eks.html

Slide 45

Slide 45 text

45 ECS-1. AWSSupport-CollectECSInstanceLogs 指定された Amazon EC2 インスタンスから OS と ECS 関連のログファイルを収集します 収集したログ整理⽤に、インスタンスに⼀時ディレクトリを作成します 関連するログファイルをこれらの⼀時ディレクトリにコピーします 収集したログをアーカイブファイルに圧縮します (オプション)指定がある場合、アーカイブを Amazon S3 バケットに アップロードします

Slide 46

Slide 46 text

46 ECS-2. AWSSupport-TroubleshootECSContainerInstance EC2 インスタンスのユーザーデータを確認して、 正しいクラスター情報が含まれていることを確認します EC2 インスタンスにアタッチされたインスタンスプロファイルに、 ECS 登録に必要な権限があるかどうかを確認します インスタンスがクラスターに参加できない原因となる可能性のある ネットワーク構成の問題を調べます EC2 インスタンスが ECS クラスターに登録するための 前提条件を満たしていることを確認します。 ⼀連のチェックを実⾏して、クラスター登録の成功を妨げる可能性のある ⼀般的な問題を特定します

Slide 47

Slide 47 text

47 ECS-3. AWSSupport-TroubleshootECSTaskFailedToStart ECS クラスターと失敗したタスクを分析して、 タスクの起動を妨げる⼀般的な問題を特定します タスクの起動が失敗する原因となる可能性のある以下の側⾯を調査します VPC およびネットワーク接続の問題 セキュリティ グループの構成 IAM 権限 AWS Secrets Manager シークレット (使⽤している場合) ログ記録の構成 実⾏後に、出⼒セクションにタスク失敗の理由の詳細な分析が表⽰されます。 さらに調査するために実⾏ログを⽣成します 該当する場合は、Lambda VPC Elastic Network Interface の 削除のステータスをチェックしてレポートします

Slide 48

Slide 48 text

48 EKS-1. AWSSupport-CollectEKSInstanceLogs EKS クラスターの⼀部である EC2 インスタンスから、 OS と Amazon EKS 関連のログファイルを収集します 収集したログを保存するために、インスタンスに⼀時ディレクトリを作成します 関連するログファイルをこれらの⼀時ディレクトリにコピーします 収集したログをアーカイブファイルに圧縮します (オプション)指定がある場合、アーカイブを Amazon S3 バケットに アップロードします。

Slide 49

Slide 49 text

49 EKS-2. AWSPremiumSupport-TroubleshootEKSCluster EKS クラスターとその関連リソースから診断情報を収集します ⼀連のチェックを実⾏し、クラスターのパフォーマンスや機能に影響を与える可 能性のある⼀般的な問題を特定します コントロールプレーン、ワーカーノード、その他の関連コンポーネントからログ を収集します クラスターに関連付けられているネットワーク構成、セキュリティグループ、 IAM ロールを分析します クラスターのアドオンと管理対象ノードグループの構成ミスをチェックします クラスターの API サーバーとその他の重要なコンポーネントの正常性を検証し ます 調査結果と潜在的な修復⼿順を含む包括的なレポートを⽣成します

Slide 50

Slide 50 text

50 EKS-3. AWSSupport-TroubleshootEKSWorkerNode 指定された EC2 ワーカーノードと EKS クラスターを分析して、 ノードがクラスターに参加できない原因となる⼀般的な問題を特定します ワーカーノードとクラスター構成に対して⼀連のチェックを実⾏します 指定された EKS クラスターの存在とアクティブ状態を確認します 指定された EC2 ワーカーノードの実⾏状態を確認します ワーカーノードがクラスターに参加できない原因を特定するために Python スクリプトを実⾏します 特定された問題の解決に役⽴つガイダンスを含む出⼒を⽣成します

Slide 51

Slide 51 text

所感

Slide 52

Slide 52 text

52 ECS、EKS ともに ログ収集、ECS クラスターへの登録失敗、タスクが失敗となるケースなど、 トラブルシュートの基本となる切り分けは⽤意されていると思われる EC2 で稼働するコンテナが対象(Fargate 起動は対象外) (Systems Manager を通じて操作をすることを考えると致し⽅ないか…) トラブルシュートの王道パターンは⽤意されているかと思われるため 事象発⽣時の初動対応⼿順を、運⽤者(=利⽤者)で作成しなくても AWS が標 準化してくれている、という捉え⽅もできるのでは︖

Slide 53

Slide 53 text

余談

Slide 54

Slide 54 text

54 余談 構内作業であれば、何トンのコンテナでも運べます︕と⾔いましたが…

Slide 55

Slide 55 text

55 余談 構内作業であれば、何トンのコンテナでも運べます︕と⾔いましたが… フォークリフトに関する資格は2種類 フォークリフト運転特別教育修了証 フォークリフト運転技能講習修了証 ・最⼤荷重が 1トン未満まで ・最⼤荷重 1トン以上

Slide 56

Slide 56 text

56 余談 構内作業であれば、何トンのコンテナでも運べます︕と⾔いましたが… フォークリフトに関する資格は2種類 フォークリフト運転特別教育修了証 フォークリフト運転技能講習修了証 ・最⼤荷重が 1トン未満まで ・最⼤荷重 1トン以上 公道を⾛る場合は相応の運転免許は必要ですが、 構内作業の場合の最⼤荷重のしきい値が1トン、というのは極端な気がしますね 公道では、⼩型特殊⾃動⾞免許あるいは普通⾃動⾞免許のいずれか or ⼤型特殊⾃動⾞免許 が必要

Slide 57

Slide 57 text

57 余談 構内作業であれば、何トンのコンテナでも運べます︕と⾔いましたが… フォークリフトに関する資格は2種類 フォークリフト運転特別教育修了証 フォークリフト運転技能講習修了証 ・最⼤荷重が 1トン未満まで ・最⼤荷重 1トン以上 公道を⾛る場合は相応の運転免許は必要ですが、 構内作業の場合の最⼤荷重のしきい値が1トン、というのは極端な気がしますね 公道では、⼩型特殊⾃動⾞免許あるいは普通⾃動⾞免許のいずれか or ⼤型特殊⾃動⾞免許 が必要 40 ft コンテナで考えた場合… コンテナ⾃⾝の⾃重︓約 4,000 kg 最⼤総重量︓30,480kg(ISO規格の最⼤総重量) 最⼤ 31 トンのコンテナでひっくり返らないサイズの⾞輌ってめっちゃデカくない︖

Slide 58

Slide 58 text

58 余談 構内作業であれば、何トンのコンテナでも運べます︕と⾔いましたが… フォークリフトに関する資格は2種類 フォークリフト運転特別教育修了証 フォークリフト運転技能講習修了証 ・最⼤荷重が 1トン未満まで ・最⼤荷重 1トン以上 公道を⾛る場合は相応の運転免許は必要ですが、 構内作業の場合の最⼤荷重のしきい値が1トン、というのは極端な気がしますね 公道では、⼩型特殊⾃動⾞免許あるいは普通⾃動⾞免許のいずれか or ⼤型特殊⾃動⾞免許 が必要 40 ft コンテナで考えた場合… コンテナ⾃⾝の⾃重︓約 4,000 kg 最⼤総重量︓30,480kg(ISO規格の最⼤総重量) 最⼤ 31 トンのコンテナでひっくり返らないサイズの⾞輌ってめっちゃデカくない︖ 重量物を取り扱う⾞輌の周辺を通る時はくれぐれも気をつけて︕

Slide 59

Slide 59 text

No content