カテゴリー別アーカイブ: LAMP[Linux, Apache, MySQL, PHP]

RTX1000とWindows VPS間でIPSec方式VPN(メインモード)を構築する

 VPNのパターンとして、一般的なのは↓図の上のパターンだけど、お名前.com VPSでもさくらのVPSでもグローバルIPでネットに直結されているから、下のパターンを構築しなければいけない。

 しかし、この下のパターンの設定例がイマイチ見つからないので、色々試行してみた。
 MR504DVの場合はごくごく普通に設定を書けば下のパターンで動くんだけど、RTX1000の場合には普通の設定だとHost Aへの暗号化されたルートが自動で生成されないために、Host AからPINGを送るとRTXに受信されるけど、応答が宛先不明になる。
 ならば静的ルートを設定すればいいと言うことになるけど、

ip route XXX.XXX.XXX.XXX gateway tunnel 1

 とか書いてみる事になるけど、これっておかしい。 だって、XXX.XXX.XXX.XXXとの間に設定されているのがトンネル1だけど、XXX.XXX.XXX.XXXとの経路はそのトンネルを必要とする訳だから、鶏と卵になってしまう気がする。 で、実際、これじゃ動作しない。
 色々調べた結果、

ip route XXX.XXX.XXX.XXX gateway tunnel 1 filter 1001 1002 1999
ip filter 1001 reject * * udp * 500
ip filter 1002 reject * * esp
ip filter 1999 pass * *

 みたいに、フィルターを付けてやる事で通信できるようになった。

 IPSecまわりの設定のみ抜き出した

ip route XXX.XXX.XXX.XXX gateway tunnel 1 filter 1001 1002 1999
tunnel select 1
tunnel name VPSIPSec
ipsec tunnel 1
ipsec sa policy 1 1 esp des-cbc md5-hmac
ipsec ike always-on 1 on
ipsec ike encryption 1 des-cbc
ipsec ike esp-encapsulation 1 off
ipsec ike group 1 modp1024
ipsec ike hash 1 md5
ipsec ike local address 1 192.168.0.1
ipsec ike local id 1 YYY.YYY.YYY.YYY
ipsec ike payload type 1 3
ipsec ike pfs 1 off
ipsec ike pre-shared-key 1 text 事前共有鍵
ipsec ike remote address 1 XXX.XXX.XXX.XXX
ipsec auto refresh 1 on
ip tunnel tcp mss limit auto
tunnel enable 1
ip filter 1001 reject * * udp * 500
ip filter 1002 reject * * esp
ip filter 1999 pass * *

 これで、IPSecを実装したVPSと、RTX1000ルータ間でIPSec VPNが実現した。
 この状態だと、RTX1000側のLANにあるPCからVPSに平文通信を行ってもネット上では全て暗号化されるので、かなりセキュアである。

 RTX1000はかなり安く入手できて高機能&コンパクトでなかなかの優良ルータだ。 帯域制御とか優先制御とかも入れたくなるとCISCO 1812Jあたりが良い。
 どちらも、業務用だから設定がコマンドを基本としていてなかなか取っつきにくいところもあるが、色々と高度なことが出来るので導入して損はないと思う。 エンジニアとしては、CISCOがいじれるというのは一種のステータスでもあるし。

 なお、メインモードIPSecでは両端に固定IPが必要である。
 VPS側は普通に固定IPだからお名前.com VPSさくらのVPSあたりを利用して構築して、RTX1000側は固定IPが月額1,155円と激安のGMOとくとくBBを利用した。

 Linuxのままの場合は、L2TPの記事OpenVPNの記事が参考になる。 OpenVPNはCISCOのSSL-VPNと通信可能だったかな・・・?

(573)

カテゴリー: Windows VPS, サーバ設定 | タグ: , | コメントをどうぞ

新さくらVPSの実利用ケースで速度計測した。 ついでに、お名前.comのVPSも試した

 新しいさくらのVPSに移行が完了した。
 早速、以前構築したffmpegで地デジ録画をトランスコードするシステムを2GBプランで走らせて実効レートを測定してみた。
high(1280×720 High@L4.1)プロファイルの場合14fps
walkman(400×240 Base@L3.0)プロファイルの場合63fps
 従来の3980円コースの8割前後のスピード処理できて1480円なので、かなり良い感じ。
 HDDの容量が200GBもあるから、変換後のデータをストリーミング用に保存するのに別サーバがいらない感じ(Walkmanプロファイルは30分で85MB)

 性能にとりあえず満足したので、2台を本契約にした。
 メインのシステムの運用コストが3980+1480>1480x2に下がったので、追加で2GBプラン1台をテストに使っていたのだけど、お名前.comで登録してあるドメインの管理をしに見に行ったらお名前.com VPSサービスが新しくなっていて、従来、高くていまいちなVZだけだったのに、KVMのサービスが始まっていたため、さくらの試用期間が切れる前にこちらもテストしてみることにした。

 このお名前のサービスは明らかにさくらを狙っていて、さくらとUnixBench比較したり、サービス比較表を作ったりしている。
 お名前.com VPSは、月額1380円のコースがほぼさくら 2GB(月額1480円)に対応した状態。
 CPUは3コア、メモリは2GBと同等だが、HDDが70GBと少ない。
 しかし、ベースがKVMで、VirtioがON/OFFを自由に切り替えられたり、持ち込みのISOイメージからブートしたり出来るなど、細かいところで良い感じを出している。

 いつものイメージバックアップ展開法を使って、KNOPPIXのCDでブートしたお名前に、さくら上に配置してあったフルバックアップをddで流し込む(自前CDイメージが使えるので、GRUBからブートの処理をしなくて良い)
 なお、旧さくらのVPS同様にドライブが2デバイスに分かれていて、vda=20GB vdb=50GB(hda/hdb)の状態になっていた。
 何の問題もなくVirtioでさくら上で使っていたイメージが動作開始。 仮想コンソールの操作性がイマイチ(ハングしたり重い)なのだけど、がんばってIP設定などを修正して、リブートすると普通にSSHで操作して残りのセットアップ。
 で、動画トランスコードシステムを走らせてみた結果・・・
high(1280×720 High@L4.1)プロファイルの場合21fps
walkman(400×240 Base@L3.0)プロファイルの場合90fps
 はやっ。 さくら速いなと思っていたけどそれ以上に速い。
 ディスク性能が著しく低下する事があるけど、それでもこの演算能力は魅力的だ。
 実環境でUnixBenchを測定すると、公式で謳っている3000は出ないことが多いものの(ディスクアクセスがイマイチ)、ウェットストーンが2000近く、演算能力の高さを伺わせる。

 ディスクの並列アクセス性能が非常に低い様だ。
 UnixBenchのディスク周りの結果を抜き出してみる(Virtio_blkオン)
並列無し

3パラ

並列にすると細かいほど低下していて、ごく普通のダイレクトディスクアクセスを思わせる結果。

さくら2GBの3パラの結果が

であるから、DB処理等でランダムなディスクアクセスが発生するとお名前は一気に遅くなりそうな傾向。 さくらは親OS側かRAID周りで大きいキャッシュを切っているのかもしれない。

 また、実際の利用だと、さくらよりもネットワーク帯域も狭めで大きいファイルの転送にはちょっといらつく。

 さくらの3本化はやめて、さくらのVPS2本+演算用にお名前.com VPSを1本契約して、演算済みの物をさくらに転送する感じで運用してみよう(用途的にHDD容量も重要な要素なので)

 演算性能重視ならお名前、ディスク容量・バランス重視ならさくらが良いかと思う。

(210)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP], レビュー | タグ: , , , | コメントをどうぞ

KNOPPIXをVirtio(virtio_blk)=さくらVPS新プラン上で動作するようにする – VPSでddによるイメージフルバックアップ環境設定

 既存のLinux GRUB上からKNOPPIXを起動する手順で配置したKNOPPIXを起動しようとすると新さくらのVPS上では”Could not mount disk to /mnt-system.”エラーが出て起動できない。
 これは、KNOPPIXのmini rootにVirtioドライバが組み込まれていないためであるので、mini rootを修正してVirtio_blkから起動できるようにする。

 基本的な作業環境は、先の手順でKNOPPIXを配置した環境。
 KNOPPIXは6.7.1日本語版CD

  1. 必要なドライバを取得する
    適当なマシンでKNOPPIXを起動して以下のファイルをコピーする。
    /KNOPPIX/lib/modules/3.0.4/kernel/drivers/virtio/virtio.ko
    /KNOPPIX/lib/modules/3.0.4/kernel/drivers/virtio/virtio_ring.ko
    /KNOPPIX/lib/modules/3.0.4/kernel/drivers/virtio/virtio_balloon.ko
    /KNOPPIX/lib/modules/3.0.4/kernel/drivers/virtio/virtio_pci.ko
    /KNOPPIX/lib/modules/3.0.4/kernel/drivers/block/virtio_blk.ko

  2. mini rootを作業用に展開する

    #mkdir /tmp/minirt
    #cd /tmp/minirt
    #gzip -d /boot/KNOPPIX/minirt.gz | cpio -i -c

  3. mini rootにドライバを配置する

    #mkdir /tmp/minirt/modules/virtio

    先ほどのドライバを /tmp/minirt/modules/virtio の中へコピーする。

  4. 起動スクリプトを編集する

    #vi /tmp/minirt/init

    ドライバの組み込みとスペシャルファイルの作成設定
    KNOPPIX 6.7.1の場合355行(KNOPPIXロゴ下load_modules呼出下)]

    insmod /modules/virtio/virtio.ko
    insmod /modules/virtio/virtio_ring.ko
    insmod /modules/virtio/virtio_balloon.ko
    insmod /modules/virtio/virtio_pci.ko
    insmod /modules/virtio/virtio_blk.ko
    mknod /dev/vda b 251 0
    mknod /dev/vda1 b 251 1
    mknod /dev/vda2 b 251 2
    mknod /dev/vda3 b 251 3
    mknod /dev/vda4 b 251 4
    mknod /dev/vda5 b 251 5
    mknod /dev/vda6 b 251 6
    mknod /dev/vda7 b 251 7
    mknod /dev/vda8 b 251 8
    mknod /dev/vda9 b 251 9

    仮想デバイスのマウント設定
    KNOPPIX 6.7.1の場合622行]

    elif ! findknoppix $(listpartitions ‘hd[a-z]’ ‘hd[a-z][0-9]*’ ‘scd[0-9]*’ ‘sr[0-9]*’ ‘sd[a-z]’ ‘sd[a-z][0-9]*’); then

    elif ! findknoppix $(listpartitions ‘hd[a-z]’ ‘hd[a-z][0-9]*’ ‘scd[0-9]*’ ‘sr[0-9]*’ ‘sd[a-z]’ ‘sd[a-z][0-9]*’ ‘vda’ ‘vda[0-9]’); then

    if [ -d /sys/bus/usb/drivers/usb-storage ]; then
    for i in 1 2 3 4 5 6 7 8 9 10; do
    message -n -e “\r${CRE}${BLUE}${WAITFORUSB}${NORMAL}”
    sleep 2

    findknoppix $(listpartitions ‘scd[0-9]*’ ‘sr[0-9]*’ ‘sd[a-z]’ ‘sd[a-z][0-9]*’) && break

    findknoppix $(listpartitions ‘scd[0-9]*’ ‘sr[0-9]*’ ‘sd[a-z]’ ‘sd[a-z][0-9]*’ ‘vda’ ‘vda[0-9]’) && break

  5. mini rootを再パッケージして配置する
    # cd /tmp/minirt
    # find . | cpio -c -o | gzip -c > /boot/KNOPPIX/minirt.gz

 この手順で、/boot/KNOPPIX/minirt.gz イメージがVirtioのvdaデバイスから起動できるようになったので、従来の手順同様にGRUBからKNOPPIXを選択すれば新さくらのVPSでもKNOPPIXを起動できるようになる。
 これで本体OSを止めてKNOPPIXから起動できるようになるので、従来のddイメージコピーで安全にフルコピーがとれるようになる。
 さくらのVPS間でのdd over sshでのイメージコピーは7~9MB/s程度のレートで転送できるので、先頭20GBのみの転送で使用すればダウンタイムは1時間以下である。
 新規でさくらのVPSの環境を構築する場合にも、イメージバックアップを利用したい場合には、最初にカスタムインストールを行って、先頭に/と/bootパーティションを押し込んで、/homeを別途切っておいたほうがダウンタイムを押さえられる(/homeは後からscp等でコピーする)

1ディスクデバイス上の先頭にパーティションを切った場合、ddのbs(ブロックサイズ)オプションとcount(ブロック数)オプションを組み合わせて、bs * countバイトだけコピーできる。

 イメージバックアップを行う場合、セクタ換算で処理するために、200GB中10GBしか使用していなくても200GBの転送が発生するが、田中社長ブログにあるrsyncの方法によれば実際に使っている容量しか転送しないため、相対的に転送処理時間が長くなる可能性があるが、KNOPPIXを経由してイメージバックアップすると完全複製なので、旧サーバの上物が完全移行できる。
 クラウドのように同構成のサーバを複数展開したい場合、1サーバをセットアップしてイメージバックアップを展開用サーバに保存して、VPSを任意に追加してイメージを入れていくことでVPSでも横展開が楽に行える。

 この利用パターンで、エリア毎にDBの設定レコードだけが異なるサイト群を立ち上げるのに、1サイトにシステムを展開してイメージ展開している。
 新規サイトの展開時間はネットワークの転送速度で決まるが、20GBのみ切り出したシステムでは1サイト40分程度の作業時間で転送できる。 1からセットアップするのに比べれば速いが、クラウドに比べると遅い感じもする。
 並列に展開できるので、寝る前にVPS5個位展開開始してやると、朝には展開完了していて、管理画面から再起動をかけてifcfg等を軽くいじるだけなので、相当急いで何十単位でサイト展開するわけでなければこの手順で十分いけるかと思う。

(609)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | タグ: , , , , , , | 4件のコメント

さくらVPSの新プラン、さくらのVPS(v3)2GBでベンチマーク(UnixBench)を取得した

 さくらのVPSの新プランである2GBプランでベンチマークを取得してみた。

1,初期起動
2,yum install perl-Time*
3,wget http://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz
4,tar xzf UnixBench5.1.3.tgz
5,cd UnixBench
6,./Run

 トータルでは旧4GBプランを超える性能を出しており、コストパフォーマンスの高さを感じる。
 ただし、Virtio化したディスクアクセスとドライストーンの向上が主な要因で、ウェットストーンではやや劣る結果だが、月額3980円から1480円に下げて性能がほぼ同等というのは魅力的だ。 単体で2GBを超える主記憶が必要な場合を除けば切り分けして運用するというのもアリかもしれない。
 今回、2GBプランを2契約したので、4GBが1台だったのをDB専用・アプリケーション専用の2台構成に切り分けて月額1000円ほど運用コスト削減できそうだ。

(452)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP], レビュー | タグ: , , , | コメントをどうぞ

さくらVPSの新プラン、さくらのVPS(v3)4GBでベンチマーク(UnixBench)を取得して旧4GBと比較した

 さくらのVPSの4GBプランで新旧のベンチマーク(UnixBench)を取得してみた。

 Virtioによるディスクアクセスの高速化が著しいが、ドライストーン(軽いCPU処理パターン)も倍近く上昇しているし、ウェットストーン(重いCPU処理パターン)も上昇しているから、ディスクアクセスとCPU処理が影響してくる動画エンコード処理で性能を測定してみたいので、従来のサーバで構築していた動画エンコードシステムを新サーバに移行して実利用での性能差を測定してみよう。

(493)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP], レビュー | タグ: , , , , | 3件のコメント

さくらのVPS 新プランスタート

 先日から話題になっているさくらのVPSの新プランだけど、さくらの告知によれば、3/29から2GBプランの初期費用無料キャンペーンスタートと、本日12時までVPS申し込みページのメンテナンスが行われると言うのが上がっているので、そのメンテ終了後の12時から受け付け開始されると思われる。
 現行の1GB+4GB(1480+3980=5460)を2GBx3(1480*3=4440)にしようかな・・・

 12:00 > 受け付けが開始されたが、サイトが高負荷で応答しない・・・

 15:35 > 2GBプランが資材不足のため新規受け付け停止、申し込み受け付け再開時期は不明らしい・・・
 とりあえず、新4GBを試用してみるか。

 17:00 > 申し込みから3時間ほどして2GBプランが使える様になった。
 従来のプランでは、20GB+残量に分けられていたHDDデバイスが1デバイスにまとまっていて、デバイスがVirtioになっているのが大きな違い(debianで起動すると/dev/vdaが200GBになっていた)
>VirtioはIDEやSCSI等と同じレイヤーのデバイスなので、従来のイメージを丸コピーした場合、Virtioドライバを組み込んでいないと動作しない(Windows化している環境をイメージコピーする場合は、旧環境でVirtioドライバを強制導入してから移動)

(104)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ

さくらのVPSで従来プランのアップグレード対応が発表になっていた

 さくらのVPSの発表だと、従来プランの512,1G,1.5Gプランについて、メモリを1G,1.2G,1.75Gにアップするメンテが4月にあるらしい(512はサービスストップ有りで、1・1.5Gはノンストップ)
 しかし、HDD容量は変わらないので、やはり移行した方が良いのかな?
 詰め込み具合によってはCPUパワーがダウンすると言うこともありそうだから、サービス開始後にベンチとかを取ってみて比較してから移行した方が良いかもしれないな。

(173)

カテゴリー: LAMP[Linux, Apache, MySQL, PHP] | コメントをどうぞ