タグ別アーカイブ: さくらVPS

以前の記事で書いた、さくらVPSでKNOPPIXを動かす記事のおまけ

 以前、KNOPPIXさくらのVPS(virtio_blk)上で動作するようにする記事を書いたけど、今回、仕事関係で複数のVPSサーバーをまとめて設定する必要が生じた為、KNOPPIX利用のイメージングをて行った。
 せっかくminirt.gzを作成したので、基本設定状態で差し替えればいいminirt.gzイメージを置いておく。

Virtio起動対応KNOPPIX用Bootイメージこのファイルをminirt.gzとして配置してやれば、KNOPPIXがVirtio起動デバイスなお名前VPSさくらVPSで動作するようになる。

  1. KNOPPIXを入手する(最新CD版を利用した)
  2. DaemonTools or WinRARを入手する
  3. KNOPPIXのISOイメージをDaemonToolsでマウントするかWinRARで開く。
    CDの/KNOPPIXをVPSの/KNOPPIXとしてコピーする。
    CDの/boot/isolinuxの中身をVPSの/boot/KNOPPIXにコピーする。
    ついでに、上に置いてあったknoppix_virtio.gzファイルで/boot/KNOPPIX/minirt.gzを置き換える。
  4. VPSのGRUB設定を追加する。
    VPSの/boot/grub/menu.lstに追記して、KNOPPIXを起動できる様にする(最下行に追記)

    title KNOPPIX
    root (hd0,1)
    kernel (hd0,0)/KNOPPIX/linux ramdisk_size=100000 init=/etc/init ro
    initrd (hd0,0)/KNOPPIX/minirt.gz

     デフォルトインストールのさくらVPSだと、hd0,0が/bootで、hd0,1が/なので、ルート配下の/KNOPPIXにアクセスする場合はhd0,1である。 なお、kernelとinitrdでは/boot/KNOPPIXに配置したファイルを使いたいので、hd0,0である。

  5. システムを再起動して、直ちにVNCコンソールを開く。
    GRUBのスタート画面でカーソルキーか何か押すと選択画面が開く。 この時、先ほど追記したKNOPPIXがあるので、選んでEnter。
    KNOPPIXが起動する。
  6. (5)


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

新さくら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容量も重要な要素なので)

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

(21)


カテゴリー: 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等を軽くいじるだけなので、相当急いで何十単位でサイト展開するわけでなければこの手順で十分いけるかと思う。

(41)


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

新さくらVPSをWindows化する – さくらのVPS(v3)にWindowsを新規導入する

 前回は既存のWindows化したさくらのVPSの新システムへの移行手順を書いたので、今回は新規にWindowsをセットアップする手順をメモっておく。
 この方法でお名前.com VPSもVirtio有効Windows化出来る。 Virtio無効なら従来のVMwareを使う方法で対応可能。

 前回同様、Proliant ML110 G7にKVMを構築してPrimergy TX100 S3にKVMを構築して、そこに導入したWindowsを導入してDDするという手順で導入することにする。

  1. CentOS 6.2 x86-64をダウンロードしてきてDVDに焼いてProliantに入れてインストール。
    インストール設定はDesktopモデルで追加設定として仮想化を全てOnにして導入して、SSHを外部ネットに公開しておく。

  2. Proliantの端末で virt-manager と打って仮想環境マネージャを起動する。
  3. 仮想環境マネージャでlocalhostに新規Virtualmachineを作成する。
    ステップ1では、仮想マシンの名前としてsakuraを設定、OSインストール方法はローカルメディアを選択する。
    ステップ2では、WindowsインストールディスクのISOイメージのパスを選ぶか、ディスクを挿入した物理ドライブのデバイスパスを設定する。 OSの種類とバージョンは導入するOSに合わせる。
    ステップ3では、適当なメモリ容量とCPUコア数を選ぶ。
    ステップ4ては、コンピューターのハードディスク上にディスクイメージを作成を選び、サイズはVPSのHDD容量より少ない範囲で適当に設定、すぐにディスク全体を割り当てる、を必ずチェック。
    Windowsインストールを行ってVirtualmachineをシャットダウンする。
  4. sakura Virtualmachineの設定画面でデバイスの追加を行い、ストレージデバイスをDisk bus=Virtioにして適当なファイルを作る。
  5. sakura Virtualmachineを起動する。
    Windowsが立ち上がってくると新規デバイスの検出画面が出てくるので、VirtIO SCSIドライバを導入する(Virtioドライバダウンロード
    Virtualmachineをシャットダウンする。

  6. sakura Virtualmachineの設定画面を再度開き、IDE Disk 1の設定を開いてDisk bus=Virtioに変更する。
    2個前の手順で追加したストレージデバイスを削除する。

  7. Virtualmachineを起動する。
    Windowsが立ち上がってくると再び新規デバイスの検出画面が出てくるので、VirtIO SCSIドライバを導入して(これで起動ドライブがVirtioに繋がった)シャットダウンする。

 この手順で、/var/lib/libvirt/images/sakura.img がVirtio起動用の新規Windowsイメージになったので、VPSにddで投入する。

 これをVPSに導入する手順。

  1. VPSの設定画面でカスタムインストールを選択して、Debianあたりを導入する。
    この時のパーティショニングは、
    先頭 Virtualmachineに設定したディスクサイズ 非マウント
    第2 残量全て /にマウント
    で切って、第2パーティションにLinuxを入れておく。

  2. 先ほどのVirtio化イメージをVPSに流し込む。
    VPSのコマンドラインで

    #ssh -l hoge nnn.nnn.nnn.nnn “cat /var/lib/libvirt/images/sakura.img” | dd of=/dev/vda

    hoge:Proliantのユーザ nnn.nnn.nnn.nnn:Proliantのアドレス

  3. VPSを再起動する。

 これで新さくらのVPS(Virtio)がWindowsで動くようになる。
 VNCコンソールからネットワークのIPアドレス等を設定すれば、後はリモートデスクトップで管理できる。

 全ての手順が完了してからWindowsアクティベーション処理を行う(自分のKVMに入れた段階で自動アクティベーションしてしまうと、さくらに入れた段階で構成が変わって再アクティベーションになり、オンラインアクティベーションが出来ず、電話認証になってしまう)

(36)


カテゴリー: Windows VPS | タグ: , , , | 8件のコメント

新さくらVPSをWindows化する – さくらのVPSの既存WindowsイメージをVirtio化(新プラン対応)

 従来のさくらVPSはHDDがIDEエミュレーションで繋がっていたので、VMware上にインストールした物をDDしてさくらVPS上に展開する方法が一般的だったけど、新サービスではVirtioで繋がっているために、Virtio Storage(SCSI)のドライバを組み込んでおかなければ起動途中に0x7bエラー(Boot device not found)でSTOPしてしまう。

 そこで、今回は普通にKVMを構築して、そこに導入したWindowsをDDするという手順で導入することにする。

 従来のVMwareを使う方法ではWindows環境上で済ませられたが、VMware上で更にKVMを動かすことは出来ないので、作業用にマシンを1台用意した。



 安くて、後々も使えるマシンとして、HPのProliant ML110 G7サーバーを選定。 クーポン利用で1万2千円程度。
 CPUはCeleronだがSandyBridge系のデュアルコアでVTに対応しているのでKVM動作可能(KVMはVTが無いと動かない)
 ECCメモリが乗っているのと、機能制限版のリモートマネジメント(OSが止まっていてもネットワーク経由でリブートしたり出来る)が乗っていて、本格的なサーバを思わせる仕様。

 こいつにCentOSを導入して作業する。

  1. CentOS 6.2 x86-64をダウンロードしてきてDVDに焼いてProliantに入れてインストール。
    インストール設定はDesktopモデルで追加設定として仮想化を全てOnにして導入して、SSHを外部ネットに公開しておく。

  2. 旧VPS上でVirtioドライバをダウンロードして解凍しておく。
  3. 旧VPS上にKNOPPIXをダウンロードする(最新CD版を利用した)
  4. 旧VPS上にDaemonTools or WinRARを入手する
  5. 旧VPS上にGrub4DOSを入手する
  6. 旧VPS上でKNOPPIXのISOイメージをDaemonToolsでマウントするかWinRARで開く。
    /KNOPPIXをC:\KNOPPIXとしてコピーする。
    /boot/isolinuxの中身をC:\KNOPPIXにコピーする。

  7. 旧VPS上にGrub4DOSを解凍して、grldrファイルをC:\にコピーする。
    C:\boot.iniファイルを編集(見えない場合は、エクスプローラの設定で、隠しファイルとシステム重要ファイルの表示をチェック)して、最下行に

    C:\grldr=”GRUB”

    を追記する。
    併せてTimeOutを長めにしておくと良い(30秒程度?)
    C:\menu.lstと言うテキストファイルを作成して、以下の内容を書き込む。

    title KNOPPIX
    root (hd0,0)
    kernel /knoppix/linux ramdisk_size=100000 init=/etc/init ro
    initrd /knoppix/minirt.gz

  8. 旧VPSのシステムを再起動して、直ちにVNCコンソールを開く。
    Windowsローダー(NTLDR)の画面で、WindowsとGRUBの選択状態になっているはずなので、GRUBを選んでEnter。
    GRUBの画面に切り替わって、唯一の選択肢KNOPPIXがあるので、選んでEnter。
    KNOPPIXが起動する。

  9. システムドライブのイメージを移行作業用にコピーする。
    ・ネットワークの設定
    KNOPPIXのターミナル操作

    #ifconfig eth0 xxx.xxx.xxx.xxx netmask 255.255.254.0
    #route add default gw yyy.yyy.yyy.yyy
    #cat > /etc/resolv.conf
    nameserver 8.8.8.8
    ctrl+d

    xxx.xxx.xxx.xxxはVPSの割り当てIPアドレス
    yyy.yyy.yyy.yyyは指定されたデフォルトゲートウェイ
    8.8.8.8はPublic DNS

    #dd if=/dev/sda | ssh -l hoge nnn.nnn.nnn.nnn “cat > /var/lib/libvirt/images/sakura.img”

    hoge:Proliantのユーザ nnn.nnn.nnn.nnn:Proliantのアドレス

  10. Proliantの端末で virt-manager と打って仮想環境マネージャを起動する。
  11. 仮想環境マネージャでlocalhostに新規Virtualmachineを作成する。
    OSインストール方法は既存のイメージ使用を選んで、ファイルはsakura.imgを選択、タイプはrawにする(raw=ddイメージと同等)

  12. 作成したVirtualmachineの設定画面でデバイスの追加を行い、ストレージデバイス、Disk bus=Virtioにして適当なファイルを作る。
  13. Virtualmachineを起動する。
    Windowsが立ち上がってくると新規デバイスの検出画面が出てくるので、VirtIO SCSIドライバを導入する。

  14. Virtualmachineをシャットダウンする。
    シャットダウン後にVirtualmachineの設定画面を開き、IDE Disk 1の設定を開き、Disk bus=Virtioに変更する。
    2個前の手順で追加したストレージデバイスを削除する。

  15. Virtualmachineを起動する。
    Windowsが立ち上がってくると再び新規デバイスの検出画面が出てくるので、VirtIO SCSIドライバを導入して(これで起動ドライブがVirtioに繋がった)シャットダウンする。

 この手順で、/var/lib/libvirt/images/sakura.img が既存のWindowsイメージをVirtio起動用にした状態のddイメージになった。

 これを新サーバに導入する手順。

  1. 新VPSの設定画面でカスタムインストールを選択して、Debianあたりを導入する。
    この時のパーティショニングは、
    先頭 30GB 非マウント
    第2 残量全て /にマウント
    で切っておく。

  2. 先ほどのVirtio化イメージを新VPSに流し込む。
    新VPSのコマンドラインで

    #ssh -l hoge nnn.nnn.nnn.nnn “cat /var/lib/libvirt/images/sakura.img” | dd of=/dev/vda

    hoge:Proliantのユーザ nnn.nnn.nnn.nnn:Proliantのアドレス

  3. 新VPSを再起動する。

 これで旧VPSで走っていたWindowsが完全コピーで新VPSに移動できた。
 VNCコンソールからネットワークのIPアドレス等を新VPS用に再設定する。
 システム構成が変わるので再アクティベーションが必要になる。

(52)


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

さくら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円ほど運用コスト削減できそうだ。

(80)


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

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

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

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

(54)


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