20140419【qpstudy】osとnw設計の勘所
TRANSCRIPT
OSとネットワーク設計の勘所
おおむら@yktko
自己紹介• おおむら ゆきたか • @yktko
• SIerなのに IaaSの中の人
• qpstudyスタッフ
• CloudStackユーザ会
• にーちゃん→おっさん
勘所 =ものごとの肝心なところ
勘所≒ノウハウ=失敗経験
おっさんの小言と 冷酒は あとで効く
#ITインフラ親父の小言• 流してみた
• ITインフラ親父多いw
http://togetter.com/li/656368
OSとネットワーク設計の 勘所おっさんの小言
OSとネットワーク設計の 勘所おっさんの小言
1. レイヤ感覚
2. 時間感覚
3. トラブル感覚
OS/ネットワーク設計の勘所(その1)
レイヤ感覚
レイヤ感覚とは?• OSやNWでだいたいどこが何をやっているのかわかること • 何かするとき具体的にどこで処理が行われているかわかること
カーネル
ネットワーク※図はインターネットから頂きました ディスクIO
ネットワークの経路
NIC スイッチ ルータ FW LAN/WAN
OS
アプリ
ネットワークのレイヤ感レイヤ 問題になりそうなところ OSIレイヤアプリ コネクション管理、タイマ 5~7
NWスタック パケット分割・送信処理 4~2NICドライバ カーネル/NICとの相性 1~2NIC リンク方式、ファーム 1~2
ケーブル等 物理的破損 0スイッチ リンク速度、MAC重複 1~2ルータ ルーティング 3FW アクセス制御 3~4WAN 網障害 0~4その先 それ俺ですか 10
ディスクアクセスの経路
サーバ サーバ サーバ
ディスクアクセスのレイヤ感レイヤ 問題になりそうなところアプリ アプリ実装(CPU使用率のusrが高い)
ファイルシステム FSの特性(RW速度はext4<<xfs)キャッシュ OSキャッシュの乗り方IOスケジューラ カーネルスケジューラの特性ドライバ バグ、相性
CNA/NIC/HBA ファームバグ/リンク速度通信経路 物理破損、スイッチなど
コントローラ コントローラCPU使用率キャッシュ ストレージアーキテクチャディスク そのものの性能、RAID構成
カーネルのレイヤ感• Kernel Panicになってもサジを投げない
• 関数名を見ればだいたい問題箇所がわかる
• ドライババグやメモリ不足に起因する事象が多い
http://manual.atmark-techno.com/armadillo-guide/armadillo-guide-1_ja-2.0.0/ch02.html
レイヤ感覚• ネットワークのレイヤ感 • カーネルのネットワークスタック • OSIモデル
• ディスクアクセスのレイヤ感 • カーネルのデバイスアクセス構成 • SAN • ストレージアーキテクチャ
• カーネルのレイヤ感 • カーネルの大まかな構造
参考資料
• 「Linuxカーネル解読室」 • Linuxカーネル2.6系の概要を知るのにオススメ
• 最近のオススメがあれば教えてください
http://sourceforge.jp/projects/linux-kernel-docs/wiki/%E7%9B%AE%E6%AC%A1
CM: お気に入りの日本酒
山形 出羽桜酒造
「出羽桜」純米吟醸
OS/ネットワーク設計の勘所(その2)
時間感覚
OS/ネットワーク設計の勘所(その2)
お前それ
1年後でも
同じこと言えんの?
cronの罠• 先輩: ちょっとバックアップとっといて
• あなた:はい
!
• 先輩: はいじゃないが
• #vi /etc/crontab • 1 * * * * * root tar cvzf /tmp/uploads-`date +%Y%m%d`.tgz -C /var/www/html uploads
数ヵ月後• ログインしたら毎回メッセージ出ませんか • you have new mail in /var/spool/mail/root
• サーバがへんな動きしてませんか • File System Full
• ls ‒l /var/spool/mail/root • ああああ
• ls -l /tmp • うぇぇぇ
• df, du -k /tmp • くぁsdsかだしfじゃlsdかjsjdlふじこp
cronの罠• cronの標準出力はファイルに出す • 自動化するとき、おっさんとの約束
お前それ
1年後でも
同じこと言えんの?
ログのローテーション• ログ抜け、ログ溢れ、監視できてない • ローテーション方式
!
!
• ログ切り替えタイミング
方式 内容 注意コピー退避 別ファイルにコピー コピー中の抜け
オリジナル移動 元ファイルを移動 書出先FDをリセット
方式 内容 注意サイズ固定切り替え 一定サイズで切替 時間で切れないサイズ固定上書き 一定サイズで戻る 消える時間で切替 一定時刻で切替 ディスク溢れ件数固定 一定件数で切替 消える
えいえんはあるよないよ208.5日
248日
497日
2004/01/11
2012/07/01
2038/01/19
http://irs.ietf.to/past/docs_20080808/2008-09-11-IRS17-XXX-days-Problems-nishino.pdfhttp://itpro.nikkeibp.co.jp/free/NC/NEWS/20040202/139212/
えいえんはあるよないよ• カウンタ溢れ系のバグが見つかってOSはどっかで再起動する日が来る →メンテの計画を
• 208.5 →TSCカウンタ。OSが落ちる / リブート後起動しなくなる。
• 248 →1/10秒精度カウンタ。Oracle Clientハングとか。
• 497 →1/100秒精度カウンタ。カーネル2.4の時に問題があった。
• 2004/01/11 →2038年の半分。ATMの誤動作が発生した。
• 2012/07/01 →うるう秒。MySQLなどでCPUが高負荷に。
• 2038/01/19 →UNIX TIME time_t(int)型の秒カウンタ。
http://irs.ietf.to/past/docs_20080808/2008-09-11-IRS17-XXX-days-Problems-nishino.pdfhttp://itpro.nikkeibp.co.jp/free/NC/NEWS/20040202/139212/
時間感覚
• cronの罠
• ログのローテーション
• えいえんはあるよないよ
CM: お気に入りの日本酒
富山 清都酒造場
「勝駒」純米吟醸
OS/ネットワーク設計の勘所(その3)
トラブル感覚
サーバを「触診」する1. コンソールにログインしたらログイン画面が出る(何を言ってry
2. 何もしていないのに帯域いっぱいの通信が出ていく
3. ssh接続しようとしても繋がらずタイムアウトする
4. ssh接続しようとしてもパスワードのプロンプトが出るのが遅い
5. sshでログインするとプロンプトが出るのに数分かかる
6. lsしても返ってくるのが遅い
7. -bash: ls: command not found
8. : bad interpreter: そのようなファイルやディレクトリはありません
こんな風に考える1. /bin/bashが無いかクラックされてる
2. クラックされてDoSの攻撃元になってる
3. sshdが落ちたかFWで蹴られている
4. IPアドレスの逆引き設定がおかしい
5. メモリ不足でスラッシングが発生している
6. そのディレクトリに大量のファイルがある
7. $PATHがおかしいか/bin/bashが無いか
8. シェルスクリプトの改行コードがCRLF • od ‒t xCzで確認を
システムバックアップありますか• データはいいけどOS領域壊れたらどうすんの? • いみゅーたぶ(略 • システムバックアップの取り方、リストアのやり方も考える
• リリース前に必ずリストアできることを確認 • 怖い。でもやるべし。 • RAID1の片方を外してテストするとか • リストア後のシステムで運用するルールとか
• acronisとかイメージ系バックアップいいけど • 取った後の構成管理・変更管理をきっちりやる • お前それ1年後も使えるの?
屍は生ける師なり• 四の五の言わずログを取れ • アクセスログ • エラーログ • パフォーマンスログ • 監査ログ
• OSが死んだとき、事実を語るのはログしかない • クラッシュダンプも取れるようにしておくとよい • 最近はメモリサイズがでかいのが困りもの…
財前五郎@白い巨塔
屍は生ける師なり
• 障害対応の流れは決まっている • 事実を正確に把握する • 原因を推測する • 推測した原因が正しいことを検証する • 対処を実施する • 障害が回復したことを検証する
奥山清行氏の言葉
• いつ来るか分からない15分のために 常に準備をしているのがプロ
• 来ないかもしれないからと言って 準備をしないのがアマチュア
工業デザイナー(イタリア人以外で初めてフェラーリをデザインした男)
http://gigazine.net/news/20110908_moonshot_design_cedec2011/
トラブル感覚
• サーバを「触診」する
• システムバックアップありますか
• 屍は生ける師なり
OSとネットワーク設計の 勘所おっさんの小言
1. レイヤ感覚
2. 時間感覚
3. トラブル感覚
勘所≒ノウハウ=失敗経験
初心者の方へ 「もっと失敗しよう」
おっさんの小言と
冷酒は
あとで効く
ありがとうございました