先日、「さくらのVPS」のベータテストが開始されました。
私も個人的にさくらのレンタルサーバを利用しているので、7月14日にフライングして申し込みしました。
(最終テスト中だったようで、社員にまじめに怒られてしまいましたが・・。スイマセン)
まず基本仕様
- CPU 2コア
- メモリー 512MB
- HDD 20GB
- ネットワーク 100Mbps(いちおうの上限)
- リモートコンソール付き
- 再起動、再インストールは、セルフサービスでコンパネから可能
ホスト側は、QuadCore Xeonで、1Gbpsにて上位スイッチに接続し、10Gbpsでさくらインターネットの基幹ネットワークに接続しています。
(クローズドベータテスト中に400Mbps位出たという記事もありましたが、さすがに対策する予定です)
ハイパーバイザーは、巷の格安VPSで多く利用される、VirtuaozzoやOpenVZ、Xenの準仮想化と異なり、KVMで完全仮想化になっています。
完全に512MBの実メモリを割当しますから、ホストOS側でスワップされずパフォーマンスが低下しないですし、ゲスト環境側でスワップを用意することも可能です。
実メモリは、ゲストで必要とするメモリ容量の1.5倍?2倍程度を搭載しています。
というのは、ホストOSのメモリの2/3以上をゲストに割り当てると、過負荷時のレスポンスが急激に悪化したり、不安定になったりということが言われており、当社でも再現されているので、余裕を持った設計にしています。
さらに、ホストOSのメモリの余裕を持たすことで、ディスクI/Oも劇的によくなります。
ゲストOSのスワップ時でも、ホストOSのキャッシュに入っていれば、メモリの延長上といえるかもしれません。
このように、100Mbpsインターフェース、20GBのHDD、2 CPU、512MBメモリといっても、同種のVPSサービスとは一線を画します。
その上で、「格安VPS」といえる価格帯で出す予定にしていますので、海外にも増してメリットのあるサービスになるのではと考えています。
と、宣伝はここまでにして、早速利用してみます。
まず、私が行ったのは、sshの公開鍵を設置してrootログインできないようにすることです。
申し込み直後は、ほぼ最新のパッチを当てて出荷されますので、いきなりクラックされることは考えなくてもよいと思いますが、なんとなく不安です。
(対策として、ネットワークをシャットダウンしたまま出荷するオプションを用意するなど、検討の余地があると考えています。)
ということで、ssh-keygenを行い、/etc/ssh/sshd_configにrootでのパスワードログインを禁止します。
[root@www10xxu ~]# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: 1b:f0: root@www10xxu.sakura.ne.jp [root@www10xxu ~]# |
/etc/ssh/sshd_config 変更前 PermitRootLogin yes 変更後 PermitRootLogin without-password |
[root@www10xxu ~]# service sshd restart |
次に無駄なデーモンをoffにします。
さくらのVPSの初期状態において脊髄反射で感じるのは「思いのほか空きメモリが少ない!」ということです。
ps -aux結果
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 10348 688 ? Ss Jul15 0:00 init [3] root 2 0.0 0.0 0 0 ? S< Jul15 0:03 [migration/0] root 3 0.0 0.0 0 0 ? SN Jul15 0:00 [ksoftirqd/0] root 4 0.0 0.0 0 0 ? S< Jul15 0:00 [watchdog/0] root 5 0.0 0.0 0 0 ? S< Jul15 0:01 [migration/1] root 6 0.0 0.0 0 0 ? SN Jul15 0:00 [ksoftirqd/1] root 7 0.0 0.0 0 0 ? S< Jul15 0:00 [watchdog/1] root 8 0.0 0.0 0 0 ? S< Jul15 0:00 [events/0] root 9 0.0 0.0 0 0 ? S< Jul15 0:00 [events/1] root 10 0.0 0.0 0 0 ? S< Jul15 0:00 [khelper] root 15 0.0 0.0 0 0 ? S< Jul15 0:00 [kthread] root 20 0.0 0.0 0 0 ? S< Jul15 0:00 [kblockd/0] root 21 0.0 0.0 0 0 ? S< Jul15 0:00 [kblockd/1] root 22 0.0 0.0 0 0 ? S< Jul15 0:00 [kacpid] root 90 0.0 0.0 0 0 ? S< Jul15 0:00 [cqueue/0] root 91 0.0 0.0 0 0 ? S< Jul15 0:00 [cqueue/1] root 94 0.0 0.0 0 0 ? S< Jul15 0:00 [khubd] root 96 0.0 0.0 0 0 ? S< Jul15 0:00 [kseriod] root 168 0.0 0.0 0 0 ? S Jul15 0:00 [khungtaskd] root 169 0.0 0.0 0 0 ? S Jul15 0:00 [pdflush] root 170 0.0 0.0 0 0 ? S Jul15 0:00 [pdflush] root 171 0.0 0.0 0 0 ? S< Jul15 0:00 [kswapd0] root 172 0.0 0.0 0 0 ? S< Jul15 0:00 [aio/0] root 173 0.0 0.0 0 0 ? S< Jul15 0:00 [aio/1] root 317 0.0 0.0 0 0 ? S< Jul15 0:00 [kpsmoused] root 361 0.0 0.0 0 0 ? S< Jul15 0:00 [ata/0] root 362 0.0 0.0 0 0 ? S< Jul15 0:00 [ata/1] root 363 0.0 0.0 0 0 ? S< Jul15 0:00 [ata_aux] root 373 0.0 0.0 0 0 ? S< Jul15 0:00 [kstriped] root 386 0.0 0.0 0 0 ? S< Jul15 0:04 [kjournald] root 407 0.0 0.0 0 0 ? S< Jul15 0:00 [kauditd] root 435 0.0 0.1 12672 764 ? S<s Jul15 0:00 /sbin/udevd -d root 1059 0.0 0.0 0 0 ? S< Jul15 0:00 [kmpathd/0] root 1060 0.0 0.0 0 0 ? S< Jul15 0:00 [kmpathd/1] root 1062 0.0 0.0 0 0 ? S< Jul15 0:00 [kmpath_handlerd] root 1112 0.0 0.0 0 0 ? S< Jul15 0:00 [kjournald] root 1429 0.0 0.1 5908 608 ? Ss Jul15 0:00 syslogd -m 0 root 1432 0.0 0.0 3804 424 ? Ss Jul15 0:00 klogd -x dbus 1492 0.0 0.1 21256 964 ? Ss Jul15 0:00 dbus-daemon --system root 1501 0.0 0.1 3800 580 ? Ss Jul15 0:00 /usr/sbin/acpid 68 1509 0.0 0.7 30604 3660 ? Ss Jul15 0:00 hald root 1510 0.0 0.2 21692 1056 ? S Jul15 0:00 hald-runner 68 1518 0.0 0.1 12324 844 ? S Jul15 0:00 hald-addon-acpi: listening on acpid socket /var/run/acpid.socket 68 1523 0.0 0.1 12324 848 ? S Jul15 0:00 hald-addon-keyboard: listening on /dev/input/event0 root 1532 0.1 0.1 10228 680 ? S Jul15 4:09 hald-addon-storage: polling /dev/hdc root 1547 0.0 0.2 62624 1208 ? Ss Jul15 0:00 /usr/sbin/sshd ntp 1558 0.0 0.9 23388 5028 ? SLs Jul15 0:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g root 1576 0.0 0.4 69004 2348 ? Ss Jul15 0:00 sendmail: accepting connections smmsp 1584 0.0 0.3 59764 1800 ? Ss Jul15 0:00 sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue root 1593 0.0 0.2 19708 1144 ? Ss Jul15 0:00 crond root 1601 0.0 0.0 18732 456 ? Ss Jul15 0:00 /usr/sbin/atd root 1615 0.0 0.2 52108 1332 ? Ss Jul15 0:00 login -- root root 1616 0.0 0.0 3792 480 tty2 Ss+ Jul15 0:00 /sbin/mingetty tty2 root 1617 0.0 0.0 3792 484 tty3 Ss+ Jul15 0:00 /sbin/mingetty tty3 root 1628 0.0 0.0 3792 480 tty4 Ss+ Jul15 0:00 /sbin/mingetty tty4 root 1629 0.0 0.0 3792 480 tty5 Ss+ Jul15 0:00 /sbin/mingetty tty5 root 1640 0.0 0.0 3792 480 tty6 Ss+ Jul15 0:00 /sbin/mingetty tty6 root 1641 0.0 0.1 3800 536 ttyS0 Ss+ Jul15 0:00 /sbin/agetty -h 115200 ttyS0 vt100 root 1684 0.0 3.1 201952 15920 ? SN Jul15 0:00 /usr/bin/python -tt /usr/sbin/yum-updatesd root 1686 0.0 0.2 12916 1160 ? SN Jul15 0:00 /usr/libexec/gam_server root 1722 0.0 0.6 90320 3528 ? Ss Jul15 0:00 sshd: root@pts/0 root 1724 0.0 0.2 10932 1440 pts/0 Ss+ Jul15 0:00 -bash root 1758 0.0 0.2 10928 1372 tty1 Ss+ Jul15 0:00 -bash root 10606 0.0 0.6 91048 3380 ? Rs 13:17 0:00 sshd: root@pts/1 root 10608 0.0 0.2 10932 1392 pts/1 Ss 13:17 0:00 -bash root 10643 0.0 0.1 10460 876 pts/1 R+ 13:38 0:00 ps -aux |
まず、コンソール(mingetty)はこんなに要らないので、減らします。
/etc/inittabを以下のように編集
|
デーモンも減らします。
[root@www10xxu ~]# chkconfig yum-updatesd off [root@www10xxu ~]# chkconfig haldaemon off [root@www10xxu ~]# chkconfig yum-updatesd off [root@www10xxu ~]# chkconfig acpid off [root@www10xxu ~]# chkconfig messagebus off |
これで再起動すれば、ずいぶんとメモリの空きができます。
再起動後に確認すると、使用中は150MBとなっていました。もう少しがんばれば、もっと削減できそうです。
なお、unixbenchも実行してみました。
index scoreは1540.6ですので、そこそこ速いのではないでしょうか。
# # # # # # # ##### ###### # # #### # # # # ## # # # # # # # ## # # # # # # # # # # # ## ##### ##### # # # # ###### # # # # # # ## # # # # # # # # # # # # ## # # # # # # # ## # # # # #### # # # # # ##### ###### # # #### # # |
と、雑多にまとめてみました。
なお、ただいまベータテスト中で、追加予定機能は山のようにあるので、状況を見ながらアップデートして行きたと思います。
ツイッターでもさまざまな要望を頂いていますが、ぜひ参考にさせていただきたいので、コンパネ上の「ご意見・ご要望」もご活用ください。
田中さま初めまして、斎藤と申します。
以前、渡部氏がアゴラへ
【月を追い掛けるGoogleクラウド】
http://agora-web.jp/archives/1039118.html
というエントリを載せられましたが、
そこで田中さまの後にコメントした者です。
本日は自身のブログで「さくらインターネットの社員の方」と
記載してしまったお詫びに参りました。
渡部氏のエネルギーの最大効率化、外気のみの冷却方法は、
もしかしたら理想論かもしれません。
この辺りはデータセンターを実際に管理する方との
ギャップがある事は事実と思います。
しかし、もしGoogleがそれを達成してしまったとき、
果たしてどうなるのかと想いを巡らせております。
私はどちらに傾倒しているというワケでもありません。
お二方とも応援させて頂いており、
また私もそこに参加せねばと思っております。
長々と失礼致しました。