ページへ戻る

− Links

 印刷 

inc​/linux​/net121216 :: なーおんWEB

xpwiki:inc/linux/net121216

ページ内コンテンツ[1]
  • 自作PC・家庭内ネットワーク update 2012/12/16
    • 過去ログ
    • 1.概要
      • 1-1 今回アップデートの経緯
      • 1-2 eSATA接続HDDケース
      • 1-3 ESXi5の構成
        • ESXi5のバージョン
        • ESXi5.0U1のパッチ
      • 1-4 ストレージ管理ゲストOS: Cent-OS 6.3
      • 1-5 同一ホスト上にあるゲストのiSCSIターゲットをマウントする方法
      • 1-6 消費電力
      • 1-7 速度
      • 1-8 副産物
      • 1-9 当サイト内の関連記事
    • 2. ネットワーク・ハードウエア構成とサービス
      • 2-1 ネットワーク構成
      • 2-2 実マシン
        • 2-2-1写真
        • 2-2-2 ハード構成
        • 2-2-3 その他
      • 2-3 公開サーバーのサービス
        • 2-3-1 公開中のサービスとポート
        • 2-3-2 各サービス
        • 2-3-3 移行したサーバー上での公開サイト
    • 3.参考サイト

自作PC・家庭内ネットワーク update 2012/12/16 anchor.png[2]

  • (2012/12/16) サーバーのVMWare ESXi 5.0U1 にアップし、ストレージをローカルのSSD+ローカル外付けeSATA接続のHDDケースRAID-1ストレージに更新。
Page Top

1.概要 anchor.png[10]

Page Top

1-1 今回アップデートの経緯 anchor.png[11]

 前回構成[12]の検討段階ではeSATA外付HDDケースでRAID-1構成とし、FreeNASの外部ストレージは予定していなかったのだが、eSATAケースの書き込み速度が非常に遅くて断念した[13]ため、省エネに逆行する妥協の産物であった。
 幸いなことに、最近ためしてみたNOVACのケースはESXi5からeSATA接続で書き込み速度もそれなりに出るとわかったので、善は急げということで移行した。

  • eSATAのRAID-1ディスクには、基本的には内部データストレージ用。
  • 公開用のLinux仮想マシンや、クライアント用Windowsなどは
    • システム用VMFSディスクは従来どおり高速なSSDに置く。
    • 万一のクラッシュに備えてデータエリアは今回追加した外付けRAID-1ストレージを、CentOS6でiSCSIターゲットを作りこれをマウントして使用することで、キャッシュの効いた高速なディスクとして使用する。
Page Top

1-2 eSATA接続HDDケース anchor.png[14]

今回、お試しで買ってみたところ使えそうだった以下の物を使用。 新規購入は外付けHDDケースだけです。

02d6b4e0e3291a80aab77a0791c8af76e8.JPG[15]
  • eSATAボード:玄人志向 SATA2E2-PCIe[18] (SATAII) eSATAカード
    • 実勢価格:3,500~4,000円程度[19]
    • SATA2 (3Gbps、NCQ), SiliconImage Sil3132搭載, PCI-Express x1対応
    • 実際は、マザーボード内蔵のeSATAポートを使用しますが、メンテ用に使えることの確認は重要。 :-)
    • ドライバはこれを有り難く使用させていただきました。
      ESXi5.0のドライバを作成してみる(Silicon Image 3124/3132/3531編)[20](環境さんぷる)
      • 残念ながら私の環境では、ESXi5.1では動作しませんでした。
      • FreeNASを使わなくなってしまいました。どうぞお許しを・・
  • このタイプのケースで使えるRAID-1ミラーリングは、
    • 専用の速度重視のRAIDカードと異なり独自フォーマットを使っていません。
    • よって、速度がそれほどでも無い代わりに、HDDケース自体にトラブルが発生した時でも中のDISK1台をSATAに繋げばそのまま認識してくれるメリットがあります。
Page Top

1-3 ESXi5の構成 anchor.png[21]

Page Top
ESXi5のバージョン anchor.png[22]

テストしたeSATAポートの種類

  1. マザーボードのeSATAポート
  2. マザーボードの内蔵SATAコネクタから、単純変換ケーブルでeSATAポートに変換したもの
  3. eSATAボード SATA2E2-PCIe (SiI3132)
  4. 内部SATAボード(PCI、sil3132チップ):玄人志向 SATA2E2-PCIe から、単純変換ケーブルでeSATAソケットに変換したもの
  • テストしたESXiのバージョン
    • ESXi5.0.0 build 469512
    • ESXi5.0.0 UPDATE1 build 623860
      ESXi5.0.0 build 469512 と ESXi5.0.0 UPDATE1 build 623860は同じ結果だったので以下5.0と表記。
    • ESXi5.1.0a build 914609
ESXi5.0ESXi5.1
1 :M/B内蔵eSATA
2 :内蔵SATA→eSATA××
3 :SATA2E2-PCIe(SiI3132)×→○
4 :SATA2E2-PCIe→eSATA×→○

以上のように、ESXi5.1では、M/B内蔵eSATAポート以外は全滅。5.0のまま移行しました。
(以下、訂正)

  • その後、aoyama様より、ESXi5.1はデフォルトでsil3132ドライバが入っているので、追加ドライバは不要かつ干渉するとの情報をいただきました。 後日再度ESXi5.1.0+patch(Build914609)で試してみたところ、確かに認識しました。ありがとうございました。
  • ということで、現在はESXi5.1.0+patch(Build914609)にて運用中です。
Page Top
ESXi5.0U1のパッチ anchor.png[23]

 ESXi5.0U1にアップすると、ゲストOSの自動起動が無効になってしまいます。

 私の場合は、5.1まで上げると上記のSilicon Image 3124ストレージアダプタのドライバが動作してくれなかったのでESXi5.1は断念しました。 解決策として、5.0のパッチを当てていって最新版にしました。(パッチ後のバージョンは、ESXi5.0.0 Build 821926)

 ホストをメンテナンスモードに移行したあと、VMwareのサイトから最新版(今の時点では ESXi500-201209001.zip)をダウンロードし、ESXiの「/vmfs/volumes/データストア名/」フォルダにアップロードしたあと、SSHで以下のコマンドを実行します。

# esxcli software sources profile[24] list --depot=/vmfs/volumes/データストア名/ESXi500-201209001.zip
    • (ソースリストを確認)
# esxcli software profile[24] update --depot=/vmfs/volumes/データストア名/ESXi500-201111001.zip --profile[24]=ESXi-5.0.0-20120904001-standard
    • (実際のインストール)

その後、再起動して、ゲストOSが自動起動するのを確認します。

SSHでのパッチの当て方は、以下のサイトを参考にしました。

Page Top

1-4 ストレージ管理ゲストOS: Cent-OS 6.3 anchor.png[26]

 2.5TBのストレージを管理する仮想ゲストOSは、新規にインストールしたCentOS-6.3を使用、内部ネットワークにsambaファイル共有エリアを供給したり、他のゲストOS用にtgtdを用いたiSCSI接続を供給します。

 なお、旧FreeNAS上のZFSフォーマット2.5TBディスク2台をそのまま活用したいため、 まずデータをESXi上の仮の1.5TBディスクにVMFSを切り出してLVM構成してデータ内容をコピーしておき、FreeNASマシンから取り外したディスクを本設用外付けHDDケースに格納して、LVMのpvmoveコマンドでデータ移動しました。
 1.3TB程度のデータ移行に1日半もかかってしまった。。 :roll:

Page Top

1-5 同一ホスト上にあるゲストのiSCSIターゲットをマウントする方法 anchor.png[27]

 今回、ゲストマシンのiSCSIターゲットを同一ESXiホスト上で動くゲストマシンで参照する場合、ESXiが起動してもそのゲストマシンが立ち上がっていないので、iSCSI接続に失敗します。 よって、ストレージデバイスの「再スキャン」を自動で行うことで、iSCSI接続を活性化させマウントし、ストレージとして使用するゲストOSの立ち上げを遅らせる方法をとります。

  • 私の場合は、ホスト起動直後の1回だけでは不安があったので、ホストマシン起動中に1分に1回、再スキャンさせることにしました。 ;-)
    # vi /vmfs/volumes/データストア名/iscsirescan.sh
    Everything is expanded.Everything is shortened.
     
    
    esxcli storage core adapter rescan --all
    • ESXi5.0の場合
      # chmod 755 /vmfs/volumes/データストア名/iscsirescan.sh
      #
      # vi /etc/rc.local
      Everything is expanded.Everything is shortened.
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      
      -
      !
       
       
       
       
       
       
       
      -
      -
      -
      -
      |
      |
      !
      !
      !
      |
      -
      !
      |
      |
      
      #!/bin/sh
       
      export PATH=/sbin:/bin
       
      log() {
         echo "${1}"
         /bin/busybox logger init "${1}"
      }
       
      # execute all service retgistered in ${rcdir} ($1 or /etc/rc.local.d)
      if [ -d "${1:-/etc/rc.local.d}" ] ; then
         for filename in $(find "${1:-/etc/rc.local.d}" | /bin/busybox sort) ; do
            if [ -f "${filename}" ] && [ -x "${filename}" ]; then
               log "running ${filename}"
               "${filename}"
            fi
         done
      fi
       
      ########### rescan drives
      /bin/kill $(cat /var/run/crond.pid)
      /bin/echo "*	*	*	*	*	/vmfs/volumes/(データストア名)/iscsirescan.sh" >> /var/spool/cron/crontabs/root
      /bin/busybox crond
    • ESXi5.1の場合
      # vi /etc/rc.local.d/local.sh
      Everything is expanded.Everything is shortened.
      1
      2
      3
      4
      5
      
      -
      |
      !
       
       
      
      #!/bin/sh
      ########### rescan drives
      /bin/kill $(cat /var/run/crond.pid)
      /bin/echo "*    *       *       *       *       /vmfs/volumes/(データストア名)/iscsirescan.sh" >> /var/spool/cron/crontabs/root
      /bin/crond
Page Top

1-6 消費電力 anchor.png[30]

 UPSの出力モニタで確認したところ、実運用・eSATAストレージ・光モデムルーター・スイッチングハブ2台など補機込みで130W程度です。 前回のFreeNAS用にE350M1/USB3に変更した構成で160W程度でしたから、30Wほどの省エネですね。 当分この消費電力で押さえていけそうな気がします。

  • OMRON UPS BY50S の管理ソフト Power Act Pro CO2排出量の項目で平均消費電力を見れます。
Page Top

1-7 速度 anchor.png[32]

 同一サーバー上のiSCSIをマウントしたストーレジからwindowsXPにディスクを切り出してCrystalDiskMarkをかけてみると、5,400rpmのWD25のミラーリングとしては目を見張る数値がでました。

  • おそらく、iSCSIターゲットのキャッシュが効いている。
  • SSDをESXiホストキャッシュやゲストのswap領域にもSSDを指定していることも好影響と思う。
  • 細かなアクセスの多い公開WEBサーバー用としては、なかなか使えるのでは。
  • 先日、iSCSIではなく単なるVMFS上のLVMボリュームとしてマウントしたストレージでの速度は、WD6400でも以下の程度でした。 上の結果にビックリした訳をおわかりいただけるかと思います。
Page Top

1-8 副産物 anchor.png[35]

 内部データストレージが同一サーバー上にあるため、ESXi上のゲストマシン同士の通信は物理層を通らない内部ネットワークで行うことができる。 よって、

  • 実体NICを通過する通信量が減るため、家族用ゼロクライアントの安定性が向上。 時々起きるブチッとブルースクリーンで飛ぶ頻度が減った。
  • WindowsXPゲストマシンをMusicサーバーと、USBサウンドデバイスへASIO出力経由でDACへ送りピュアオーディオを鳴らしているのだが、外部ストレージの時は他のマシンのネットワーク通信が増えるとブチブチ多かった雑音がだいぶ減った。

 という感じで、期待以上に満足度の高い構成になった。 :-D

Page Top

1-9 当サイト内の関連記事 anchor.png[36]

以下に、関連記事へのリンクを貼っておきます。

Page Top

2. ネットワーク・ハードウエア構成とサービス anchor.png[38]

Page Top

2-1 ネットワーク構成 anchor.png[39]

 
  1. 社内ネットワークと公開サーバーを置くネットワークとの完全分離は、会社規模の関係もありできませんが、フリーの仮想ブロードバンドルーター「Vyatta」を配置することにより、同一マシン上の仮想ホスト間でセグメントを分離し、通信の遮断をしています。

  2. モーションクリエイト[41]社内PC(各社員使用)のインターネット接続に関しても、このルーターを経由し、念のため個人用回線側をゲートウエイとする構成となっています。
    これらの構成により、インターネット側から社内ファイルサーバーへのアクセスはできません。

  3. ゼロクライアント端末のデバイス群とゲストマシンが不安定になることがあったので、内部LAN用のNICを2枚差しとしてチーミングしてみました。 これで少し安定してくれると嬉しいな。
Page Top

2-2 実マシン anchor.png[42]

Page Top
2-2-1写真 anchor.png[43]

写真右側 ESXi公開サーバー
server100305.jpg[44]
 
Page Top
2-2-2 ハード構成 anchor.png[45]

外付けHDD CASE以外は、HDDも含み全て旧品流用品。

Page Top
2-2-3 その他 anchor.png[58]
  • ホーム用BBルーター:(NEC)Aterm PA-WR8700N-HP[59]
    家族用ゼロクライアントからのアクセスを、悪質サイトフィルタリング。
  • UPS:(OMRON)BY50S[60]
    正弦波出力なのでPC側電源との相性も安心。 USBでESXiマシンに接続し、電源管理ツール「Power Act Pro」をWindowsゲストOS上にインストールして、停電時にゲストOS達をシャットダウンさせることが可能。 但し、ESXi5用のハイパーバイザ自体にインストールするクライアントソフトは、本記事執筆時点で未公開。
Page Top

2-3 公開サーバーのサービス anchor.png[61]

Page Top
2-3-1 公開中のサービスとポート anchor.png[62]

以前と変わっていませんが、公開サーバーでは、主に以下のサービスとポート開放をしています。
攻撃対象に成りやすいポート(telnetやsshなど)は閉じてあります。

    • WEBサービス (Apache、PHP、MySQL、Perl)
    • FTPサービス(SSL暗号化)
    • SMTP、POP、IMAPメールサービス(SSL暗号化)
    • DNS
Page Top
2-3-2 各サービス anchor.png[63]
    1. 自社運営のWEBサービスでは、必要に応じてSSL接続を行い、成りすましなどによるサイトの乗っ取りや通信傍受などに対処します。 また、掲示板等でのHTML記述を基本的に禁止し、クロスサイトスクリプティングへの予防処置とます。 各サイトにDoS攻撃などに対処するソフトを使用し、クラッキングからの防御を図ります。
    2.  FTPサービスでは、SSL/TLS暗号化を必須としており、通信の暗号化により成りすましなどによるサイトの乗っ取りを予防します。
    3.  メールサービスでは、POP、IMAP、SMTP各サーバー接続にSSL暗号化(任意)を選択し、通信傍受などに対して情報の漏洩を予防します。
Page Top
2-3-3 移行したサーバー上での公開サイト anchor.png[64]

 今回移行した仮想サーバー上で稼動している公開サイトは、以下になります。まだ増やせそうですが、ほとんど休眠サイトになってきました。  :hammer:

  1. なーお'nWEB[65] (ここですね)
  2. (有)モーションクリエイト[66]
  3. Motion cafe[67]
  4. モバイルテンプハウス[68]
  5. 蘇我みくすクラブ・さんぶクラブ別館[69]
  6. みやこどりソフトテニスクラブ[70]
  7. 積層スピーカーの会[71]
  8. Lafesta cafe.[72]
  9. スマイル(住まいづくりプロデューサー)[73]
  10. d3diaryテストサイト[74]
  11. 集まれ!塩ビスピーカーの会 コミュニティ[75]

その他に非公開いくつか・・

Page Top

3.参考サイト anchor.png[76]

 構築の際に参考にさせていただいたページリンクです。



Last-modified: 2019-08-17 (土) 07:11:56 (JST) (1708d) by なーお