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
rakusmeetup-number-4-infrastructure
Search
mekka
August 28, 2019
Technology
0
560
rakusmeetup-number-4-infrastructure
レンタルサーバでたびたび起こる障害について、対応と対策をお話させてもらおうとおもいます。
mekka
August 28, 2019
Tweet
Share
More Decks by mekka
See All by mekka
ArgoCDによるGitOps導入 / ArgoCD GitOps
chmikata
0
70
KEDAで始めるイベント駆動システム #k8snovice / keda-tutorial
chmikata
1
340
新サービス立ち上げに向けたCI/CD環境の構築
chmikata
0
2.4k
rakusmeetup-number-4-operation
chmikata
1
630
Other Decks in Technology
See All in Technology
AWS re:Invent 2024で発表された コードを書く開発者向け機能について
maruto
0
190
Wantedly での Datadog 活用事例
bgpat
1
520
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
150
[Ruby] Develop a Morse Code Learning Gem & Beep from Strings
oguressive
1
170
開発生産性向上! 育成を「改善」と捉えるエンジニア育成戦略
shoota
2
400
終了の危機にあった15年続くWebサービスを全力で存続させる - phpcon2024
yositosi
17
15k
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
230
Fanstaの1年を大解剖! 一人SREはどこまでできるのか!?
syossan27
2
170
DevOps視点でAWS re:invent2024の新サービス・アプデを振り返ってみた
oshanqq
0
180
PHPからGoへのマイグレーション for DMMアフィリエイト
yabakokobayashi
1
170
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
460
TSKaigi 2024 の登壇から広がったコミュニティ活動について
tsukuha
0
160
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
Automating Front-end Workflow
addyosmani
1366
200k
Speed Design
sergeychernyshev
25
670
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Why Our Code Smells
bkeepers
PRO
335
57k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Faster Mobile Websites
deanohume
305
30k
We Have a Design System, Now What?
morganepeng
51
7.3k
Adopting Sorbet at Scale
ufuk
73
9.1k
Transcript
#RAKUSMeetup ©2019 RAKUS Co., Ltd. ©2019 RAKUS Co., Ltd. 障害対応と対策
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 自己紹介 • 名前:下西 章王 (しもにし
あきおう) • 出身:大阪府 • 趣味:ゴルフ、野球、モンハン、麻雀、etc… • 入社:2015年 4月 (5年目) • 業務内容: レンタルサーバの運用・保守 コーポレートサイト・サービスサイトの運用・保守 BlastMailの運用・保守
#RAKUSMeetup ©2019 RAKUS Co., Ltd. レンタルサーバとは • いわゆるPaaS • ネットワーク・OS・MWを提供。
• 主にウェブ・メールをお客様が利用しています。 • 今回は複数顧客が同居する共用レンタルサーバのお話
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 本日のテーマ 肝を冷やした話 インフラを運用していて ヒヤリハットって何があるだろう… ハットしたときには事故ってる…
#RAKUSMeetup ©2019 RAKUS Co., Ltd. ヒヤリハット体験 インフラあるあるかもしれないですが、 この辺がよくあるヒヤリ(アウト)なのかなーと。 ・stagingとproduct環境を間違えてリブートしちゃった。 ・rm
–rf /* をたたきそうになった。 ・障害対応 今回は障害対応についてお話させていただこうと思います。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 障害対応のお話 レンタルサーバで起こる障害対応 • スパム配送の踏み台にされてメール遅延 •
アクセス集中でサービスダウン • サーバの物理故障 がよく見かける障害です。 このあたりについて対応と対策についてお話しできればと。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 障害の分析
#RAKUSMeetup ©2019 RAKUS Co., Ltd. にはちの法則(パレートの法則) にはちの法則とは、マーケティング用語で、 「売り上げの80%を生み出しているのは、上位20%の顧客」 という法則。(専門じゃないので知りたい方は調べてみてください。) これを障害対応に置き換えれば、
「障害の80%を生み出しているのは、上位20%の原因」 つまり 「上位20%の原因を潰せば、80%の障害が減る」
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 本当に?
#RAKUSMeetup ©2019 RAKUS Co., Ltd. にはちの法則(パレートの法則) 0 20 40 60
80 100 120 140 160 180 200 スパム配送 アクセス集中 その他 物理故障 2015年 障害発生件数 スパム配送が9割 原因を1つ潰せば 約90%の障害を潰すことができる! ということでスパム配送についてみていきましょう。 約9割
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 共用サーバの対応方針
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 共用サーバの障害対応方針 1顧客が悪さをした場合、 顧客全体に影響があるため、即時対応が必要。 「1を捨て、全を守る。」という精神のもと、 心を鬼にして悪さをした顧客に対して対応。
例) A顧客 ←影響を受ける B顧客 ←悪さをした顧客 C顧客 ←影響を受ける ・ ・ Z顧客 ←影響を受ける
#RAKUSMeetup ©2019 RAKUS Co., Ltd. ではスパム配送がなぜ起こるの か見ていきましょう
#RAKUSMeetup ©2019 RAKUS Co., Ltd. スパム配送の原因 スパムが配送される原因としてあるあるなものが、 ・顧客のメールアカウントがクラックされる。 ・スパム配送プログラムが顧客環境に設置される。 上記がよくあるスパムの踏み台にされる原因です。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 顧客のメールアカウントがクラック 〇原因 ・顧客が設定しているパスワード強度が弱い。 そのためブルートフォースや辞書攻撃などでパスワードが破られる 〇対応
・クラックされているメールアカウントを 特定してパスワード変更
[email protected]
メールアカウントを クラック
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 顧客のメールアカウントがクラック 〇対策 ・パスワードポリシーの設定 ・ロックアウト値の設定 ・1時間あたりの送信数上限を設定
[email protected]
メールアカウントを クラック
#RAKUSMeetup ©2019 RAKUS Co., Ltd. スパム配送プログラム 〇原因 ・95%はWordpressを利用している顧客。 ・90%は特定の場所にプログラムを設置 〇対応
・プログラムを探して排除。 ・POSTリクエストが送られていることが多いため、 POSTリクエストに対してBasic認証を設定。 wp-content/uploads/spam.php Wordpressを クラック 設置 POSTリクエスト 1 2 3 4 4 4 4 4 4
#RAKUSMeetup ©2019 RAKUS Co., Ltd. スパム配送プログラム 〇対策 ・Wordpressの場合、スパム配送プログラムが 「wp-content/uploads/」に設置されているため、 .htaccessでphpが動かないように対策。
wp-content/uploads/spam.php Wordpressを クラック 設置 POSTリクエト 1 2 3 ここをブロック!
#RAKUSMeetup ©2019 RAKUS Co., Ltd. アクセス集中対策 「にはちの法則」のスライドで「スパム対策すれば9割の障害が減らせる」 と記載しましたが、 「そうは言っても他の対策も進めていきます。」
#RAKUSMeetup ©2019 RAKUS Co., Ltd. ではアクセス集中がなぜ起こる のか見ていきましょう
#RAKUSMeetup ©2019 RAKUS Co., Ltd. アクセス集中の話 アクセス集中が発生して、ウェブサーバが落ちる原因としてあるあるなのが ・顧客がテレビなどで放送されて、一時的にアクセスが増加した ・DDoS攻撃 ・etc
ウェブサーバはApacheを利用しているため、 Apacheのモジュールを利用した対策のお話をさせてもらいます。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. アクセス集中の話 ・mod_bw Apacheのモジュールで帯域制限や接続数上限を変えられるもの。 このモジュールをバーチャルホストごとに接続数上限を設定することで、 アクセス集中が発生したときに1ドメインだけ制限がかけられるようになる。
Apacheの接続数上限 > バーチャルホストごとの接続数 このように設定することで別顧客のサイトは落とされないようになる。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 対策の効果 にはちの法則で対策するべき障害ジャンルがわかったため 実際に対策してきた効果を確認していきましょう。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. にはちの法則の効果 192 14 4 1
126 2 4 0 0 50 100 150 200 250 スパム配送 アクセス集中 その他 物理故障 障害発生内容 2015年 障害件数 2018年 障害件数 スパム配送 … 約3.5割 アクセス集中 … 約8.5割 削減に成功!
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 実際にあった怖い話 障害の対応・対策の話はここまでです。 ここからは実際にあった物理故障で涙目になったお話。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の恐怖
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 物理的にサーバが故障してしまった時のお話です。 壊れて一番困るものが「ハードディスク」です。 このハードディスクはお客様のデータが入っている重要なもの。 そのためデータが消失しないようにRAIDという技術を使って
データが消失しないようにしています。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 共用サーバのハードディスクはRAID10を使っています。 RAID0 … 2つ以上のハードディスクを1つのハードディスクと扱い、容量を大きくする技術
1つでもハードディスクが壊れれば復旧不可能 RAID1 … 2つのハードディスクを使って2本に同じデータを書き込む技術 1つのハードディスクが壊れても復旧が可能。2本壊れると復旧不可 RAID10 … RAID0とRAID1を組み合わせた技術。 RAID0 RAID1 RAID10
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 昔はRAID1を利用していて、 RAID1のハードディスクの片方が故障したのを検知しました。 サーバを購入したベンダーの保守に入っているため、 ハードディスク交換をしてもらうことに…
データセンターへ入局し、 保守のエンジニアの方との会話を進めていると…
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 下西 :では、ディスク交換の作業お願いします! 担当者:ではまずログを見させてもらいますね。 ログ確認中…
担当者:これ両方のディスクでエラーが出力されてますね。 リビルドはできないかもしれないです。 できたとしてもエラーも一緒にリビルドされる可能性があります。 下西 :ん?それってエラー出力されっぱなしということでしょうか?
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 担当者:そうですね。 正常にリビルドが完了しないかもしれないです。 リビルドできないとなると環境の再構築になります。 その場合、データはすべて消えます。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. 物理故障の話 やるしかない状況でだったのでディスク交換を実施。 ディスク交換作業が完了し、 リビルドが完了したときには特にエラーはなく、 環境の再構築はなくなりました。
ディスク故障マジ怖かったです。 リビルド中は割は涙目になりながら見守っていました。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. あとがき
#RAKUSMeetup ©2019 RAKUS Co., Ltd. あとがき どれだけ対策しても障害は発生してしまいます。 早期発見・早期対応が重要。 監視、対応フローを整備して、お客様にできるだけ迷惑をかけず、 我々エンジニアの障害対応時間も削減することを目指すことが大事。
トラブル対応は精神も削られ、焦って2次災害を起こすこともあるため 予行練習もやっておきましょう。
#RAKUSMeetup ©2019 RAKUS Co., Ltd. あとがき そもそも障害の対策しようという話になったのも、 マンパワーで障害対応をしている時間がもったいないからです。 エンジニアは技術を使って世の中をよくすることがお仕事なので 障害や定常的な作業を削減して、エンジニアリングの時間を増やす。
という目的のもと、これからも頑張ります!
#RAKUSMeetup ©2019 RAKUS Co., Ltd. ご清聴ありがとうございました