Posted on Tue Mar 17 01:11:16 +0900 2009 by nabeken
Xenが登場して以来、XenベースのVPSサービスが多数登場しています。日本でもいくつか見うけられます。海外では日本よりも栄えており、選ぶのにも一苦労な感じです。値段も激安からほどほどで、どれを選ぼうか悩みます。
私は実家でここ4年ほど固定IPアドレスでサーバを2台運用していますが、やはり1台では何かと不安なため、外に1台…と考えていました。また、手元のマシンで Xen を試していたため、Xenの可能性はある程度把握していました。そこで、 Google 検索していろいろ探しました。条件は次の通り。
IPv6が使えるには2つの障壁があります。まず、カーネルモジュールまたはカーネルにIPv6が組み込まれていること。そして、sitによるトンネリングを許可しているか、です。
1つ目は ProVPS を契約しました。契約してからカーネルを確認すると IPv6 が組み込まれていない、かつ、IPv6モジュールが用意されていなった状態。これはカーネルのバージョンから Xen のバージョンを推定して、手元でIIPv6モジュールを用意するも、どうもIPv6スタックをモジュール経由で入れるにはそもそもカーネル側で設定が必要なようで、失敗しました。サポートに問い合わせても、返事がなく、返事を促したところ、カーネルのバグではないかという回答。カーネルに組み込んでくれという願いも虚しく、解約を申し込みました。その時、今月の料金はいらないよという話だったので、基本的には非常に良心的だと思います。普通に使うなら、安くていい選択肢だと思います。
2つ目は rimuhosing を契約しました。料金では ProVPS を上まわっていたのですが、 geek friendly な感じで、早速契約時に IPv6 は使えるかという質問を投げると、 native では用意していないが、トンネリングはできるからそれで我慢してくれ、という回答を得ました。海外であれは tunnelbroker.net が近いので、そこを利用してトンネリングを考えました。時差の関係で真夜中に契約したにもかかわらず、3時間もせず開通し、ログインできました。ディストリビューションも数種類、ただし、 Gentoo はリソース食うからやめてくれという注意書きもありました :-)(実はここはディスクイメージでも受け付けてくれるので、やろうと思えばできるが、ということ)
さて、ログインして dmseg を見るとまずモジュールは許可していませんが、リクエストすればすぐに組み込んでくれるようで、ほとんどが組み込み状態でした。IPVSもあります。また、SWAPはデフォルトで96MB付いています。メモリを増やしたため、今は切って運用しています。
# dmesg Linux version 2.6.16.38-xenU (kernelbuilder@host94.rimuhosting.com) (gcc version 4.1.2 20071124 (Red Hat 4.1.2-42)) #2 SMP Wed Aug 13 21:03:44 EDT 2008 BIOS-provided physical RAM map: Xen: 0000000000000000 - 0000000019800000 (usable) 0MB HIGHMEM available. 408MB LOWMEM available. NX (Execute Disable) protection: active On node 0 totalpages: 104448 DMA zone: 104448 pages, LIFO batch:31 DMA32 zone: 0 pages, LIFO batch:0 Normal zone: 0 pages, LIFO batch:0 HighMem zone: 0 pages, LIFO batch:0 Built 1 zonelists Kernel command line: root=/dev/xvda1 ro root=/dev/xvda1 ro root=/dev/xvda1 ro root=/dev/xvda1 ro root=/dev/xvda1 ro console=tty1 Enabling fast FPU save and restore... done. Enabling unmasked SIMD FPU exception support... done. Initializing CPU#0 PID hash table entries: 2048 (order: 11, 32768 bytes) Xen reported: 1994.997 MHz processor. Console: colour dummy device 80x25 Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) Software IO TLB disabled vmalloc area: da000000-f53fe000, maxmem 2d7fe000 Memory: 399232k/417792k available (3529k kernel code, 10012k reserved, 773k data, 212k init, 0k highmem) Checking if this processor honours the WP bit even in supervisor mode... Ok. Calibrating delay using timer specific routine.. 4267.88 BogoMIPS (lpj=8535778) Mount-cache hash table entries: 512 CPU: After generic identify, caps: 178bc3f1 ebd3fbff 00000000 00000000 00002001 00000000 0000001f CPU: After vendor identify, caps: 178bc3f1 ebd3fbff 00000000 00000000 00002001 00000000 0000001f CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line) CPU: L2 Cache: 1024K (64 bytes/line) CPU: After all inits, caps: 178bc3f1 ebd3fbff 00000000 00000410 00002001 00000000 0000001f Checking 'hlt' instruction... OK. Brought up 1 CPUs migration_cost=0 Grant table initialized NET: Registered protocol family 16 Brought up 1 CPUs xen_mem: Initialising balloon driver. Sangoma WANPIPE Router v1.1 (c) 1995-2000 Sangoma Technologies Inc. audit: initializing netlink socket (disabled) audit(1235210029.923:1): initialized VFS: Disk quotas dquot_6.5.1 Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) Installing knfsd (copyright (C) 1996 okir@monad.swb.de). fuse init (API version 7.6) JFS: nTxBlock = 3200, nTxLock = 25600 SGI XFS with ACLs, security attributes, no debug enabled SGI XFS Quota Management subsystem Initializing Cryptographic API io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered (default) i8042.c: No controller found. RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize loop: loaded (max 8 devices) nbd: registered device at major 43 PPP generic driver version 2.4.2 PPP Deflate Compression module registered PPP BSD Compression module registered PPP MPPE Compression module registered NET: Registered protocol family 24 tun: Universal TUN/TAP device driver, 1.6 tun: (C) 1999-2004 Max Krasnyanskynetconsole: not configured, aborting Xen virtual console successfully installed as tty1 Event-channel device installed. netfront: Initialising virtual ethernet driver. aoe: aoe_init: AoE v2.6-14 initialised. mice: PS/2 mouse device common for all mice md: linear personality registered for level -1 md: raid0 personality registered for level 0 md: raid1 personality registered for level 1 md: raid10 personality registered for level 10 md: raid5 personality registered for level 5 md: raid4 personality registered for level 4 raid5: automatically using best checksumming function: pIII_sse pIII_sse : 7018.000 MB/sec raid5: using function: pIII_sse (7018.000 MB/sec) md: multipath personality registered for level -4 md: faulty personality registered for level -5 md: md driver 0.90.3 MAX_MD_DEVS=256, MD_SB_DISKS=27 md: bitmap version 4.39 device-mapper: 4.5.0-ioctl (2005-10-04) initialised: dm-devel@redhat.com device-mapper: dm-multipath version 1.0.4 loaded device-mapper: dm-round-robin version 1.0.0 loaded device-mapper: dm-emc version 0.0.3 loaded GACT probability on Mirror/redirect action on Simple TC action Loaded netem: version 1.2 u32 classifier Perfomance counters on input device check on Actions configured Netfilter messages via NETLINK v0.30. NET: Registered protocol family 2 netfront: device eth0 has copying receive path. IP route cache hash table entries: 4096 (order: 2, 16384 bytes) TCP established hash table entries: 16384 (order: 5, 131072 bytes) TCP bind hash table entries: 16384 (order: 5, 131072 bytes) TCP: Hash tables configured (established 16384 bind 16384) TCP reno registered IPv4 over IPv4 tunneling driver GRE over IPv4 tunneling driver ip_conntrack version 2.4 (3264 buckets, 26112 max) - 232 bytes per conntrack ctnetlink v0.90: registering with nfnetlink. ip_conntrack_pptp version 3.1 loaded ip_nat_pptp version 3.0 loaded ip_tables: (C) 2000-2006 Netfilter Core Team ipt_recent v0.3.1: Stephen Frost . http://snowman.net/projects/ipt_recent/ ClusterIP Version 0.8 loaded successfully arp_tables: (C) 2002 David S. Miller IPVS: Registered protocols (TCP, UDP, AH, ESP) IPVS: Connection hash table configured (size=4096, memory=32Kbytes) IPVS: ipvs loaded. IPVS: [rr] scheduler registered. IPVS: [wrr] scheduler registered. IPVS: [lc] scheduler registered. IPVS: [wlc] scheduler registered. IPVS: [lblc] scheduler registered. IPVS: [lblcr] scheduler registered. IPVS: [dh] scheduler registered. IPVS: [sh] scheduler registered. IPVS: [sed] scheduler registered. IPVS: [nq] scheduler registered. TCP bic registered Initializing IPsec netlink socket NET: Registered protocol family 1 NET: Registered protocol family 10 lo: Disabled Privacy Extensions IPv6 over IPv4 tunneling driver ip6_tables: (C) 2000-2006 Netfilter Core Team NET: Registered protocol family 17 NET: Registered protocol family 15 Bridge firewalling registered Ebtables v2.0 registered ebt_ulog: not logging via ulog since somebody else already registered for PF_BRIDGE 802.1Q VLAN Support v1.8 Ben Greear All bugs added by David S. Miller Using IPI No-Shortcut mode Registering block device major 202 blkfront: xvda1: barriers enabled blkfront: xvda9: barriers enabled md: Autodetecting RAID arrays. md: autorun ... md: ... autorun DONE. kjournald starting. Commit interval 5 seconds EXT3-fs: mounted filesystem with ordered data mode. VFS: Mounted root (ext3 filesystem) readonly. Freeing unused kernel memory: 212k freed Adding 98296k swap on /dev/xvda9. Priority:-1 extents:1 across:98296k EXT3-fs warning: checktime reached, running e2fsck is recommended EXT3 FS on xvda1, internal journal sixbone: Disabled Privacy Extensions eth0: no IPv6 routers present
$ free -m total used free shared buffers cached Mem: 400 331 69 0 43 154 -/+ buffers/cache: 133 266 Swap: 95 0 95
Xenの運用にも熟れてきたのか、かなり安定しています。
07:35:19 up 117 days, 11 min, 0 users, load average: 0.01, 0.03, 0.00
契約して早1年です。Debian GNU/Linux ('lenny') で運用しています。2つしか使っていませんが、安定したサービスと先進的な機能を使いたい人はオススメです。
以前、メモリのアップグレードオファーが来ました。どうもホスト側でメモリを持て余していたみたいで、安くてもいいから、メモリどうだい?という内容。スワップを切って運用していたので、256MBを $5/month で追加しました。今は 128 + 256 で運用中。
VPSのあるテキサスのデータセンターでは、ハードウェアのスペック向上によりベースプランの改訂が行われました。その結果、同額でメモリが 400MB になりました。
Web上のコントロールパネルが充実しているため、ほとんどの操作がWeb経由で行えます。consoleもWebからできます(!)。
至れり尽くせりで、
などがあります。私は DNS のセカンダリーサービスを使い、計4台のDNSサーバを用意しています。構成は
で、地域もそれぞれ分散しています。
まず、DNSサーバのセカンダリ、MXのセカンダリが主な用途です。次に nagios による監視。v6に拘ったのもnagios で直接ホストを監視したかったからです。Postfix, MySQL, PowerDNS てんこ盛りで上がってるプロセスは 75 個。
月々の転送量は 2GB ほどです。一応、上限は40GB/monthなんですが、まあ越すことはないでしょう。
これを見て、使おうと思ったひとはぜひ下のリンクからどうぞ。質問などがあれば @nabeken でも受け付けています。
rimuhosting: http://rimuhosting.com/?r=7293ce3577152c8f477d9ebb794e4b09
最近では IPv6 を native で提供している VPS も増えてきました。一例を上げると、
Rimuhosting も対応してくれればいいんですが…。今年も要望を上げておきました。