海外VPSを4つやってきた結果について

今までslicehost, linode, nynoc, quillhostの海外のVPSを触ってきた。現段階であれば、Linode, Quillhostあたりがいい感じ。落ちたりしない(ただしquillhostは借りてから1週間しか経過していない)。

もし、今後、海外VPSを借りることがあるとすれば、Xen以外は借りない。Xenは普通のPCのサーバと同じように動作するので、今までの知識が通用する。

OpenVZはnynocではスワップメモリがない状態で使わされた。これは使うプログラムのメモリの総量の目測がつく場合でないと難しい。瞬間的にcronでメモリを食う処理を割り込ませられずにセグフォって落ちる。子プロセスを産む子は子供の数を制限しなきゃいけない(まさに一人っ子政策)。でも、それさえ解決できれば、安価に上手くいく、かも。でもnynocは無理だと感じた。

quillhostの今はもうないWHT-S2プランは、Linodeのプランの半額程度で格安だ。場合によっては1/4額とも感じる。$15で1GBのメモリはありえない。CPUはLinodeよりは遅くて、処理量は実感としては1/2程度。バンバン処理を食わせたい場合は不向きでLinodeの方がいいが、格安でメモリ大量なプログラムを動かしたいのであればQuillhostという使い分けでいい感じ。少しLinodeよりも遅延を感じるが、悪くはないレベル。

数ヶ月の間、海外VPSやってきた結果、お勧めできるのは、QuillhostとLinode。両方ともXen。両方とも安いが、Quillhostは特に安い。信頼感があるのはLinode。価格あたりのメモリが多いのがQuillhost。価格あたりのCPUパワーがあるのがLinode。価格あたり転送量が多いのがQuillhost。遅延が短いのがLinode。

といっても、同じ価格帯のサービスをLinodeとQuillhostで選択した訳じゃないから、この感覚は間違ってるんだろうな、と。

両方ともにOSはUbuntuだろうがFedoraだろうが、CentOSだろうが…な状態なので、コンソールでLinuxできる子だったら、苦にならない。

個人的な感覚として、普通のサーバ仕事なんかをやらせたいのであればQuillhost借りる。もう自鯖を動かす電気代より安い気もしてくる。計算してないけれど。ちょっと処理負荷大きいものや、安心がほしい場合はLinodeを借りる。他人にお勧めする場合はLinode。激安で使える鯖ならQuillhost。

自分なりに調べた結果は、現時点はこんなもんでいーんじゃなかろーかーと、思う。

海外の2つのVPS(NYNOCとQuillhost)を新たに借りた

国内のVPSの酷さに失望した後にVPS難民としてslicehostlinodeに手を出してきた。

この2つのVPS、特にLinodeを利用してきたが、Linodeは国内・海外のVPSの中でもお気に入りのサービスになった。理由としては過去にも述べたが、CUIの操作を行っても海外を感じさせない往復遅延時間、そして価格が安いこと、価格に負けないCPUパワーを持っていることが大きい。

しかし、そんな安定しているLinodeよりも格安で不安定で危険な香りのするVPSサービスが存在する。それがNYNOCとQuillhostだ。

Slicehost 512 slice $38 512MB 20GB 200GB
Linode Linode 540 $29.95 540MB 24GB 300GB
NYNOC SuperVPS $16 512MB 10GB 1TB
Quillhost WHT-S2 $14.97 1024MB 25GB 400GB

円高基調も手伝ってか、国外サーバの割安感が大きいし、製品が安価になるにつれてVPSでも十分な資源をもてるようになってきている。またVMの進化によって、VPSは時として専用サーバよりもバックアップの面やOSのインストールの面で管理しやすい状態になってきている。

これほど格安になってきているのであれば、たとえ不安定であっても、複数のサービスと契約して冗長化するという選択肢が見えてくる(かもしれない)。さらなる安価なサービスを求めるには十分な理由(こじつけ)だった。

NYNOC

OpenVZ系。CPUがIntel(R) Core(TM)2 Quad CPU Q9300 @ 2.50GHz。Paypal契約。

驚いたことにswapがない。makeで8スレッド稼動させると落ちる。mallocできへんわーって落ちる。スワップファイルをddコマンドで作って乗せようとしてもoperation not permitted。もうXenでいいわーと思った一件。IOもなんか遅い。往復遅延も、もっさり。作業したくない。

反面、他のサービスよりメモリ、CPU周りは充実している。メモリの使用量の総量が分かっていて、CPUをぶん回すプログラムを走らせるには最適。コストパフォーマンス高し。

Quillhost

今、契約を行った。Paypal契約のみ。準備ができたら、何か書く。

slicehostなどのVPSサーバでgemが遅い場合の対処法

これは以前のさくらの専用サーバサービスでのgemによるrailsインストールの際にも感じたことだが、油断して普通にgem(rubygems)によるrailsのインストールをしようとすると遅くて重い。

例えばslicehostで今、Ubuntu 8.04にて以下の作業を行ったが一向にrailsがインストールされる兆しがない。

$ sudo aptitude install rubygems
$ sudo gem install rails

これはubuntuの管理しているgemsが古いため、遅いと考えられる。

noch@labo:~$ aptitude show rubygems
パッケージ: rubygems
新規: はい(yes)
状態: インストールされていません
バージョン: 0.9.4-4

ここでバージョンは0.9.4となっているが最新のrubygemsは1.3.1である。

そこで以下の作業を行い、最新のrubygemsのインストールをを手動で行う。

$ sudo aptitude purge rubygems
$ sudo aptitude install ruby rdoc
$ wget "http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz"
$ tar xvzf rubygems-1.3.1.tgz
$ cd rubygems-1.3.1
$ sudo ruby ./setup.rb

これにて非常に短時間で以下のコマンドが実行できる。

$ sudo gem install rubygems-update
$ sudo gem install rails

話題のVPSであるslicehostを$20/月で借りてみた件について

不況のあおりを受け、経費削減が重要課題になりつつある。

当方でも実験用にさくらの専用サーバを借りていたりするが、ロクに負荷をかけないものばかり実験しているので経費削減のために安いVPSに移ることを検討した。

先月あたりにrailsなどのサービスを提供するためのVPSサービスの選び方と称して下調べはついている。

結論として、Webホスティング以上、専用サーバ以下のサービスと価格を求めるにあたり、VPSのslicehostが評判が良いので、slicehostについて評価することとした。

slicehostのサイトを見ると簡潔に特徴が表示してあり分かりやすい。実験目的なので最も安い$20/月のサービスに申し込んだ。

驚くことに、申し込んで2,3分程度でsliceが出来上がったというメールが届いた。メールにはサーバのIPアドレス、rootパスワードが羅列されている。実際にそのサーバへ、そのパスワードでログインすると入れた。簡単で便利だが少し怖い(申し込み時点でパスワードをメール転送するかしないかを選択でき、サイト上で確認することもできる)。

選択したフレーバーはUbuntu 8.04LTS。自分でもインストールしたことのあるなじみの深いフレーバーだ。しかしメモリ256MBでは少々重いかもしれない。

噂のWeb上コンソールも試してみた、が、遅さが気になる。

# adduser hogehoge
# visudo
:
noch    ALL=(ALL) ALL

adduserにてユーザーを作成し、作成したユーザーに対してsudo権限を与える。

2つめのターミナルを起動し、作成したユーザーでログインできることを確認する。さらに作成したユーザーでsudoできることを確認する。もし上手くいかないようであれば、rootでログイン済みの1つめのターミナルで修正を行う。

ついでにパスワードを収めているshadowファイルを編集し、以下の通りにする。

$ sudo vi /etc/shadow
root:!!:13997:0:99999:7:::

3つめのターミナルを起動しrootでログインできないことを確認する。

その後はsliceチームが用意しているSlicehost Articles: Ubuntu Hardy setup – page 1などを参考にしながら好きに設定を行う。

railsなどのサービスを提供するためのVPSサービスの選び方

railsなどのサービスを提供するための専用サーバサービスの選び方では、railsを専用サーバで動作させる場合について検討した。しかしながら、専用サーバほどの性能が必要ない場合、VPSでホスティングするという手段もある。

VPSならRailsを動作させるために必要な環境構築のためのルート権限が手に入る。転送量などの制限はほぼ到達しないだろうし、到達したらサーバを変えれば良い。

ただし、VPSの問題点は大きくは2つあると考えられる。1つはメモリ容量が貧弱であること。256MBでは厳しい場合があるので、512MB程度は欲しい。2つ目は安価なVPSサービスは海外、特に米国であること。レスポンスを求めたいアプリケーションの場合は不利になる。

これらの制限を踏まえて、VPSとして評価が高いホスティングサービスは以下の2つ。

両者ともに256MB保証で20$/月、512MB保証で40$/月な程度。またslicehostはOSの入れ替えが簡単に行え、ドキュメントが親切にも用意されている様子。

さくらの専用サーバやAmazon EC2の半額程度でrailsを動作させられる環境を手に入れることができる。円高なので今のうちにデポジットしておくといいかもしれない。

Google App Engine, PaaS, EC2に見る新しい息吹

Google App Engineという面白そうなサービスが登場した。

「Google App Engine」の登場とPaaS–Web 2.5がもたらす変化:コラム
http://japan.cnet.com/column/pers/story/0,2000055923,20371171,00.htm

簡単に言うと、Pythonを動かせるインフラを無償で提供してくれるサービス。なのだが、Googleのインフラの仕組みを用いているらしく、GFS上で動作し、bigtableなどのデータベースを利用できるらしい。

上記の記事では、SaaSの次であるPaaS(platform-as-a-service)を動作させるためには巨大なデータセンターが必要であり、そのためにGoogleがサーバ提供を始めた、と解釈している。

PaaSのためのサービスとして、Amazon EC2(Amazon Elastic Compute Cloud)という仮想化サーバ提供サービスが2006年頃?から始められている。これもAmazonが実際に利用している仮想化サーバの仕組みを提供しているものとされている。

このEC2では、CPU使用量、ネットワーク転送量に応じて課金が行われる。そのため少量の利用であれば、コストが安価で済む特徴がある。さらに突発的なアクセス状況に対してもスケーラブルに対応できる。

Amazon EC2を使ってみた:http://blog.lilyx.net/2007/07/05/amazon-ec2-introduction/や、Life is beautiful: Amazon ec2のエコノミー、月72ドルでレンタルするのと、999ドルのマシンを買うのはどちらが得か?:http://satoshi.blogs.com/life/2008/03/amazon-ec272999.htmlに詳しい。

GAE(Google App Engine)の場合も、データ容量やCPU使用量をより多く割り当てたい場合に、有料サービスに申し込める仕組みを提供している。

まさにVPSから、もう一歩、新しいサービスが生まれてきている。今後、さらにホスティング環境は使いやすくなっていくことだろう。

VPS (2) 時間設定

時間がおかしかったので、tzselectをしたら、
[code]
You can make this change permanent for yourself by appending the line
TZ=’Asia/Tokyo’; export TZ
to the file ‘.profile’ in your home directory; then log out and log in again.

Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
Asia/Tokyo
[/code]
といわれたので、素直に.profile作った。

ログインしなおしたら時間が直った。