Linode vs DigitalOcean vs ConoHa
気がつけば7ヶ月ぶりのブログとなってしまった。もう少し頻度をあげようと思っていたのだけど、この体たらくである。ブログのネタを見つける度に少しずつ書いたものがあったりはするのだけど、いつの間にか旬を外していたり、書く気がなくなったりで、ズルズルときてしまった。
というよう相変わらずな状況はさておき、久しぶりなVPSの比較を書いてしまうことにする。
以前行ったのはLinodeとさくらVPSの比較で、2010年12月なので6年ぶりとなる。今回はメインで使っているLinodeとDigitalOceanとConoHaの三つで比較を行ってみた。
ブログを書くにあたり、$10 Showdown: Linode vs. DigitalOcean vs. Amazon Lightsailを参考に項目追加などを行っているが、オリジナルも是非見て欲しい。比較対象の一つがAmazon LightsailからConoHaになってしまっているが。
比較を行うにあたりリージョンに関しては、LinodeはできたばかりのTokyo2、DigitalOceanは比較的新しいSFO2、ConoHaはJapanをそれぞれ選択し、プランごとの差を吸収するため千円に近いプランをそれぞれ選択した。選択したプラン毎による比較はそれぞれ下記のようになる。
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
メモリ | 2GB | 1GB | 1GB |
CPU | 1 Core | 1 Core | 2 Core |
ストレージ | 24GB SSD | 30GB SSD | 50GB |
転送量 | 2TB | 2TB | unlimited |
追加転送代金 | $0.02/GB | $0.02/GB | -- |
帯域 In | 40GBbps | 1Gbps | 100Mbps |
帯域 Out | 125MBbps | 1Gbps | 100Mbps |
料金 (月あたり) | $10/月 | $10/月 | 900円/月 |
料金 (時間あたり) | $0.015/時 | $0.015/時 | 1.3円/時 |
また比較を行う上でできる限り公平にみるために、全て新規に作成しdebian 8 jessie amd64
上で行い、同じsysctlの調整を行っている。
カーネル・CPUの比較
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
uname -r | 4.8.6-x86_64-linode78 | 3.16.0-4-amd64 | 3.16.0-4-amd64 |
cpu model name | E5-2697 v4 @ 2.30GHz | E5-2650L v3 @ 1.80GHz | E5-2660 v3 @ 2.60GHz |
cpu cache size | 4096 KB | 30720 KB | 4096 KB |
cpuinfo | gist | gist | gist |
CPU
sysbench --test=cpu run
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
Execution Time | 12.7867s | 15.0757s | 10.7636s |
Execution Number of Events | 10000 | 10000 | 10000 |
Execution Time Taken by Events | 12.7852 | 15.0714 | 10.7614 |
Minimum per Request | 1.24ms | 1.40ms | 1.07ms |
Average per Request | 1.28ms | 1.51ms | 1.08ms |
Maximum per Request | 2.00ms | 5.16ms | 2.63ms |
Memory (read)
sysbench --test=memory run
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
Execution Time | 45.0777s | 96.9033s | 46.1627s |
Execution Number of Events | 104857600 | 104857600 | 104857600 |
Execution Time Taken by Events | 35.1409 | 75.6979 | 36.3354 |
Minimum per Request | 0.00ms | 0.00ms | 0.00ms |
Average per Request | 0.00ms | 0.00ms | 0.00ms |
Maximum per Request | 0.78ms | 8.51ms | 1.97ms |
Transfer per second | 2271.63 MB | 1056.72 MB | 2218.24 MB |
Memory (write)
sysbench --test=memory --memory-oper=write run
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
Execution Time | 44.6995s | 102.0323s | 46.5992s |
Execution Number of Events | 104857600 | 104857600 | 104857600 |
Execution Time Taken by Events | 32.8248 | 78.9135 | 36.6818 |
Minimum per Request | 0.00ms | 0.00ms | 0.00ms |
Average per Request | 0.00ms | 0.00ms | 0.00ms |
Maximum per Request | 0.76ms | 7.12ms | 1.93ms |
Transfer per second | 2290.85 MB | 1003.60 MB | 2197.46 MB |
File I/O
sysbench --test=fileio prepare
sysbench --test=fileio --file-test-mode=rndrw run
sysbench --test=fileio cleanup
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
Execution Time | 1.5128s | 4.8597s | 4.2003s |
Execution Number of Events | 10000 | 10000 | 10000 |
Execution Time Taken by Events | 0.2035 | 0.8871 | 1.5646 |
Minimum per Request | 0.00ms | 0.00ms | 0.00ms |
Average per Request | 0.02ms | 0.09ms | 0.16ms |
Maximum per Request | 0.54ms | 7.04ms | 6.47ms |
Requests per second | 6610.36 MB | 2057.74 MB | 2380.78 MB |
IOPS
ioping [Option] /
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
disk seek rate (-R) | 14.8k iops, 57.9 MiB/s | 9.63k iops, 37.6 MiB/s | 7.16k iops, 28.0 MiB/s |
disk sequential speed (-RL) | 3.02k iops, 755.1 MiB/s | 3.23k iops, 806.9 MiB/s | 2.46k iops, 614.4 MiB/s |
disk asynchronous I/O (-RA) | 14.0k iops, 54.8 MiB/s | 10.6k iops, 41.3 MiB/s | 6.24k iops, 24.4 MiB/s |
disk cached I/O (-RC) | 1.10M iops, 4.18 GiB/s | 1.02M iops, 3.90 GiB/s | 1.41M iops, 5.38 GiB/s |
disk direct I/O (-RD) | 16.5k iops, 64.4 MiB/s | 11.3k iops, 44.1 MiB/s | 7.41k iops, 28.9 MiB/s |
Network
speedtest-cli --simple --server [NUMBER]
ネットワークスピードのベンチマークには、参考にしたブログと同じ speedtest-cli を利用した。 ベンチマークのターゲットには無指定の場合とつくば市のSoftEtherと石川県美濃市のJAISTの三つで比較した。
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
無指定 | |||
Ping | 7.277ms | 10.454ms | 4.054ms |
Download Mbit/s | 352.69 | 1409.92 | 126.14 |
Upload Mbit/s | 57.70 | 42.71 | 324.46 |
つくば市のSoftEther | |||
Ping | 44.203ms | 492.954ms | 76.996ms |
Download Mbit/s | 393.21 | 44.91 | 121.43 |
Upload Mbit/s | 199.99 | 31.52 | 709.90 |
石川県美濃市のJAIST | |||
Ping | 164.623ms | 153.968ms | 21.749ms |
Download Mbit/s | 391.09 | 266.47 | 127.16 |
Upload Mbit/s | 213.18 | 31.51 | 519.94 |
ruby compile speed test
time rbenv install 2.3.3
ソースをダウンロードする時間の影響を排除するために、2回実行して2回目の時間を掲載する。
- | Linode | DigitalOcean | ConoHa |
---|---|---|---|
real | 6m13.333s | 7m40.884s | 4m9.846s |
user | 5m32.687s | 6m40.272s | 4m42.552s |
まとめ
現時点で日本を拠点として3つを比較した場合のコストパフォーマンスを考慮した順位は、ConoHa、Linode、DigitalOceanの順番だろうか。ConoHaは1GBプランでCPUが二つあるのがお得感があり、実際にCPUベンチやrubyのコンパイルスピードでそれが顕著に出ている。メモリの読み書きでもLinodeとConoHaに差はそれほどなく、アメリカの大統領選以降円安に寄っている現状では数百円程度ではあるがConoHaの方が良いようだ。
Linodeはこれまで長い間いっぱいになっていたTokyoリージョンから場所を移して、新宿にオープンしたばかりのTokyo2のリージョンでは、ロケーション的な優位性が見られ、Downloadスピードは安定して350MB以上となっている。翻ってConoHaのUpload速度は謎である。
DigitalOceanはロケーションの優位性がないネットワークスピードに関しては仕方ないにしても、それ以外のベンチマークでもよいパフォーマンスが出ていないので、3社でベンチマークを比較した場合には、格段に落ちる格好となってしまった。だがDigitalOceanの強みは他の所にあるのでまだまだ使い続けるつもり。
ということで3社の比較を書いてみたのだけど、だれかの参考になれば幸いです。