Slide 1

Slide 1 text

小さなクラウド業 者やってみた katsyoshi

Slide 2

Slide 2 text

whoami なまえ: katsyoshi fav.rb、fluent-plugin-mecab、fluent- plugin-axlsx

Slide 3

Slide 3 text

目的 おかねを積まずに大量のサーバがほ しい

Slide 4

Slide 4 text

目的 Ruby on Rails が動く環境が欲し い 80台ほど 個人用の Linux(CentOS 6.5) はあるが、容量 制限がある(1GB) Windows共用だし、Ruby環境整えないといけ ないし、管理者権限どうだったけな

Slide 5

Slide 5 text

目的 必要な機能 Ruby on Rails 環境 Ruby、Webサーバ サーバ管理 Linux環境に慣れる

Slide 6

Slide 6 text

目的 お金をかけずに大量にサーバが 欲しい EC2?、Heroku? IPあまってるし、自前でやるか

Slide 7

Slide 7 text

目的 いまあるマシンでやろう メモリ192GBのKVMサーバ これどうやって動かすんだっけ? 一部メモリ認識しないとかいう問題もあった よな? 余ってるPCでやるかー

Slide 8

Slide 8 text

想定する利用方法 一週間でつかう時間が決まって る 4時間しかつかわない 同時にアクセス およそ80人

Slide 9

Slide 9 text

マシン構成 安いBTOマシン CPU: Intel(R) Core(TM) i3 CPU 550 @ 3.20GHz Memory: 16GB OS: Ubuntu 14.04 LXC: 1.0.7-ubuntu

Slide 10

Slide 10 text

LXC KVMと比べてオーバーヘッド少な いし(?)これにしよう。 とりあえずデフォルトでやってみよ う。

Slide 11

Slide 11 text

失敗 70人くらいで実行!! $ bundle install --path .bundle/gems # 2時間後インストール終了 $ bundle exec rails s -b 0.0.0.0 # ここは5分ほどで起動し、アクセス これはなんとかせねば とりあえず分散すればいいんじゃね

Slide 12

Slide 12 text

対応策 同じマシン3台で20台づつ分散し よう! なんか1台ネットワークに繋がらないん だが… とりあえず2台で ここでもミスが…

Slide 13

Slide 13 text

再構成 Precision T1500 CPU: Intel(R) Core(TM) i7 CPU 860 @ 2.80GHz Memory: 32GB, or 16GB OS: Ubuntu 14.04 LXC: 1.0.7-ubuntu 実行時、メモリ量がちがうこと に気づく 今回は問題なく実行完了

Slide 14

Slide 14 text

ベンチマーク とりあえず、LXC利用しないで実 行 80並列 bundle install --path .bundle/gems > /dev/null &

Slide 15

Slide 15 text

結果 はやい方 (i7) 2015年 6月 6日 土曜日 00:46:01 JST 2015年 6月 6日 土曜日 01:05:30 JST おそい方 (i3) NICがお亡くなりに… ping も ssh も通らなくなってた そもそもましんがおなくなりに… > VGA/DVIともに信号が出力されていないようです。

Slide 16

Slide 16 text

まとめ LXCでも100台つらい 30台ぐらいだとなんとかうごく リソース制限かければいいもっとうご く?

Slide 17

Slide 17 text

実際に動いてるログとってみ た 実際の運用マシン 再構築したマシンにそれぞれLXC35台 づつ

Slide 18

Slide 18 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: CPU)

Slide 19

Slide 19 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: MEM)

Slide 20

Slide 20 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: IO)

Slide 21

Slide 21 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: NET)

Slide 22

Slide 22 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: DISK)

Slide 23

Slide 23 text

運用時の負荷 13~16時半ごろ まで(MEM 32G: SWAP)

Slide 24

Slide 24 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: CPU)

Slide 25

Slide 25 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: MEM)

Slide 26

Slide 26 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: IO)

Slide 27

Slide 27 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: NET)

Slide 28

Slide 28 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: DISK)

Slide 29

Slide 29 text

運用時の負荷 13~16時半ごろ まで(MEM 16G: SWAP)

Slide 30

Slide 30 text

運用時の負荷 とってみたがとくに問題なさそ う… メモリ使用量が多いがそこまで read/writeも少なかったし メモリたりてるのでswapもしてないし 実際の運用だとこの構成でも問