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
ちいさなクラウド業者やってみた
Search
MATSUMOTO Katsuyoshi
June 15, 2015
Technology
0
160
ちいさなクラウド業者やってみた
Kernel/VM #11
MATSUMOTO Katsuyoshi
June 15, 2015
Tweet
Share
More Decks by MATSUMOTO Katsuyoshi
See All by MATSUMOTO Katsuyoshi
Building Ruby Native Extension using Ruby
katsyoshi
0
1.4k
fluentdとxlsx
katsyoshi
0
110
mikutterとJubatusとfluentd
katsyoshi
0
11k
ZFSでNASやってはまったこと
katsyoshi
0
1.9k
Asakusa.rbに一年間通ったらこうなった
katsyoshi
1
2.5k
mikutterとJubatusで遊んでみた
katsyoshi
0
560
BeagleBoard-xM向けに td-agent-armhf.debをつ くってみた
katsyoshi
0
780
Other Decks in Technology
See All in Technology
カオナビの利用実績をアウトカムへつなげる旅 / example-of-data-management-startup-in-kaonavi
kaonavi
0
120
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
3
230
Microsoft Cloudで開発ライフサイクルを保護する
kkamegawa
0
140
AWS を使う上で知っておきたいオンプレミス知識/aws-on-premise-essentials
emiki
1
4.2k
コードを書く隙間を見つけて生きていく技術/Findy 思考の現在地
fujiwara3
24
5k
Discord とビルダー&チャットボットの使い方 / How to use Discord and Builder & Chatbots
ks91
PRO
0
130
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.3k
反実仮想機械学習とは何か
usaito
PRO
6
1.9k
[PlatformCon 24] Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
danielbryantuk
1
180
o11y入門_外形監視を利用したWebアプリケーションへの最適なモニタリング_TechBrew
k5k
3
100
"好き"との生活/Regularly update profile with GitHub Actions
judeeeee
0
150
「共通基盤」を超えよ! 今、Platform Engineeringに取り組むべき理由
jacopen
25
5.8k
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
175
21k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
Bootstrapping a Software Product
garrettdimon
PRO
301
110k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
The Language of Interfaces
destraynor
151
23k
We Have a Design System, Now What?
morganepeng
42
6.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
11
4.6k
Agile that works and the tools we love
rasmusluckow
324
20k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
220
21k
Unsuck your backbone
ammeep
662
57k
In The Pink: A Labor of Love
frogandcode
138
21k
Transcript
小さなクラウド業 者やってみた katsyoshi
whoami なまえ: katsyoshi fav.rb、fluent-plugin-mecab、fluent- plugin-axlsx
目的 おかねを積まずに大量のサーバがほ しい
目的 Ruby on Rails が動く環境が欲し い 80台ほど 個人用の Linux(CentOS 6.5)
はあるが、容量 制限がある(1GB) Windows共用だし、Ruby環境整えないといけ ないし、管理者権限どうだったけな
目的 必要な機能 Ruby on Rails 環境 Ruby、Webサーバ サーバ管理 Linux環境に慣れる
目的 お金をかけずに大量にサーバが 欲しい EC2?、Heroku? IPあまってるし、自前でやるか
目的 いまあるマシンでやろう メモリ192GBのKVMサーバ これどうやって動かすんだっけ? 一部メモリ認識しないとかいう問題もあった よな? 余ってるPCでやるかー
想定する利用方法 一週間でつかう時間が決まって る 4時間しかつかわない 同時にアクセス およそ80人
マシン構成 安いBTOマシン CPU: Intel(R) Core(TM) i3 CPU 550 @ 3.20GHz
Memory: 16GB OS: Ubuntu 14.04 LXC: 1.0.7-ubuntu
LXC KVMと比べてオーバーヘッド少な いし(?)これにしよう。 とりあえずデフォルトでやってみよ う。
失敗 70人くらいで実行!! $ bundle install --path .bundle/gems # 2時間後インストール終了 $
bundle exec rails s -b 0.0.0.0 # ここは5分ほどで起動し、アクセス これはなんとかせねば とりあえず分散すればいいんじゃね
対応策 同じマシン3台で20台づつ分散し よう! なんか1台ネットワークに繋がらないん だが… とりあえず2台で ここでもミスが…
再構成 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 実行時、メモリ量がちがうこと に気づく 今回は問題なく実行完了
ベンチマーク とりあえず、LXC利用しないで実 行 80並列 bundle install --path .bundle/gems > /dev/null
&
結果 はやい方 (i7) 2015年 6月 6日 土曜日 00:46:01 JST 2015年
6月 6日 土曜日 01:05:30 JST おそい方 (i3) NICがお亡くなりに… ping も ssh も通らなくなってた そもそもましんがおなくなりに… > VGA/DVIともに信号が出力されていないようです。
まとめ LXCでも100台つらい 30台ぐらいだとなんとかうごく リソース制限かければいいもっとうご く?
実際に動いてるログとってみ た 実際の運用マシン 再構築したマシンにそれぞれLXC35台 づつ
運用時の負荷 13~16時半ごろ まで(MEM 32G: CPU)
運用時の負荷 13~16時半ごろ まで(MEM 32G: MEM)
運用時の負荷 13~16時半ごろ まで(MEM 32G: IO)
運用時の負荷 13~16時半ごろ まで(MEM 32G: NET)
運用時の負荷 13~16時半ごろ まで(MEM 32G: DISK)
運用時の負荷 13~16時半ごろ まで(MEM 32G: SWAP)
運用時の負荷 13~16時半ごろ まで(MEM 16G: CPU)
運用時の負荷 13~16時半ごろ まで(MEM 16G: MEM)
運用時の負荷 13~16時半ごろ まで(MEM 16G: IO)
運用時の負荷 13~16時半ごろ まで(MEM 16G: NET)
運用時の負荷 13~16時半ごろ まで(MEM 16G: DISK)
運用時の負荷 13~16時半ごろ まで(MEM 16G: SWAP)
運用時の負荷 とってみたがとくに問題なさそ う… メモリ使用量が多いがそこまで read/writeも少なかったし メモリたりてるのでswapもしてないし 実際の運用だとこの構成でも問