##はてなでの仮想化技術あれこれ
- AMD でのセミナーのRevise版
###はてなの紹介
- 700万ユーザ
- 10億PV
###仮想化技術
- ハードウェアを抽象化し,複数のOSが動作できるようにする
- Xen/VMware/QEMU/UML/KVM/OpenVZ/etc.
- 古くはメインフレームの技術らしい
- 仮想化のメリット(from Wikipedia)
- 可用性・柔軟性の向上
- 運用コストの低下
- セキュリティの向上
###はてなでの仮想化
- Xen を利用
- Xen における仮想化モデル
- 仮想化モデルとは
- 準仮想化
- エミュレーションオーバーヘッドを最小に押さえられるが,OS 側の対応が必要
- 完全仮想化
- 実ハードウェア用OSがそのまま動作するが,エミュレーションオーバーヘッドが大きくなる
- はてなにおける仮想化の歴史
- CentOS 5 系への移行した際に,Xen を試し始める(2007 前半)
- 2007 夏頃から,スモールスタートで適用開始
- サーバ管理ツール開発開始,仮想化対応
- サーバの台数
- 物理サーバ500台で,仮想化して890台(ホスト+インスタンス)
- はてなシステムの全体像と解説
- 三層構造
- リバースプロキシ
- アプリケーションサーバ
- データベースサーバ
- 各所に LVS でロードバランス
- サーバ台数の割合
- Web:DB = 4:6 ~ 6:4
- 全体の6~7割が Web/DB
- その他は,ネットワーク関係・ファイルサーバ・管理用・メール・分散ストレージサーバ
- 非同期システムが増量中
- MapReduce 計算クラスタなど
- 仮想化サーバの構築ポリシー
- あいているリソースを主に利用する DomU を投入
- CPU があいているなら Web サーバ
- IO があいているなら DB サーバ
- メモリが空いているなら キャッシュサーバ
- 同じ傾向で,かつ負荷の高い用途同士は避ける
- はてなでの Xen
- CentOS 5.2
- Xen 3.0.3
- LVM 上にパーティション作成
- ストレージ選択のパターン on Xen
- LVM -> はてなでは LVM を利用している
- USB メモリで起動して起動後は RAM Disk に展開
- ネットワークストレージを使う
- ネットブート(PXE ブート & aufs イメージを RAM Disk に展開)
- Xen の運用
- install_xen.sh というコマンド1発で作成している
- IP/Memory/root size などを指定すると,7~8分で作成できるスクリプトを用いている
- 親子関係の負荷を見ている
- ラックに含まれるサーバの構成を負荷と共に見られるようにしている
- 負荷の監視は xentop で
- 仮想 OS の移動・コピー
- dd でイメージコピー
- LVM のスナップショットをコピーしている
- DNS との連携
- MyDNS(MySQL をバックエンドに使った DNS) と連携
- hostname.domain の Dom0 を parent.hostname.domain とすることで,わかりやすく
- DomU の強制再起動
- monit で
- たとえば,30秒間 httpd にアクセスできないと強制再起動
- Xem DomU の destroy/create している
- 突然落としても問題ないものだけ
- Xen の使っていない機能
- ライブマイグレーション
- 信頼性の高いストレージが必要
- コストが高くなる
- 完全仮想化
- すべて Linux なので
- オーバーヘッドを嫌っている
- Xen のデメリット
- ホスト数の増加
- Dom0 の台数分は増加
- 1物理サーバあたり,IP アドレス3つ消費
- ホスト x 1
- ゲスト x 1
- IPMI(or AMT) x 1
- 用途毎に IP アドレス帯を分割
- 不可解なバグの発生
- NIC ドライバの不具合(Realtek ?)
- 突然ネットワークに接続なる
- Dom0 の再起動で解消(過去2回)
- パフォーマンスの低下
- メモリアクセス
- ランダムアクセス時に顕著で 10% 程度
- I/O 性能
- I/O処理でバッファのメモリコピーが発生
- ネットワーク負荷が高いサーバでは厳しそう
- ディスク性能
- 2~3% の低下
- Xen の運用上の注意ポイント
- DomU が迷子にならないようにする
- DomU から Dom0 の情報は得られない
- サーバの単機能化
- サーバの管理負荷低減と不具合の影響範囲の最小化
- かなり小さな機能に分割するのがいいようだ
- 仮想化によって得られるもの
- 物理的なリソース制約からの解放
- VM 環境の統一化・標準化
- 冗長化によるリソース利用効率の低下を最小限に
###今後の展開
- 仮想ホストの自動制御
- 他の仮想化技術の検討
- KVM
- OpenVZ
###管理ツール
- リソースに空きがある物理サーバを探している
- Ruby on Rails 製!
- 撮影禁止だったようだ
###Q&A
- なぜ Xen を導入したのか
- 空きのあるリソースの有効活用をするために Xen を導入した
- リソースの有効活用のためというのは,非常に納得できる理由
##オープンソースでシステム監視!統合監視ソフトウェア ZABBIX の機能と利用事例のご紹介
- http://www.zabbix.jp/ (ZABBIX-JP)
- ZABBIX(ざびっくす)
###OSS統合監視ソフトウェア ZABBIX のご紹介
- 機能紹介
- 監視機能
- 表示機能
- 障害見知,通知機能
- 対抗
- Cacti(かくたい)
- Hinemos(ひねもす)
- 他の製品の課題
- テキストベースで設定しないといけないので,管理コストが大変
- Nagios + Cacti の組み合わせで監視することも管理コストの増大になる
- 商用製品は,非常に高価で使わない機能も多い
- ZABBIX の特徴
- オープンソース
- さまざまな OS に対応した専用エージェント
- Web インターフェースから選択式による監視設定が/表示が可能
- 監視設定・収集データを RDBMS で一元管理
- 生データをそのまま保存できるので,あとでいろいろ再利用可能
- テンプレートが使えるので,大量のサーバにも比較的対応しやすい
- 動作環境
- ZABBIX サーバ
- MySQL(/PostgreSQL/Oracle/SQLite)
- Apache + PHP で表示・設定など
- 障害通知
- SNMP/SNMP Trap
- エージェント
- 64bit 対応
- Ping/ポート監視
- ZABBIX エージェント
- 導入するだけで,基本的な項目はすべて監視できる
- 表示機能
- 生データを表示できる
- レポート作成できる
- 月刊レポートなどの資料になる
- 通知機能
- メール本文に復旧手順を入れるなどできる
- 障害レベルの設定に応じて,通知するグループ・ユーザを設定可能
- かなり柔軟にできるようだ
- スクリプトの実行
- エージェントにより,各サーバの shutdown/restart などが可能
- まとめ
- 中小規模のシステム監視に最適
- シェルスクリプト・MRTG の Replace として
- ここは有用そうです.うちの linode とかで試してみよう
###ZABBIX による Web システムの監視事例
環境1
- サーバ43台のホスティング
- ZABBIX サーバ: CentOS 4.4
- エージェント: CentOS 4.4/RHEL 3.8
環境2
- Xen でのホスティング
- DomU に ZABBIX サーバ
環境3
- 小規模 ASP サービス
- Cacti が入ってた
- 監視間隔を短くしたいとか,メールを送りたいとか
- メール送信には plig-in が必要だったり,監視追加・変更が大変
- なので,ZABBIX
Summary
- ZABBIX の DB は週に1回,MySQL の DB 再編を行ってデータの増加を防ぐことが重要
体験談
- MySQL は InnoDB
- innodb_file_perl_table で
- 定期的にデフラグ(alter table で最適化かな?)
###ZABBIXによるネットワーク機器のパフォーマンス測定検証事例
- ZABBIX の選定理由
- Fedora に標準搭載
- とりあえずやってみるが,あまり深追いしない
- わりと重要な考え方
##オープンソースの本を書きましょう! ###まとめ
- 自分出版で,本を印刷する直前まで作って出版社に持ち込み,印刷代も自分で払って名刺代わりに!
##勉強会大集合 ー スピーカーへのススメー
- パネラー(敬称略)
- Genesis Lightning Talks: さとうようぞう
- Java-ja: ヨシオリ
- 高専カンファレンス: 五十嵐
- XPJUG/PFP: あまのりょー
- わんくま同盟 勉強会: とっちゃん
- モデレーター
- 鈴木@LIND
###開催の趣旨
- 勉強会の悩み事
- 話す人がいなく,いつも同じ人になる
- 知ってもらう,感じてもらう
- なぜ話すの?どう話すの?
- 何を伝えたいか
- みんなスピーカーになろう!
- メリット,喜び,成長感など
- スピーカに慣れる場所を探そう!
- 社内勉強会もいいよ!
- 内輪勉強会でやれば,気軽にできそうだよね!
- 重要なのは実践すること
- 心の壁を作らずに聞いて欲しい
- 「あの人だからできる」とは感じないで欲しい
###パネルディスカッション
- 初めて発表したキッカケ
- さとうようぞうさん
- 社内で自分で話したいと思ったから
- 社内のレベルを自分で上げないといかないという危機感
- ヨシオリさん
- ひがなんとかさんに,「おまえも発表しろよ」と言われたから
- 最近は緊張感を愉しんでいる
- 五十嵐さん
- LT を見て楽しそうだなと思ったから
- そのときに2つ山があった
- 登壇者のレベルが高い気がした
- 発表のレベルは聴衆が決めるんだから,気にしても仕方ない
- 完璧じゃないと発表できないんじゃないか
- 世の中に埋もれてしまう前に,6~7割までできたら出した方がフィードバックとかあっていいよ
- あまのりょーさん
- 20~30年生きてきて,5分ぐらいなら発表するネタがあるだろうから,それを気楽に話してみるのがいいんじゃないか
- 気楽な場所
- 何回か出た勉強会とかで
- とっちゃんさん
- 東京でわんくま同盟立ち上げるときに,「Microsoft MVP だから喋ってみてよ」と言われたから
- Windows Installer について喋りたいと思ったので
- さとう@LINDさん(モデレータ)(PHP勉強会の人)
- 大きな場所でやるのは今日が初めて
- 自分がやってきたことを人に伝えたいと思ったから
- スピーカーのメリット
- とっちゃんさん
- 名前を覚えてもらえる.非常に大きなメリット.
- あまのりょーさん
- 人とつながりが出来る,のは言われてしまった
- 資料を作ると再度勉強し直せるのがメリットじゃないか
- ヨシオリさんが,「あの発表が良かったよ」と言われるのが嬉しいと言ってました
- 五十嵐さん
- LT での発表資料を作っているときに,考え直せる
- そのネタで雑誌に記事を書けたりしたので,よかった
- ヨシオリさん
- お金に関するメリット
- 発表するとチケットがただで手にはいるとか,控え室で電源の心配がないとか
- ブログなどで反応があるのが嬉しい
- 他のコミュニティから呼ばれることも嬉しい
- さとうようぞうさん
- 名刺が大量に減る
- 控え室にいる著名な人と会えるとか
- 発表した内容の反応で嬉しかったことは?
- とっちゃんさん
- 大阪のイベントに四国から来てくれた人がいた!
- わざわざ来てくれた人がいると嬉しい
- 社内勉強会をして評価あがった?
- 表情で察していただければ・・・・首にはなってないし
- MISAO
- 発表中に IRC のメッセージをプレゼンの上にのせられる
- メリットとして
- 乱入が出来る
- 発表者間の内輪感を楽しめる
- 勉強会の開催について
- さとうようぞうさん
- 発表の敷居を出来るだけ下げる
- Genesis Lightning Talk では何でもありにしている
- 勉強会で得たことを次に生かせる,何かアクションを起こせるような内容になれば,いい勉強会になるんじゃないか
- ヨシオリさん
- 自分が聞きたいので勉強会を主催している(java-ja)
- 「勉強会」と言う名前をつけてない
- 堅苦しい感じがするので,発表者と聴衆の溝が広がる
- 五十嵐さん
- LINDさんのために話しているという感じ?
- 高専というマイノリティの集まり.他の場所とのつながりや,学校とのつながり
- 学校の先生が雑談だけの授業をやってほしいと思ってる
- あまのりょーさん
- 同僚と朝スタバとかで本の感想を言い合う感じ1
- 朝だと気分良く一仕事追えた感じで,業務に入れる
- 名前も「読書会」と書いてはいない
- 勉強会の最小開催人数は2名
- とっちゃんさん
- わんくま同盟の知名度を上げるために,こういう場所に出ている
- 仲間を誘うときのコツなど
- あまのりょーさん
- 話のわかる上司がいる.その上司を巻き込める
- さとうようぞうさん
- 仲間にも恵まれている
- 上司から「その勉強会やってどう成果が出るの?」に対する切り返しは?
- さとうようぞうさん
- 成果を数字で出せば上司は納得する
- 社内勉強会の開催前後で,アンケート・テストを行う
- その内容が成果に繋がる
- ヨシオリさん
- そこまでやって社内でやる意味がないのなら,社外でやればいいんじゃないか
- 社外でやるばあいの場所は?
- とっちゃんさん
- わんくま同盟は,固定で借りている
- 東京だとルノアールの貸し会議室が安く借りれる.プロジェクター貸してくれる
- 五十嵐さん
- 企業の会議室を借りる
- 貸してくれる会社さんのメリットが出れば,Win-Win の関係になる
- 鈴木@LINDさん
- 勉強会勉強会の会議室一覧を参考にしては
###LT 大会
- さとうようぞうさん
- スピーカー楽しいヨ!
- Ruby Business Commons の裏方やってます
- リハーサルで時間配分をやる
- ビデオを撮って練習するのがいいかも
- 次は 2⁄25(水)
- ヨシオリさん
- java-ja温泉で検索!
- 資料作成方法
- 楽しさ = 正義
- 「伝えたいこと + 楽しさ」を心がけている
- 前日に作る
- メモは emacs で書いている
- そのファイルを DropBox を使って共有している
- 五十嵐さん
- 大事なことは何度も言う
- 発表で失敗することの方が難しい
- あまのりょーさん
- PFPの人
- Project Facilitation Project
- 次回WS 3⁄18(水)
- 資料制作 Hacks
- ノンデザイナーズ・デザインブック
- とっちゃんさん
- わんくま同盟の宣伝
- 発表はアドリブでやってる.型はない!
###最後のお願い
- 今日聞いたことを是非実践してください
- フィードバック
- ブログとかに書こう!
##ライトニングトーク&大抽選会&閉会式 ###IPA「第2回オープンソースソフトウェア活用ビジネス実体調査」のご紹介
- みずほ総研の人
- 報告書は Java をオープンソースとして扱っている
- Ruby を使いたい人が多いらしい
- Matz 効果か
###Tech Seminor Timemap
- さとうようぞうさん
- Tech Seminor Timemap
###MoodleMoot Hakodate 参加リポート
- Moodle とは,OSS の e-Learnign 構築できるもの
###学校現場でのオープンソースの話題
- Linux on 御神輿
- ustream from 御神輿 も計画中
###COCO - 管理者により社内監視システム
- 社内 LAN の監視システム
- DNS と連携できる
- nmap で異常検出
- 社内PCの場所と IP アドレスの対応をグラフィカルに表示できる
- DHCP/LDAP/nmap/IP-Sentinel
###Linux+Webカメラでハムスター観察
- ハムスターかわいいよ!
###milter manager フリーソフトで迷惑メール対策
- rabbit の人
- milter manager
- 安心メールを素通し
- rabbit++
###インターネットと危機管理 怪文書編
- Ruby がマイブーム
- インターネットで遭遇した怖い話
- 知らない人を煽るのは止めた方がいいと言うお話
##抽選会
- いない!ので,所属がわかってる人に
- OSC で商用ソフトウェアが抽選される事態はちょっと面白い
##まとめ
- 懇親会はマイレージ不足のために欠席
- 会場提供で SEO 効果!!
- これはいいスタイルじゃないでしょうか [return]