Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Kauli 自作サーバの歴史と稼働率向上施策

自作に魅せられたフランちゃんウフフなインフラエンジニア
おおかわ かずひと
at
Kauli, Inc.
アジェンダ
- 自己紹介
- 会社紹介
- Kauli 自作サーバの歴史
- 稼働率向上施策
- コンシューマ市場にフィードバックされたエンタープライズ技術
(おまけ)
自己紹介
- おおかわ かずひと (@SatchanP 意識低い系)
- 2012年8月 コミケ4日目 入社
- プライベートラリースト
- 二次属性 アイマス : やよい、真美 東方 : フランちゃん、咲夜
さん
会社紹介
- 日々広告をお届けしています
- 2009年設立、もうスタートアップと言えない年頃
- 入社以来トラフィックは1年半で10倍以上
- いまだに自作サーバから卒業できず、現在に至る
Kauli 自作サーバの歴史
Kauli 自作サーバの概要
- メンテナンス性と高集積化を追及し、第一世代~第四世代と進化
- 第一世代は1U換算 1node ~ 1.5node
- 第四世代は1U 4node/16 core
- CPUはCore i7シリーズを採用
キーパーツ UTR1
- 安価な音楽用1Uシャーシ
- サウ○ドハウスで容易に入手可能
- 除雪にも活躍
第一世代 (~2012/09)

- @nekoya 製
- UTR1にパーツをテープで直接貼り付ける
第一世代の問題点
- 安全に取り外しするために、
最低2穴のスペースが必要
- UTR1ごと取り外すため、メ
ンテナンス性最悪
- パーツむき出し
- これがすべての始まり
第二世代 (2012/10~)

- UTR1の柔軟さに着目し、上からもう一枚はめ込んで天板を実装
- それっぽく1Uサーバ化
- 取り外しのリスクが解消
第二世代の問題点
- 無理やり2枚重ねしたせいで
ねじ止めにコツがいる
- 重い
- 密度上昇により熱問題発生
- 熱問題は後にCPUファンの回
転数を上げることで解決
第三世代 (2013/05~)

- UTR1とパーツの間に薄いアクリル板を挟む方式に変更
- アクリル板がUTR1の上をスライドするため、出し入れが容易に
- 劇的な高密度化に成功
第三世代の問題点
- アクリル板が計算より微妙に厚く、
0.5mmくらいはみ出してしまった
- 原因はマザーのCPUファンマウンタ
- しょうがないのでUTR1の柔軟性に
再び着目し、上下にたわませてマウ
ント
- 5~6U束ねてからねじ穴1個...
第三.五世代 (2013/09~)
- アクリル在庫が底を着き、厚さを変更
- とうとうUTR1で隙間なく自作サーバを詰めることに成功
- この時点で1U2ノード、詰め込み欲がさらに沸いてくる
- がもうこれ以上詰め込めないとその時は思っていた
第四世代 (2013/12~)

- マザーをMicroATXからMiniITXに変更
- 電源の位置を無理やり工夫し、UTR1に乗る奥行きで2個配置
第四世代の問題点
- 詰め込みすぎたため製造と取り回しにコツがいる (退化・・・)
- 普通のラックでは電源が足りない、場所が余る
- OID LEDがないため錯覚を起こしてメンテナンス対象を見誤る
- メンテするときは2台ともシャットダウンが...
方針転換?
- 実は1プロセッサーにはこだわりがあった
 - NUMAのチューニングがんばりたくない
 - プロセッサー間のスレッドの切り替わりコストを懸念
 - XeonではもったいないCPUの使われ方
- 電源単価を無視できない台数になりつ...
方針転換します (゚∀゚)
- 最新カーネルで使えるか不明だがAutoNUMAがマージされる
- スレッドコストもリファクタで改善
- コストにはこだわりベアボーン?
- IPMIとかECCとかほしかったんや・・・
でも遠い未来・・・
- Googleのように自分達でサーバを製造する時が絶対やってくる
- 箱に乗り換えると決めた今も、アイデアだけは出し続けている
- コンテナ丸ごと借りて自作で埋めたい
- その際は是非いいお話を・・・
稼働率向上施策
サーバ障害が起こる原因
- 大半は社長@karubiが大量に買った激安メモリ起因
 - Kernel Panic, segfault, reboot, ミドルが落ちる
 - ECCないから即死、IPMIないから現地作業確定
メモリによる障害を事前に防ぐ施策
- memtestエージングをよりスパルタに
- memtestエラー → 交換 のサイクルでロンダリング
- 信頼性の高いエルピーダチップも一部に導入
- syslogでsegfaultを検知したらアラートメ...
ハードウェアのイベントログを監視
- mcelogでハードウェアイベントログを参照
$ cat /var/log/mcelog
mcelog: Unsupported new Family 6 Model 3c CPU: only decodi...
コンシューマ市場にフィードバックされたエンタープライズ
技術
RSS(Receive-Side Scaling)
- 一昔前までは高価なサーバ用NICのチップに実装されていた
- 今では8000円位のマザーでもひっそり実装 (Atheros ar8161)
最後に
これでもドン引きしないダメな仲間を求めています!
おわり
ご清聴ありがとうございました!
Upcoming SlideShare
Loading in …5
×

自作サーバ同窓会スライド

3,883 views

Published on

自作サーバ同窓会で発表したスライドをうp

Published in: Technology
  • Be the first to comment

自作サーバ同窓会スライド

  1. 1. Kauli 自作サーバの歴史と稼働率向上施策 自作に魅せられたフランちゃんウフフなインフラエンジニア おおかわ かずひと at Kauli, Inc.
  2. 2. アジェンダ - 自己紹介 - 会社紹介 - Kauli 自作サーバの歴史 - 稼働率向上施策 - コンシューマ市場にフィードバックされたエンタープライズ技術 (おまけ)
  3. 3. 自己紹介 - おおかわ かずひと (@SatchanP 意識低い系) - 2012年8月 コミケ4日目 入社 - プライベートラリースト - 二次属性 アイマス : やよい、真美 東方 : フランちゃん、咲夜 さん
  4. 4. 会社紹介 - 日々広告をお届けしています - 2009年設立、もうスタートアップと言えない年頃 - 入社以来トラフィックは1年半で10倍以上 - いまだに自作サーバから卒業できず、現在に至る
  5. 5. Kauli 自作サーバの歴史
  6. 6. Kauli 自作サーバの概要 - メンテナンス性と高集積化を追及し、第一世代~第四世代と進化 - 第一世代は1U換算 1node ~ 1.5node - 第四世代は1U 4node/16 core - CPUはCore i7シリーズを採用
  7. 7. キーパーツ UTR1 - 安価な音楽用1Uシャーシ - サウ○ドハウスで容易に入手可能 - 除雪にも活躍
  8. 8. 第一世代 (~2012/09) - @nekoya 製 - UTR1にパーツをテープで直接貼り付ける
  9. 9. 第一世代の問題点 - 安全に取り外しするために、 最低2穴のスペースが必要 - UTR1ごと取り外すため、メ ンテナンス性最悪 - パーツむき出し - これがすべての始まり
  10. 10. 第二世代 (2012/10~) - UTR1の柔軟さに着目し、上からもう一枚はめ込んで天板を実装 - それっぽく1Uサーバ化 - 取り外しのリスクが解消
  11. 11. 第二世代の問題点 - 無理やり2枚重ねしたせいで ねじ止めにコツがいる - 重い - 密度上昇により熱問題発生 - 熱問題は後にCPUファンの回 転数を上げることで解決
  12. 12. 第三世代 (2013/05~) - UTR1とパーツの間に薄いアクリル板を挟む方式に変更 - アクリル板がUTR1の上をスライドするため、出し入れが容易に - 劇的な高密度化に成功
  13. 13. 第三世代の問題点 - アクリル板が計算より微妙に厚く、 0.5mmくらいはみ出してしまった - 原因はマザーのCPUファンマウンタ - しょうがないのでUTR1の柔軟性に 再び着目し、上下にたわませてマウ ント - 5~6U束ねてからねじ穴1個分だけ スペースを空けて、たわみマウント のスペースを確保
  14. 14. 第三.五世代 (2013/09~) - アクリル在庫が底を着き、厚さを変更 - とうとうUTR1で隙間なく自作サーバを詰めることに成功 - この時点で1U2ノード、詰め込み欲がさらに沸いてくる - がもうこれ以上詰め込めないとその時は思っていた
  15. 15. 第四世代 (2013/12~) - マザーをMicroATXからMiniITXに変更 - 電源の位置を無理やり工夫し、UTR1に乗る奥行きで2個配置
  16. 16. 第四世代の問題点 - 詰め込みすぎたため製造と取り回しにコツがいる (退化・・・) - 普通のラックでは電源が足りない、場所が余る - OID LEDがないため錯覚を起こしてメンテナンス対象を見誤る - メンテするときは2台ともシャットダウンが必要 - 社内から「やりすぎ」と声があがりはじめる
  17. 17. 方針転換? - 実は1プロセッサーにはこだわりがあった  - NUMAのチューニングがんばりたくない  - プロセッサー間のスレッドの切り替わりコストを懸念  - XeonではもったいないCPUの使われ方 - 電源単価を無視できない台数になりつつある - 地味に大人の事情も作用
  18. 18. 方針転換します (゚∀゚) - 最新カーネルで使えるか不明だがAutoNUMAがマージされる - スレッドコストもリファクタで改善 - コストにはこだわりベアボーン? - IPMIとかECCとかほしかったんや・・・
  19. 19. でも遠い未来・・・ - Googleのように自分達でサーバを製造する時が絶対やってくる - 箱に乗り換えると決めた今も、アイデアだけは出し続けている - コンテナ丸ごと借りて自作で埋めたい - その際は是非いいお話を・・・
  20. 20. 稼働率向上施策
  21. 21. サーバ障害が起こる原因 - 大半は社長@karubiが大量に買った激安メモリ起因  - Kernel Panic, segfault, reboot, ミドルが落ちる  - ECCないから即死、IPMIないから現地作業確定
  22. 22. メモリによる障害を事前に防ぐ施策 - memtestエージングをよりスパルタに - memtestエラー → 交換 のサイクルでロンダリング - 信頼性の高いエルピーダチップも一部に導入 - syslogでsegfaultを検知したらアラートメールを送信 - ハードウェアイのベントログを監視
  23. 23. ハードウェアのイベントログを監視 - mcelogでハードウェアイベントログを参照 $ cat /var/log/mcelog mcelog: Unsupported new Family 6 Model 3c CPU: only decoding architectural errors mcelog: failed to prefill DIMM database from DMI data mcelog: mcelog read: No such device mcelog: Unsupported new Family 6 Model 3c CPU: only decoding architectural errors Hardware event. This is not a software error. MCE 0 CPU 3 BANK 1 MISC 86 ADDR 403c8f940 TIME 1388050029 Thu Dec 26 18:27:09 2013 MCG status: MCi status: Uncorrected error Error enabled MCi_MISC register valid MCi_ADDR register valid Processor context corrupt SRAR MCA: Data CACHE Level-0 Write Error STATUS bf80000000000124 MCGSTATUS 0 MCGCAP c09 APICID 6 SOCKETID 0 CPUID Vendor Intel Family 6 Model 60
  24. 24. コンシューマ市場にフィードバックされたエンタープライズ 技術
  25. 25. RSS(Receive-Side Scaling) - 一昔前までは高価なサーバ用NICのチップに実装されていた - 今では8000円位のマザーでもひっそり実装 (Atheros ar8161)
  26. 26. 最後に これでもドン引きしないダメな仲間を求めています!
  27. 27. おわり ご清聴ありがとうございました!

×