Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS Fault Injection Simulator (FIS) のネットワーク接続中断...
Search
Ryuji Yamamoto
November 19, 2022
Technology
0
880
AWS Fault Injection Simulator (FIS) のネットワーク接続中断アクションで リージョン間フェイルオーバーを試してみた
JAWS-UG初心者支部#51 re:invent前に2022年Update振り返り
https://jawsug-bgnr.connpass.com/event/265406/#_=_
Ryuji Yamamoto
November 19, 2022
Tweet
Share
More Decks by Ryuji Yamamoto
See All by Ryuji Yamamoto
AWS WAF BotControlを本番環境に導入してみた
yama1998
0
1.4k
Other Decks in Technology
See All in Technology
LLM拡張解体新書/llm-extension-deep-dive
oracle4engineer
PRO
23
6.3k
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
1
350
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
6.9k
対話型音声AIアプリケーションの信頼性向上の取り組み
ivry_presentationmaterials
3
1.1k
20250718_ITSurf_“Bet AI”を支える文化とコストマネジメント
helosshi
0
100
Figma Dev Mode MCP Serverを用いたUI開発
zoothezoo
0
230
[SRE NEXT 2025] すみずみまで暖かく照らすあなたの太陽でありたい
carnappopper
2
470
本当にわかりやすいAIエージェント入門
segavvy
1
480
推し書籍📚 / Books and a QA Engineer
ak1210
0
140
shake-upを科学する
rsakata
7
1k
セキュアな社内Dify運用と外部連携の両立 ~AIによるAPIリスク評価~
zozotech
PRO
0
130
Featured
See All Featured
How to Ace a Technical Interview
jacobian
278
23k
The Cult of Friendly URLs
andyhume
79
6.5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
750
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Practical Orchestrator
shlominoach
189
11k
Transcript
1 AWS Fault Injection Simulator (FIS) のネットワーク接続中断アクションで リージョン間フェイルオーバーを試してみた [JAWS-UG初心者支部#51 re:invent前に2022年Update振り返り]
自己紹介 2 名前: 山本竜司 経歴:新卒でアイレット株式会社に入社 現在3年目 業務:AWSを用いたインフラの構築、運用保守
3 アジェンダ • AWS Fault Injection Simulator (FIS) とは •
構成図 • FISを実行する手順 • 検証 • 触ってみた感想
AWS Fault Injection Simulator (FIS) とは 4
AWS Fault Injection Simulator (FIS) とは 5 • AWS環境に擬似攻撃、擬似障害を起こす事ができるサービス 意図的に負荷や障害を発生させて、アプリケーションのパフォーマンス、回復性、
およびオブザーバビリティを観察し、取得したデータを基に改善させる事が可能 同様のサービスだとChaos Monkey, Gremlin 等
AWS Fault Injection Simulator (FIS) とは 6 https://aws.amazon.com/jp/about-aws/whats-new/2022/10/aws-fault-injection-simulator-network-connectivity-disruption/
AWS Fault Injection Simulator (FIS) とは 7 簡易的なDRを試してみよう!
構成図 8
構成図 9
構成図 10
FISを実行する手順 11
FISを実行する手順 12 ① 実験テンプレートの作成 発生させたいアクションやターゲットを設定する ② 実験の開始 作成した実験テンプレートに沿った実験が開始される
① 実験テンプレートの作成 13
① 実験テンプレートの作成 14 ターゲット設定 リソースタイプ どのリソースをターゲットにするか リソースID 対象のリソースをIDで指定
① 実験テンプレートの作成 15 アクション設定 発生させたい障害や異常を選択する
16 ① 実験テンプレートの作成 • 障害注入アクション APIスロットルエラー API内部エラー API使用不可エラー • リソースに対するアクション
EC2 再起動、停止、終了 RDS 再起動、フェイルオーバー ECS のコンテナインスタンスのドレイニング ECS のタスクストップ EKS の単一のターゲットクラスターでのリトマスの実験 EKS のノードグループインスタンスの削除 EC2にCPU負荷を与える(SSMと組み合わせる) アクション設定
① 実験テンプレートの作成 17 アクション設定 • スコープ設定 どこのトラフィック間で異常を発生させるか 今回はRoute53のフェイルオーバールーティングを 発生させたいので「ALL」を選択 ALL
全てのトラフィック Availability-zone AZ間のトラフィック S3,DynamoDB サービス間のトラフィック
① 実験テンプレートの作成 18 IAMロール設定 IAMロールの作成が必要 実施するアクションによって必要な権限が変わる どの権限が必要かはドキュメントに記載されている > Action set
for AWS FIS https://docs.aws.amazon.com/fis/latest/userguide/action-sequence.html
① 実験テンプレートの作成 19 停止条件 事前に設定したAmazon CloudWatchアラームにより、 サービスが異常状態になった場合などに自動的に実験を停止で きる 実験中に想定外の問題が発生した際に、ユーザーへの影響を 最低限に抑える事が可能
① 実験テンプレートの作成 20 テンプレート完成!🎉
検証 21
22 検証
1-2分ほど待ってみると… 23
検証 24 ① 対象のサイトにアクセス出来なくなった事を確認
検証 25 ② Route53のヘルスチェックが東京リージョン側で失敗している事を確認
DNSの反映待ち… 26
検証 27 ③ DNSの向先が大阪リージョンに変わった事を確認 検証前 (東京リージョン側) 検証後 (大阪リージョン側)
検証 28
検証 29 (余談) EC2のステータスチェックは失敗しなかった AWSのシステム側の通信には影響を与えない?🤔
触ってみた感想 30
触ってみた感想 31 • 複雑な設定は要らず動かせた ◦ 模擬障害を発生させるとなると複雑な設定やエージェントが必要そうなイメージがあった • DRテストもFISを利用すれば試しやすい ◦ 今回の検証では簡素なDR構成だったが、本番稼働する環境でもDRのテストを実施できそう