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
JAWS-UG朝会_41_NakagawaAkihiro.pptx.pdf
Search
sam
January 17, 2023
Technology
2
1.3k
JAWS-UG朝会_41_NakagawaAkihiro.pptx.pdf
sam
January 17, 2023
Tweet
Share
More Decks by sam
See All by sam
20210422-JAWS-UG朝会-中川皓紘
anakagawa
0
180
20210407-ヤマムギvol.12-中川皓紘
anakagawa
0
380
Other Decks in Technology
See All in Technology
With Devin -AIの自律とメンバーの自立
kotanin0
2
110
20250719_JAWS_kobe
takuyay0ne
1
160
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
130
AWS Well-Architected から考えるオブザーバビリティの勘所 / Considering the Essentials of Observability from AWS Well-Architected
sms_tech
1
860
Step Functions First - サーバーレスアーキテクチャの新しいパラダイム
taikis
1
280
会社もクラウドも違うけど 通じたコスト削減テクニック/Cost optimization strategies effective regardless of company or cloud provider
aeonpeople
2
170
OpenTelemetry の Log を使いこなそう
biwashi
5
1k
Kiro Hookを Terraformで検証
ao_inoue
0
100
分散トレーシングによる コネクティッドカーのデータ処理見える化の試み
thatsdone
0
240
QuickBooks®️ Customer®️ USA Contact Numbers: Complete 2025 Support Guide
qbsupportinfo
0
110
「現場で活躍するAIエージェント」を実現するチームと開発プロセス
tkikuchi1002
6
1k
Data Engineering Study#30 LT資料
tetsuroito
1
580
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Thoughts on Productivity
jonyablonski
69
4.7k
Art, The Web, and Tiny UX
lynnandtonic
301
21k
The Cult of Friendly URLs
andyhume
79
6.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Done Done
chrislema
184
16k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
We Have a Design System, Now What?
morganepeng
53
7.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Transcript
EC2にてDisk枯渇が発生した場合に何が 起きるのかと対応方法 ハンズラボ株式会社ハンズ事業部CRMグループSREチーム 中川皓紘 2023年01月17日 ハンズラボ株式会社 1
自己紹介 2 名前:中川皓紘(Nakagawa Akihiro) 経歴:2020/12 ~ ハンズラボ株式会社勤務 出身地:神奈川県 Twitter:@sam_eng3336 趣味:カメラ,
旅行, 技術検証, 最近リモワで太ったのでダイエット中 etc… ※写真はイメージです
早速本題へ! 3 皆様はDiskの管理や監視をしていますか!?
障害対応フロー(起動できる場合) 4 EC2へ接続できる場合 ・SSHで接続 ・SystemsManagerで接続 ・シリアルコンソールで接続 EC2へ接続できない場合 ・再起動 ・ユーザーデータによる対応 ・起動できないパターン時の対応など
Tips EBSの残容量を増やす方法に拡張という 選択肢があるがAL2の場合コマンドで パーティションを変更する必要があるので こういった場合には使いにくい
障害対応フロー(起動できない場合) 5 Step1 ・起動確認 ・CloudWatchのメトリックス等確認 ・Disk監視等あれば状況確認 Step2 ・障害中EC2インスタンスの停止 ・EBSのデタッチ ・復旧用EC2インスタンスにアタッチ
・復旧作業 Step3 ・復旧させたEBS Aを元のEC2へア タッチし直す ・起動テスト
6 一番汎用的に対応できそうなこのパタ ーンを検証してみた
EC2インスタンスを使って検証 7 これによりDisk枯渇状態を再現できた! ・現在のDisk残容量を確認 ・約6.5GBの残容量がある ・残容量不足を再現するために 6.6GBのファイルを作成する ・No space left
no deviceの警告が出ている ・Disk残容量0%状態になっていることを確認
障害を意図的に起こす 8 Disk枯渇状態から再起動実施 Diskが足りずOSが起動できない or ミドルウェアが立ち上がらない ・起動不可 ・起動はできるがセッションマネージャで接続できない
復旧手順(AWSコンソール上での作業) 9 Step1 障害を起こしたEC2インスタンスからEBSをデタッチ ※EC2は予め停止しておく Step2 復旧用EC2インスタンスに先程デタッチした EBSをアタッ チする Step3
復旧用EC2インスタンスを起動する
復旧手順(EC2内部での作業) 10 dfコマンドにてDisk状態を確認 ↓ 新規でアタッチしたEBSはマウントされない ・「sdf1」でアタッチしたが、インスタンス内部では「xvdf1」でアタッチされている ・そのまま「/dev/xvdf1」を「/mnt/ebs」にマウントを実施 ↓ ・エラーが発生してマウントできない
復旧手順(EC2内部での作業) 11 ・「/var/log/messages」にてエラー原因を確認 ・DiskのUUIDが重複しマウント不可になっている 「blkid」でDiskのUUIDを確認すると競合してることが確認できる
復旧手順(EC2内部での作業) 12 「mount」コマンドのオプション「 -o nouuid」を設定 ※今回は一時的なマウントなので UUIDの競合を無視
復旧手順(EC2内部での作業) 13 ・「du」コマンドで先程マウントした「 /mnt/ebs/*」内部のDiskを精査 ・今回作成したダミーファイルを確認 ・削除後Disk残容量を確認 Disk残容量が危険域から脱したので元の EBSへ再アタッチを実施する
復旧手順(EC2内部での作業) 14 ・復旧用EC2の「停止」を実行 ・復旧用EC2から対象のEBSをデタッチし元のEC2へアタッチ ・障害を起こしていたEC2を起動 ・EC2内部へ接続しDisk残容量を再度確認する
復旧手順(EC2内部での作業) 15 ・「du」コマンドで先程マウントした「 /mnt/ebs/*」内部のDiskを精査 ・今回作成したダミーファイルを確認 ・削除後Disk残容量を確認 無事復旧!
Copyright © All rights reserved. 製作者:中川皓紘 お わ り