Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ちいさなクラウド業者やってみた
Search
MATSUMOTO Katsuyoshi
June 15, 2015
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ちいさなクラウド業者やってみた
Kernel/VM #11
MATSUMOTO Katsuyoshi
June 15, 2015
More Decks by MATSUMOTO Katsuyoshi
See All by MATSUMOTO Katsuyoshi
A Journey of Box bugs
katsyoshi
0
96
POI: Proof of Identity
katsyoshi
0
210
Ruby in Ruby - Building an AOT Compiler with Ruby
katsyoshi
1
420
(私的)RubyKaigi の歩き方
katsyoshi
0
1.8k
Building Ruby Native Extension using Ruby
katsyoshi
0
2.3k
fluentdとxlsx
katsyoshi
0
200
mikutterとJubatusとfluentd
katsyoshi
0
11k
ZFSでNASやってはまったこと
katsyoshi
0
2.1k
Asakusa.rbに一年間通ったらこうなった
katsyoshi
1
2.8k
Other Decks in Technology
See All in Technology
Classmethod Company Deck
satoshi7
1
790
AI コーディングと人間の認知スループット / CTO Night & Day 2026 Morning Session / AI Coding and Human Cognitive Throughput
prog893
5
1.4k
価値について
gree_tech
PRO
0
140
20年間 SNS サービス「GREE」 を支えた技術の刷新と、長期運用サービスの Kubernetes へのリアーキテクト
gree_tech
PRO
0
100
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
150
フィンテック養成勉強会#68
finengine
0
180
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
360
CloudWatch Logsのコスト最適化:どこまでAIに任せてどこから人間が承認すべきか
yama3133
0
150
Running Kotlin + Quarkus with Lambda
nealle
1
4.1k
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
370
夫婦で子育てするための育児標準化
codmoninc
PRO
0
540
顧客価値を追いかけたら、プライシングにたどり着いた
sansantech
PRO
2
300
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
530
Visualization
eitanlees
153
17k
Test your architecture with Archunit
thirion
2
2.4k
Building AI with AI
inesmontani
PRO
1
1.3k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
30 Presentation Tips
portentint
PRO
1
430
Rails Girls Zürich Keynote
gr2m
96
14k
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
490
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
610
Discover your Explorer Soul
emna__ayadi
2
1.3k
The World Runs on Bad Software
bkeepers
PRO
72
12k
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もしてないし 実際の運用だとこの構成でも問