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
81
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
機械学習を「社会実装」するということ 2025年版 / Social Implementation of Machine Learning 2025 Version
moepy_stats
5
1.3k
My small contributions - Fujiwara Tech Conference 2025
ijin
0
1.4k
Git scrapingで始める継続的なデータ追跡 / Git Scraping
ohbarye
5
500
20250116_JAWS_Osaka
takuyay0ne
2
200
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
210
Docker Desktop で Docker を始めよう
zembutsu
PRO
0
180
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
120
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
2
490
ABWGのRe:Cap!
hm5ug
1
120
re:Invent2024 KeynoteのAmazon Q Developer考察
yusukeshimizu
1
150
今年一年で頑張ること / What I will do my best this year
pauli
1
220
KMP with Crashlytics
sansantech
PRO
0
240
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
Agile that works and the tools we love
rasmusluckow
328
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
3
180
Code Reviewing Like a Champion
maltzj
521
39k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
The Invisible Side of Design
smashingmag
299
50k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
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. ご清聴ありがとうございました