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
620
rakusmeetup-number-4-infrastructure
レンタルサーバでたびたび起こる障害について、対応と対策をお話させてもらおうとおもいます。
mekka
August 28, 2019
Tweet
Share
More Decks by mekka
See All by mekka
ArgoCDによるGitOps導入 / ArgoCD GitOps
chmikata
0
220
KEDAで始めるイベント駆動システム #k8snovice / keda-tutorial
chmikata
1
430
新サービス立ち上げに向けたCI/CD環境の構築
chmikata
0
2.9k
rakusmeetup-number-4-operation
chmikata
1
690
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
93k
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
190
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
190
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
450
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
120
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
480
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
100
Featured
See All Featured
Making Projects Easy
brettharned
120
6.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
71k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
76
Building an army of robots
kneath
306
46k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
67
Discover your Explorer Soul
emna__ayadi
2
1.1k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Design in an AI World
tapps
0
140
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. ご清聴ありがとうございました