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
8/23 Developers.IOブログに 何が起きたか
Search
suzryo
November 01, 2019
Technology
0
1.6k
8/23 Developers.IOブログに 何が起きたか
AWS東京リージョン障害のあった2019年8月23日、Developers.IOブログに
何が起きたか紹介します。
suzryo
November 01, 2019
Tweet
Share
More Decks by suzryo
See All by suzryo
re:Invent2024 事前勉強会 AWS Gameday 参加のポイント
suzryo
0
900
20230630-JAWSUG札幌LT-AWSオンライン試験のコツ
suzryo
1
200
ipv6-aws-20210714-infrastudy-2nd-03
suzryo
0
41
Graviton2を使う理由について語ってみる
suzryo
0
120
ラスベガスへの行き方を調べてみた
suzryo
0
190
AWS Globel Accelerator を導入してみた話 @ JAWS-UG東京 #32 - マイベストヒット2019
suzryo
0
820
Developers.IOを支えるインフラの全て
suzryo
0
100
クラメソのWebサイトを支える技術
suzryo
1
2.1k
Stream Batch Pattern
suzryo
1
3k
Other Decks in Technology
See All in Technology
マイクロサービスにおける容易なトランザクション管理に向けて
scalar
0
140
AI時代のデータセンターネットワーク
lycorptech_jp
PRO
1
290
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.3k
Amazon Kendra GenAI Index 登場でどう変わる? 評価から学ぶ最適なRAG構成
naoki_0531
0
120
How to be an AWS Community Builder | 君もAWS Community Builderになろう!〜2024 冬 CB募集直前対策編?!〜
coosuke
PRO
2
2.8k
非機能品質を作り込むための実践アーキテクチャ
knih
5
1.5k
プロダクト開発を加速させるためのQA文化の築き方 / How to build QA culture to accelerate product development
mii3king
1
270
WACATE2024冬セッション資料(ユーザビリティ)
scarletplover
0
210
ハイテク休憩
sat
PRO
2
170
C++26 エラー性動作
faithandbrave
2
790
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
400
pg_bigmをRustで実装する(第50回PostgreSQLアンカンファレンス@オンライン 発表資料)
shinyakato_
0
100
Featured
See All Featured
Docker and Python
trallard
42
3.1k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
95
17k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Facilitating Awesome Meetings
lara
50
6.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Transcript
࣮Ϋϥϝι࣌ %FWFMPQFST*0ϒϩάʹ Կ͕ى͖͔ͨ "84ࣄۀຊ෦ɹίϯαϧςΟϯά෦ ླ྄ #cmdevio5
ࣗݾհ
ࣗݾհ • ࢯ໊ླɹ྄ɹ ͖ͣ͢Γΐ͏ • 5XJUUFSTV[SZP • ॴଐΫϥεϝιου"84ࣄۀຊ෦
Solutions Architect - Professional DevOps Engineer - Professional Big Data - Specialty Security - Specialty Solutions Architect - Associate Developer - Associate SysOps Administrator - Associate
͖ͳ"84αʔϏε "NB[PO3PVUF "NB[PO,JOFTJT
"84ϧτϥΫΠζͰ༏উ͖ͯͨ͠ "844VNNJUSF.JY IUUQTEFWDMBTTNFUIPEKQDMPVEBXTTVNNJUUPLZPVMUSBRVJ[
ΞδΣϯμ w %FWFMPQFST*0ϒϩάج൫ ɹߏɺಛɺӡ༻ w ౦ژϦʔδϣϯোதʹԿ͕ى͖͔ͨ ɹൃੜɺௐࠪɺાஔɺใࠂ w োޙʹ࣮ࢪͨ͠࠶ൃରࡦ
ɹվળ w ·ͱΊ
Developers.IO ϒϩάج൫ ߏ
ϒϩάج൫ͱͯ͠ ϨΨγʔͳWordPressڥͰ͢
%FWFMPQFST*0ϒϩάͷߏਤ
࣌ͷهࣄ IUUQTEFWDMBTTNFUIPEKQTFSWFSTJEFOHJOYXPSEQSFTTFYQJSF
#FTU1SBDUJDFTGPS8PSE1SFTTPO"84 IUUQTEBXTTUBUJDDPNXIJUFQBQFSTXPSEQSFTTCFTUQSBDUJDFTPOBXTQEG
8IPMFXFCTJUFEFMJWFSZWJB"NB[PO$MPVE'SPOU $MPVE'SPOUܦ༝Ͱ8PSE1SFTTڥΛެ։
3FGFSFODFBSDIJUFDUVSFGPSIPTUJOH8PSE1SFTTPO"84 "VSPSBɺ&MBTUJ$BDIFɺ&'4Λ׆༻ͨ͠ߴՄ༻ੑߏͳͲհ͞Ε͍ͯ·͢
Developers.IO ϒϩάج൫ ಛ
%FWFMPQFST*0ϒϩάͷಛ େྔʹྔ࢈͞ΕΔهࣄ
%FWFMPQFST*0࣮ ݄ؒهࣄܝࡌ ฏۉʙهࣄ
Ξτόϯυ௨৴τϥϑΟοΫ ࣌ؒฏۉ IUUQE /HJOY $MPVE'SPOU
ϦΫΤετ݅ ࣌ؒฏۉ IUUQE /HJOY $MPVE'SPOU
Developers.IO ϒϩάج൫ ӡ༻
Քಇඪ 4-0 Քಇ99.95% (ڐ༰μϯλΠϜ݄ؒ20)
ࢹ
8PSE1SFTT 8PSE1SFTTͱ%#ʹґଘ͢Δػೳͷҟৗ Developers.IO ϒϩάج൫
&MBTUJD#FBOTUBML֦ுϔϧενΣοΫ ϔϧεʮ0,ʯҎ֎͕ܧଓɺࣗಈ෮چͰճ෮͠ͳ͔ͬͨ߹ʹ௨ Developers.IO ϒϩάج൫
&MBTUJD#FBOTUBML֦ுϔϧενΣοΫϩά $MPVE8BUDI-PHT*OTJHIU͕ศརͰ͢ Developers.IO ϒϩάج൫
Ωϟογϡ /HJOYɺ$MPVE'SPOU /HJOYͱɺ$MPVE'SPOU৴ͷਖ਼ৗੑ Developers.IO ϒϩάج൫
3PVUFϔϧενΣοΫ 63-ࢹɺ֎ܗࢹΛ࣮ࢪ Developers.IO ϒϩάج൫
%# "VSPSB ϘτϧωοΫͱͳΔ%#ͷߴෛՙΛݕ Developers.IO ϒϩάج൫
ύϑΥʔϚϯεΠϯαΠτ %#ϩʔυɺ࿈ଓ্ͨ͠ঢΛաෛՙͱͯ͠௨ Developers.IO ϒϩάج൫
༗ਓࢹ Developers.IO ϒϩάج൫ ৗ࣌୭͔͕ࣥචதɻෆ۩߹࿈བྷࣾ4MBDLʹల։
3PVUFϔϧενΣοΫͱͷൺֱ 3PVUFϔϧενΣοΧʔա͕ΤϥʔͱͳΔલʹݕग़ Developers.IO ϒϩάج൫
όοΫΞοϓ
όοΫΞοϓର "VSPSB هࣄ%# ͱ4 هࣄͷը૾ ͷফࣦઈରʹճආ Developers.IO ϒϩάج൫
4 όʔδϣχϯά ΫϩεϦʔδϣϯϨϓϦέʔγϣϯ ॏԽ Developers.IO ϒϩάج൫
"VSPSB "VSPSBετϨʔδ ॏԽ εφοϓγϣοτ %#μϯϓͷ4ΤΫεϙʔτ ॏԽ Developers.IO ϒϩάج൫
"VSPSB άϩʔόϧσʔλϕʔε ˞ۙධՁ༧ఆ "VSPSBάϩʔόϧσʔλϕʔε ౦ژ݄ϦϦʔε ʹΑΔɺ ౦ژɺΦϨΰϯؒͷ%#ಉظ Developers.IO ϒϩάج൫
ϦΧόϦʔ
࠶ىಈӡ༻ աෛՙ%#ͷ࠶ىಈɺεϖοΫௐ Developers.IO ϒϩάج൫
%#ϦετΞ %#ϦετΞ͢Δ߹ɺΞϓϦͷڥมΛมߋ Developers.IO ϒϩάج൫
%3 େنϦʔδϣϯোఆ ผϦʔδϣϯʹ࣮ߦڥΛల։ɺެ։༻ͷΤϯυϙΠϯτΛௐ͠࠶։ Developers.IO ϒϩάج൫
མͪͳ͍αΠτͰ͋Γ·ͤΜɻ ෮׆Ͱ͖ΔࣄΛࢦͨ͠αΠτͰ͢
ΞδΣϯμ w %FWFMPQFST*0ϒϩάج൫ ɹߏɺಛɺӡ༻ w ౦ژϦʔδϣϯোதʹԿ͕ى͖͔ͨ ɹൃੜɺௐࠪɺાஔɺใࠂ w োޙʹ࣮ࢪͨ͠࠶ൃରࡦ
ɹվળ w ·ͱΊ
8/23 Developers.IO ϒϩά ͳʹ͕ى͖͔ͨ
౦ژϦʔδϣϯোதͷϒϩάՔಇΛհ͠·͢ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBQOFB[EPXOEFWJP
"844FSWJDF)FBMUI%BTICPBSE 4)% IUUQTTUBUVTBXTBNB[PODPN"1@CMPDL Developers.IO ϒϩάج൫
4)%ܝࡌࣄ߲ൈਮ Developers.IO ϒϩάج൫ ࣌ࠁ +45 ࣄ ۭௐނোɺΦʔόʔώʔτʹΑΓ&$͕ఀࢭ
&$ͷ"1*ΤϥʔϨʔτ্ঢ ۭௐ෮چɺΦʔόώʔτͰఀࢭͨ͠&$ճ෮։࢝ େ෦ͷ&$͕ճ෮
ɹোൃੜ ELB5XXΤϥʔ্ঢ
ো௨ &MBTUJD#FBOTUBMLεςʔλεҟৗΛݕ Developers.IO ϒϩάج൫
ௐࠪ։࢝
&MBTUJD#FBOTUBMLμογϡϘʔυ ࠒΑΓ)551YY͕ൃੜ͍ͯͨ͠ࣄΛ֬ೝ Developers.IO ϒϩάج൫
$MPVE8BUDIϝτϦοΫ֬ೝ %BUBEPHμογϡϘʔυ Developers.IO ϒϩάج൫ &-#ͷ99ΤϥʔҎ֎ɺ%#ɺ&$ͷਖ਼ৗಈ࡞Λ֬ೝ
$MPVE8BUDIϝτϦοΫ &-#99Τϥʔোใࠂͷ͋ͬͨ"; BQOPSUIFBTUB ͷΈͰൃੜ͍ͯ͠ΔࣄΛ֬ೝ Developers.IO ϒϩάج൫
99Τϥʔৄࡉɺ&-#ͷΞΫηεϩάΑΓௐࠪ։࢝ "-#ͷΞΫηεϩάఔͷλΠϜϥάͰ"UIFOBղੳՄೳʹ͢ΔΈΛհ͠·͢ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBMCMPHTRTEFpSFIPTF Developers.IO ϒϩάج൫
&-#ΞΫηεϩάʮXBGGBJMEʯݕग़ 99Τϥʔͷେ͕Τϥʔίʔυ෦αʔόΤϥʔ ʮXBGGBJMEʯͷग़ྗΑΓ"848"'ؔͷͱਪఆ Developers.IO ϒϩάج൫
&-#ΞΫηεϩάʮXBGGBJMEʯ֘Ϩίʔυ +40/Խͨ͠ΞΫηεϩά֬ೝɺ44FMFDUɺ+2ͳͲซ༻ Developers.IO ϒϩάج൫
"84υΩϡϝϯτ"QQMJDBUJPO-PBE#BMBODFSͷτϥϒϧγϡʔςΟϯά IUUQTEPDTBXTBNB[PODPNKB@KQFMBTUJDMPBECBMBODJOHMBUFTUBQQMJDBUJPOMPBECBMBODFS USPVCMFTIPPUJOHIUNMIUUQJTTVFT Developers.IO ϒϩάج൫
AWSWAF
"848"'ηΩϡϦςΟΦʔτϝʔγϣϯ 944ɺ42-Jɺ)551'MPPEɺ*13FQVUBUJPOϧʔϧར༻த IUUQTBXTBNB[PODPNKQTPMVUJPOTBXTXBGTFDVSJUZBVUPNBUJPOT Developers.IO ϒϩάج൫
"848"'Ϛωʔδυϧʔϧݕূ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBXTSFJOWFOUXBGNBOBHFESVMFUSZ Developers.IO ϒϩάج൫
ৄࡉͳΞΫηεϩάճऩ ϦΫΤετϔομ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBXGXBGDPNQSFIFOTJWFMPHHJOH Developers.IO ϒϩάج൫
৵ೖࢭγεςϜ *%4 Ҿୀࡁ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTJETXJUILJOFTJTXBG Developers.IO ϒϩάج൫
8"'ͷϒϥοΫϦετ*1ࣗಈߋ৽͢ΔΈ ηΩϡϦςΟΦʔτϝʔγϣϯ -BNCEB ɺ8"'ͷϨʔτϧʔϧͰସ Developers.IO ϒϩάج൫
8"'ಈ࡞ঢ়گΛ֬ೝ "848"'ϒϩοΫ࣮ΑΓɺແޮԽʹΑΔϦεΫΛஅ Developers.IO ϒϩάج൫
ાஔ
8"'ແޮԽ "848"'"$-ͷର͔Β"-#Λআ֎ Developers.IO ϒϩάج൫
$MPVE8BUDIϝτϦοΫ֬ೝ &-#99 8"'อޢఀࢭޙɺ99Τϥʔऩଋ Developers.IO ϒϩάج൫
";Bͷ"-#ɺ8"'ͰԿΒ͔ͷൃੜͱਪఆ Developers.IO ϒϩάج൫ "84ޙൃද ʹΑΔͱɺ 8"'εςοΩʔηογϣϯ༗ޮͱͨ͠Ұ෦ͷ"-#Ͱൃੜͨ͠ʹ֘
$MPVE8BUDIϝτϦοΫ֬ೝ %BUBEPHμογϡϘʔυ Developers.IO ϒϩάج൫ &-#ͷ99Τϥʔͷऩଋͱɺ%#ɺ&$ͷਖ਼ৗಈ࡞Λ֬ೝ
ใࠂ
ใల։(ࣾ)
ࣾใࠂ 4MBDL Developers.IO ϒϩάج൫
ࣾใࠂ 4MBDL "848"'͕༗ޮͳผڥͰྨࣅͷࣄΛ֬ೝ Developers.IO ϒϩάج൫
ࣾใࠂ 4MBDL Developers.IO ϒϩάج൫
ใల։(AWSαϙʔτ)
"84αϙʔτέʔεىථ Developers.IO ϒϩάج൫
"84αϙʔτέʔεىථ༰ͷൈਮ Developers.IO ϒϩάج൫ ɾELBɺWAF࿈ܞͷΒ͍͠ه͕ɺELBͷΞΫηεϩάɺactions_executed ʹࣔ͞Ε͍ͯΔࣄɻ ɾWAFͷACLઃఆͰɺอޢରͷELBΛআ֎ͨ͠ޙɺ5XXΤϥʔͷൃੜऩଋͨ͠ࣄΑΓɺ ԿΒ͔ͷ͕ELB(ALB)ɺWAFؒͰൃੜ͍ͯͨ͠ͷͱਪଌ͞Ε·͢ɻ https://status.aws.amazon.com/#AP_block ɾAmazon
Elastic Load Balancing (Tokyo) ɾAWS WAF Service is operating normally ELBɺWAFͷΤϥʔใެ։͞Ε͍ͯͳ͍༷ࢠͰ͕ͨ͠ɺ AWSαϙʔτଆͰѲ͞Ε͍ͯΔ੍ݶࣄ߲ͳͲ͋Εڞ༗͚Ε͍Ͱ͢ɻ
"84αϙʔτʹఏڙͨ͠"-#ΞΫηεϩάใൈਮ Developers.IO ϒϩάج൫ zcat log.gz | jq . |
grep '"elb_status_code":' | sort | uniq -c | sort -nr 11805 "elb_status_code": "200", 1615 "elb_status_code": "500", 1523 "elb_status_code": "304", 261 "elb_status_code": "403", 166 "elb_status_code": “301", 127 "elb_status_code": "404", 119 "elb_status_code": "400", 48 "elb_status_code": "460", 21 "elb_status_code": "302", 5 "elb_status_code": "401", 2 "elb_status_code": "504",
"84αϙʔτʹఏڙͨ͠"-#ΞΫηεϩάൈਮ Developers.IO ϒϩάج൫ "timestamp": "2019-08-23T05:53:50.767192Z", "elb": "app/awseb-AWSEB-xxxxxxxxxxx/xxxxxxxxxxx", "request_processing_time": -1,
"target_processing_time": -1, "response_processing_time": -1, "elb_status_code": "500", "target_status_code": "-", "request": "GET https://dev.classmethod.jp:443/cloud/aws/insufficientinstancecapacity/ HTTP/ "target_group_arn": "arn:aws:elasticloadbalancing:ap-northeast-1:xxxxxxxxxxx:targetgroup/a "trace_id": "Self=1-5d5f7f6c-f8b1df60e11e997011940890;Root=1-5d5f7f6c-fd7ec9703dd7b "request_creation_time": "2019-08-23T05:53:48.766000Z", "actions_executed": "waf-failed",
োൃੜͷཌʑ AWSެࣜใ
౦ژϦʔδϣϯͰൃੜͨ͠"NB[PO&$ͱ"NB[POͷࣄ֓ཁ IUUQTBXTBNB[PODPNKQNFTTBHF
౦ژϦʔδϣϯͰൃੜͨ͠"NB[PO&$ͱ"NB[POͷࣄ֓ཁ IUUQTBXTBNB[PODPNKQNFTTBHF
࣌ࣾ4MBDL Developers.IO ϒϩάج൫
ਂ Developers.IO ϒϩάج൫
োൃੜ͔Βޙ AWSެࣜใߋ৽
"84ެࣜϖʔδࣄ֓ཁه IUUQTBXTBNB[PODPNKQNFTTBHF
ΞδΣϯμ w %FWFMPQFST*0ϒϩάج൫ ɹߏɺಛɺӡ༻ w ౦ژϦʔδϣϯোதʹԿ͕ى͖͔ͨ ɹൃੜɺௐࠪɺાஔɺใࠂ w োޙʹ࣮ࢪͨ͠࠶ൃରࡦ
ɹվળ w ·ͱΊ
ରࡦհ
ෳͷ"WBJMBCJMJUZ;POFʹϓϩϏδϣχϯάͨ͠&-# "-# "VUP4DBMJOH(SPVQ͔Βಛఆ"WBJMBCJMJUZ;POF্ͷϦιʔεΛύʔδ͢Δ ";োͷରࡦखஈͷ֬อͱɺ";োͷӨڹ؇ͷͨΊʹ࣮ࢪ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTQVSHFSFTPVSDFTTQFDJpDB[
"-#ͷΞΫηεϩάʹΞϕΠΞϏϦςΟκʔϯใΛՃͯ͠Έͨ "-#ͷΞΫηεϩάϨίʔυʹ&-#ϊʔυใ͕ແ͍ͨΊɺ ϩάϑΝΠϧͷΩʔʹؚ·ΕΔ*1ใΛݩʹ-BNCEBͰϊʔυใΛิ͍ɺ"UIFOBूܭΛ࣮ݱ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBEEB[BMCBDDFTTMPH
$MPVE8BUDI-PHT*OTJHIUTͰ"-#ͷ&-#99ൃੜ࣌ͷΞΫηεϩάΛੳͯ͠Έͨ &-#99ΤϥʔϩάͷΈ$MPVE8BUDI-PHTʹసૹ͢Δ-BNCEBΛར༻͠ɺ "UIFOBΑΓ؆қͳΤϥʔϩά֬ೝखஈΛ֬อ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBMCYYDXMPHTJOTJHIUT
'JSFIPTFͰ1BSRVFUܗࣜʹมͨ͠"-#ͷΞΫηεϩάΛ"UIFOBͰղੳͯ͠Έͨ 'JSFIPTFͷྻࢤมΛར༻ɺ"UIFOBͷॲཧޮΛվળ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBMCMPHpSFIPTFQBSRVFU
'JSFIPTFͰ1BSRVFUܗࣜʹมͨ͠"-#ͷΞΫηεϩάΛ"UIFOBͰղੳͯ͠Έͨ %FW*0ͷ&-#ϩάॲཧͷઆ໌ࢿྉͰ͢ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTBMCMPHTRTEFpSFIPTF
(MPCBM"DDFMFSBUPSΛར༻ͯ͠#MVF(SFFOͳ&-#ަΛ࣮ࢪͯ͠Έͨ %FW*0ͷ&-#ɺ";ɺ*1WରԠͷڥަͨ͠खஈͰ͢ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTCMVFHSFFOFMCCZBHB
%FWFMPQFST*0͕*1WαϙʔτʹͳΓ·ͨ͠ *1Wো࣌ͷᷖճܦ࿏ͱͳΔࣄΛظͯ͠*1W༗ޮԽ͠·ͨ͠ Developers.IO ϒϩάج൫ IUUQTEFWDMBTTNFUIPEKQDMPVEBXTEFWJPTVQQPSUJQW
·ͱΊ
DevelopersIOαΠτͷऔΓΈʹ͍ͭͯ հ͖ͤͯ͞·ͨ͠
োվળʹܨ͕Δ ઈͷػձͱߟ͍͑ͯ·͢
γεςϜͷՌׂ͖ͨ͢ɺ ॏཁɺ՝͕໌ྎͳঢ়ଶͰɺ ΈΛߟ͑Δࣄ͕ग़དྷ·͢ɻ
Λఆྔతʹࣔ͢ϩάϝτϦοΫɺ ਖ਼͍͠அͷཁͱͳΓ·͢ɻ
Λڞ༗ɺվળΛଞʹٻΊΔ߹ʹɺ ࠜڌͱͳΔϩάϝτϦοΫ͕ॏཁͰ͢
ཱͭΈ͕ɺ AWSͰଟ͘ར༻ग़དྷ·͢ɻ
None