【NW】IPv6 - NATPTとは 
またまたIPv6ネタです。しかも今回は概要を理解しないとかなり混乱するというか分かりづらいです。今回も検証にはGR2000を使っています。




ここに来てGR大活躍ですよ最近。実験には最適なルーターですね。NAT処理もHWでやってくれれば家庭内で実用最強ルーターなんですが(まだ言う

GRを使うので、一番確実なのは本家日立のGR2000の「解説書 Vol.1」と「構成定義ガイド CLI編 -CLIタイプ1階層入力形式」を読むことですが、それだけだとちょっと分かりづらかったので砕いて説明してみようと思います。

GR2000Bモデルを持っていて、なおかつRoute-OS8.4(8.3もコマンド類は同じようですが手元にないので未確認)を持ってる人の参考にでもなればと思います←対象者がコアすぎる
まあそのレベルの人はおそらくこんな説明不要だと思いますがw

ところで、上の「解説書 Vol.1」はオライリーではないですが、概要説明を何となく読んでいるだけでもかなり勉強になるのでおすすめです。結構真剣に。
…あまり宣伝してしまうと日立から怒られそうなのでこの辺にしておきます

そもそもNATPTとは




Network Address Translation - Protocol Translationの略で、相互に互換性のないv4とv6を互換させ、現在のIPv4体系を変更せずにIPv6を導入できるというメリットを持っています。v4-v6トンネルとは違い外から見るとネイティブv6環境に見えるのが特徴です。これから需要増えるのではないですかね?
GRの場合、IPv6の/64と言う広大なサブネットの中から/96分のアドレスを使用してv4-v6対応をさせます。
IPv6 1111:1111:1111:1111 :2222:2222:FFFF:FFFF/64

1111=グローバルアドレスPrefix
2222=/64でアドレスをもらった場合に自分で自由に使えるグローバルアドレス
FFFF=その中からNATPT用に割り当てるアドレス

IPv6では理論上65535^4個もグローバルアドレスがもらえるよ!やったね!全マシンを同一サブネットで繋いだらスイッチが血を吐くよ!
個人的には/96でもいいのでは…とか思ってしまいますが。それでもIPv4が使える全てのIP数と同じですからね…

NATPTではv6でv4のアドレスにアクセスするために 192 168 1 1をそれぞれ16進法に変換します。
192=c0
168=a8
1=01
1=01
となるので、1234:0:0:0 :0:0:0:0/96のアドレスからNATPTで変換すると
1234::c0a8:101
となります。(最後は0101が正しいのですが先頭の0は省略されるというv6の特徴でこうなります。)
ちなみに、Windows7(WinVistaも?)からはping 1234::192.168.1.1とやると

C:\Users\owner>ping 1234::192.168.1.1
1234::c0a8:101 に ping を送信しています 32 バイトのデータ:


と、自動で変換してくれます。UNIX系でもPing6なら同じように使えます。


GR2000でのNATPTの動き




まずはネットワーク図です。前回の使い回しですが。




前回との違いはGR2のNIF2/1がIPv6ではなくてIPv4であることです。v6アドレスを割り当ててもいいんですが必要ないので省きます。

先に特徴を書いておくと、v6ネットワークからv4ネットワークへは一対一でIPを使えるがv4ネットワークからv6ネットワークへは1対1NATを1つ or 1対N NAPTになる、と言うことです
まあ、これはGR2kでの動きになるので、他のベンダ(CISCOとか)でどう動くかは分かりません。

そして、NATPT-prefixと言うのが上で説明したNATPTの時に使うアドレスで、v6アドレスネットワークからv4アドレスネットワークにアクセスするときには2345::xxxx:xxxxと言うアドレスになります。1234:1:1:2:1:1::/96とかに設定してしまうとGR1のサブネットと被るので「どこにあるのか分からない」という状態になってしまい、ルーティング不可になります
なので、v6ネットワーク上でユニークな(被らない)サブネットを持つ必要があります。この場合なら1234:1:1:4::でもよかったのですがわかりやすくするためにあえて大きく変えてあります



まずGR1の設定

GR-Red(config)# sho
#Last modified by operator at Mar 5 02:29:03 2011 with version 08-04-/D
!
router name "GR-Red"
router remote_access 0.0.0.0/0
router remote_access 1234:1:1:1::/64
router telnet enable
!
line f0 ethernet 2/0
ip 1234:1:1:1::1/64
!
line f1 ethernet 2/1
ip 1234:1:1:2::1/64
!
static
2345::/96 gateway 1234:1:1:2::2


本当はこの下にDHCP6とかの設定がだらだら続くのですが今回は不要なので省略します
特徴としてはNATPT PrefixをGR2へ向けることくらいですね。

GR2の設定

!GR-Green(config)# sho
#Last modified by operator at Mar 8 23:37:34 2011 with version 08-04-/D
!
router name "GR-Green"
router remote_access 0.0.0.0/0
router ftp enable
!
line f0 ethernet 2/0
ip 1234:1:1:2::2/64
!
line f1 ethernet 2/1
ip 192.168.1.1/24
!
natpt
①natpt natptprefix 2345::
②natpt rule napt any auto
③natpt rule static_napt 1234:1:1:1::15 auto port 80 80 protocol tcp
④natpt rule static_napt 1234:1:1:1::15 auto port 22 22
⑤natpt rule static_napt 1234:1:1:1::15 auto port 22 25
⑥natpt interface f1
⑦natpt interface f0
!
static
1234:1:1:1::/64 gateway 1234:1:1:2::1
!


①などの文字はこちら側で説明のため入れました。

まず①のルールでGR2側でNAT-PTを使用する際に2345::/96プレフィックスを使うように設定します。
次に、②でNATPTで変換するプロトコルの対象を全てにし、その際のルールはNAPTによって動的に作られるようにします。
③- ⑤のルールはIPv4側のためのルールで、この場合はルーターのIPが192.168.1.1なので192.168.1.1:80にアクセスした際に IPv6の赤いサブネットにある1234:1:1:1::15:80にNAPTさせる、と言うルールです。ここが最初は意味が分からなくて中々うまくいきませんでした。

1234:1:1:1::15ではdefaultGWを1234:1:1:1::1にしてあります。

autoというのは自動的にインターフェースのアドレスを使用するという意味(=natpt rule static_napt 1234:1:1:1::15 192.168.1.1 port 80 80 protocol tcp)ですが、ここで
natpt rule static_napt 1234:1:1:1::15 192.168.1.128 port 80 80 protocol tcp
とインターフェース以外のIPを設定してもそのIPあてにアクセスは出来ませんでした。

⑤はテスト的に作ったルールで、192.168.1.1::25にSSHすると1234:1:1:1::15:22にNAPTされますよ、と言うルールですがうまく動きました。

解説書 Vol.1に書いてありますが、v4->v6にアクセスした際にはアクセスログに残るIPはprefixである2345::IPv4アドレスとなります。

つまり、自分が192.168.1.2で192.168.1.1へSSHを飛ばすと1234:1:1:1::15に2345::c0a8:102からアクセスが来ます。

逆に、1234:1:1:1::/64から2345::c0a8:102へSSHを飛ばすとルーターにNATされて192.168.1.1(ソースポートは NAPTされる)からのアクセスが来ます。つまりHTTPだとアクセスログが全て192.168.1.1で埋まります。まあ、HTTPに関してはよっぽどのことをしていない限りv6対応にそこまで苦労しないのでv6移行しろとも思いますが。

そして⑥と⑦でどのインタフェースをNAT対象にするか指定します。ここに指定したインターフェース以外はNATされません。

文字ばかりになってしまいましたが、これで今のところ期待した動きをしてくれています。
最大の問題はNATPTはRM(CPUでSW)処理になると言うことです。知っての通りGR君はNATで10Mbps程度しか出せないという問題を持っているので、あくまでも試験的な目的以外では使えないと思います。これがHW処理だったら本当に最強v6ルーターなんですが。

もっとも、このルーターそのもの相当前のものですし、解説書なんて2005年発行ですからね。その当時からこれらの機能が使えたというのは大いに評価されるべきだと思います。さすがKAMEはAlaxalaの中の人たちが作っただけはあります。

IPv6が注目されている今、GR2kはもう一度NAT周りを強化して出すべきルーターだと思います。

BSD系だとNATPT-Dが使えるみたいなのでこの辺もいつか試してみたいですね。
現在はFTP、HTTP等の主要アプリケーションが試した限りではわずかな設定でv6に対応できるので本当に必要かどうかと言われると結構微妙だったりしますが…。


[ コメントを書く ] ( 1639 回表示 )   |  このエントリーのURL  |  $star_image$star_image$star_image$star_image$star_image ( 3 / 1846 )  |  
【Mobile】Skype on IS02 
以前試したときは重くてあまり使い物にならなかったような記憶があったSkypeだったのですが、今日試したら普通に会話できました。WLANは使わずにISnetを使用して移動せずに室内からの通話してみましたが前ほどレイテンシがなくなって実用レベルです。筐体が新しくなったついでになにか変わったのかWANが強化されたのか…。





通話中は大体30%位のCPU使用量でした。




Skypeを使う際には音がスピーカー再生になりだだ漏れになるのでBluetoothヘッドセット推奨ですw

まあ本来はWindowsMobile向けには提供中止されてるんですけどねSkype

【追記】
とりあえず3時間くらいWANネットをつかってしゃべってみましたが特に問題はありませんでした。バッテリがちょうどそれくらいで切れたのでエネループ食わせながら連続実用通話は3時間くらいです。
通話音質は「TS(TeamSpeak)みたい」←すごく言い得てる




[ コメントを書く ] ( 1313 回表示 )   |  このエントリーのURL  |  $star_image$star_image$star_image$star_image$star_image ( 3.1 / 1809 )  |  
【その他】Ampache 



某所で話に上がったので実験鯖で試してみました
まあapt-get install ampacheしただけですけど
後はバーチャルホストの設定くらいですね

使ってみた感じ、アーティスト検索などができるのでなかなか便利です。
動きとしては、リストから+を押していってプレイリスト作成→m3uファイルへ書き出し、VLCやWinampなどのネットワークストリーミングに対応したプレイヤーで再生 or Flashプレイヤーによる再生 という感じです。Flashの場合は特別なソフトなしで聴ける代わりにmp3以外のFlacなどの再生に対応できません。おい…

アルバムアートがない場合はLast.fmから拾ってくるようで補完できるものはどんどん画像が追加されていきました。

次期物置き鯖にはこれを導入しようかと思っていますw


[ コメントを書く ] ( 1345 回表示 )   |  このエントリーのURL  |  $star_image$star_image$star_image$star_image$star_image ( 3 / 1705 )  |  
【Storage】RAIDあれこれ 
前回から「いかに速いファイル置き場を作るか」という目的を達成すべく色々実験してみました。そのせいで数字多いよ!

まずはUbuntu10で実験。

root@1:/# uname -a
Linux 1 2.6.32-24-server #39-Ubuntu SMP Wed Jul 28 06:21:40 UTC 2010 x86_64 GNU/Linux

マシンはいつものです。
product: TYAN-Toledo-i3210W-i3200R-S5220
product: Intel(R) Core(TM)2 Quad CPU @ 2.40GHz
MemTotal: 4048444 kB
特に断りがない限りファイルシステムはmkfs.ext4で作成。ベンチ方法は/dev/zeroからddで書き込み。今思ったらシーケンシャルW/Rしかみてないですね。
Bonnie++使うべきだったんじゃねと思うけど参考値程度に

RAID0




root@1:/# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid0 sde1[3] sdb1[2] sda1[1] sdc1[0]
156246528 blocks 256k chunks


書き込み
root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 15.351 s, 273 MB/s

root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 16.567 s, 253 MB/s

そのときの負荷

CPU | sys 41% | user 0% | irq 1% | idle 142% | wait 216% |
cpu | sys 29% | user 0% | irq 0% | idle 19% | cpu002 w 52% |
cpu | sys 12% | user 0% | irq 0% | idle 4% | cpu001 w 84% |
cpu | sys 1% | user 0% | irq 1% | idle 0% | cpu000 w 97% |
CPL | avg1 0.77 | avg5 0.89 | avg15 0.73 | csw 1684 | intr 3377 |


読み込み
root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 15.1826 s, 276 MB/s

root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 16.7144 s, 251 MB/s



負荷
CPU | sys 20% | user 0% | irq 0% | idle 289% | wait 91% |
cpu | sys 14% | user 0% | irq 0% | idle 0% | cpu002 w 86% |
cpu | sys 4% | user 0% | irq 0% | idle 96% | cpu001 w 0% |
cpu | sys 1% | user 0% | irq 0% | idle 99% | cpu000 w 0% |


まずmdadmでRAID0ですが、RAID0はさすがに読み書き速いです。ちょっと古いドライブなので外周で読み書き70MB/sec程度なのですが、ドライブを追加すればそれだけリニアに速くなりました。
が、アレイの中の1ドライブでもFailしたらすべてのデータがさようならは怖すぎるので実用的ではないです



RAID1




root@1:/# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid1 sde1[3] sdb1[2] sda1[1] sdc1[0]
39061376 blocks [4/4] [UUUU]


書き込み

root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 60.178 s, 69.7 MB/s

root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 62.0388 s, 67.6 MB/s


そのときの負荷
CPU | sys 23% | user 0% | irq 2% | idle 179% | wait 195% |
cpu | sys 1% | user 0% | irq 0% | idle 92% | cpu003 w 6% |
cpu | sys 4% | user 0% | irq 2% | idle 0% | cpu000 w 94% |
cpu | sys 12% | user 0% | irq 0% | idle 55% | cpu002 w 33% |
cpu | sys 5% | user 0% | irq 0% | idle 41% | cpu001 w 53% |


読み込み
root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 62.0388 s, 67.6 MB/s

root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 63.6339 s, 65.9 MB/s


そのときの負荷
CPU | sys 7% | user 0% | irq 0% | idle 303% | wait 90% |
cpu | sys 5% | user 0% | irq 0% | idle 0% | cpu001 w 95% |
cpu | sys 1% | user 0% | irq 0% | idle 99% | cpu000 w 0% |
cpu | sys 1% | user 0% | irq 0% | idle 99% | cpu002 w 0% |
CPL | avg1 1.09 | avg5 1.32 | avg15 1.06 | csw 5471 | intr 3396 |
MEM | tot 3.9G | free 31.2M | cache 3.6G | buff 3.1M | slab 80.0M |
SWP | tot 0.0M | free 0.0M | | vmcom 402.1M | vmlim 1.9G |
PAG | scan 43008 | stall 0 | | swin 0 | swout 0 |
DSK | sdc | busy 88% | read 1289 | write 0 | avio 2 ms |
DSK | sda | busy 7% | read 100 | write 0 | avio 2 ms |


RAID1では1ドライブ分のスループットという予想通りな結果になりました。4ドライブ使っても読みの時は1ドライブしか仕事していないという。まあ冗長性に関しては最強だと思います


RAID5




md2 : active raid5 sde1[3] sdb1[2] sda1[1] sdc1[0]
117183744 blocks level 5, 256k chunk, algorithm 2 [4/4] [UUUU]


書き込み
root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 38.2853 s, 110 MB/s

root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 46.0981 s, 91.0 MB/s

そのときの負荷
CPU | sys 52% | user 0% | irq 3% | idle 257% | wait 88% |
cpu | sys 16% | user 0% | irq 0% | idle 77% | cpu002 w 8% |
cpu | sys 17% | user 0% | irq 0% | idle 81% | cpu001 w 3% |
cpu | sys 9% | user 0% | irq 3% | idle 33% | cpu000 w 55% |
cpu | sys 11% | user 0% | irq 0% | idle 65% | cpu003 w 24% |


読み込み

root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 25.6145 s, 164 MB/s

root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 26.0037 s, 161 MB/s


負荷
CPU | sys 20% | user 0% | irq 0% | idle 289% | wait 91% |
cpu | sys 14% | user 0% | irq 0% | idle 0% | cpu002 w 86% |
cpu | sys 4% | user 0% | irq 0% | idle 96% | cpu001 w 0% |
cpu | sys 1% | user 0% | irq 0% | idle 99% | cpu000 w 0% |


RAID5ですが、正直もっと書き込みが遅くなると思っていたのにディスク単体より速くなりました。パリティー計算さえなければストライピングですからね。
というか下手なHWコントローラー使うよりCPUパワーでブン回した方が速いですね…。
リビルドは大体40Gのドライブを-fして-aすると15分くらいでした


RAID6



root@1:# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid6 sde1[3] sdb1[2] sdc1[1] sda1[0]
78122496 blocks level 6, 256k chunk, algorithm 2 [4/4] [UUUU]

書き込み
root@1:# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 55.1364 s, 76.1 MB/s
root@1:/home/owner# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 59.1087 s, 71.0 MB/s


負荷
CPU | sys 44% | user 0% | irq 1% | idle 249% | wait 107% |
cpu | sys 17% | user 0% | irq 0% | idle 80% | cpu002 w 3% |
cpu | sys 9% | user 0% | irq 0% | idle 9% | cpu000 w 81% |
cpu | sys 11% | user 0% | irq 0% | idle 86% | cpu003 w 3% |
cpu | sys 6% | user 0% | irq 0% | idle 72% | cpu001 w 22% |


読み込み
root@1:# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 29.0997 s, 144 MB/s


負荷
CPU | sys 12% | user 0% | irq 0% | idle 291% | wait 96% |
cpu | sys 3% | user 0% | irq 0% | idle 97% | cpu001 w 0% |
cpu | sys 8% | user 0% | irq 0% | idle 0% | cpu002 w 92% |
cpu | sys 0% | user 0% | irq 0% | idle 99% | cpu003 w 0% |
cpu | sys 0% | user 0% | irq 0% | idle 99% | cpu000 w 0% |


冗長性

root@1:# mdadm -f /dev/md2 /dev/sdc1 /dev/sde1
mdadm: set /dev/sdc1 faulty in /dev/md2
mdadm: set /dev/sde1 faulty in /dev/md2

root@1:# mdadm -r /dev/md2 /dev/sdc1 /dev/sde1
mdadm: hot removed /dev/sdc1
mdadm: hot removed /dev/sde1

root@1:/# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid6 sdb1[2] sda1[0]
78122496 blocks level 6, 256k chunk, algorithm 2 [4/2] [U_U_]


適当に転送した50GくらいのファイルはSambaからロストしていませんでした。
違うドライブをFailにしてみる

root@1:# mdadm -a /dev/md2 /dev/sdc1 /dev/sde1
mdadm: re-added /dev/sdc1
mdadm: re-added /dev/sde1
ビルドが完了してから
root@1:/# mdadm -f /dev/md2 /dev/sdc1 /dev/sda1
mdadm: set /dev/sdc1 faulty in /dev/md2
mdadm: set /dev/sda1 faulty in /dev/md2

root@1:/# mdadm -r /dev/md2 /dev/sdc1 /dev/sda1
mdadm: hot removed /dev/sdc1
mdadm: hot removed /dev/sda1

root@1:/# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md2 : active raid6 sde1[3] sdb1[2]
78122496 blocks level 6, 256k chunk, algorithm 2 [4/2] [__UU]


これも残ってました。

しかし、読み込みはいいとして書き込みはやはり速度は落ちますね。単体よりは若干速いですが。
あとアレイの再計算と初期化に時間がかかりすぎます。40G*4ドライブ程度の容量でリビルドに30分。もし2T*4で組んだとしたら…

30 minute * 51.2(2T/40G) = 25.6 hour

( ゚д゚ )

しかもその間ドライブはリビルドで
DSK | sdc | busy 80% | read 538 | write 271 | avio 3 ms |
DSK | sde | busy 80% | read 534 | write 269 | avio 3 ms |
DSK | sdb | busy 37% | read 555 | write 142 | avio 1 ms |
DSK | sda | busy 35% | read 548 | write 130 | avio 1 ms |


というゴリゴリとアクセスしている状態。これが1日続いたらその間にほかのドライブが壊れてもおかしくないような…


RAID10




書き込み
root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 30.0364 s, 140 MB/s

root@1:/# dd if=/dev/zero of=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 31.9872 s, 131 MB/s


負荷
PRC | sys 0.69s | user 0.02s | #proc 141 | #zombie 0 | #exit 0 |
CPU | sys 24% | user 0% | irq 3% | idle 212% | wait 161% |
cpu | sys 3% | user 0% | irq 0% | idle 97% | cpu003 w 0% |
cpu | sys 11% | user 0% | irq 3% | idle 2% | cpu002 w 84% |
cpu | sys 6% | user 0% | irq 0% | idle 84% | cpu001 w 10% |
cpu | sys 3% | user 0% | irq 0% | idle 40% | cpu000 w 57% |

読み込み
root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 31.9915 s, 131 MB/s

root@1:/# dd of=/dev/null if=/smb/4G.img bs=1M count=4000
4000+0 records in
4000+0 records out
4194304000 bytes (4.2 GB) copied, 32.2236 s, 130 MB/s


負荷
CPU | sys 11% | user 0% | irq 1% | idle 294% | wait 95% |
cpu | sys 8% | user 0% | irq 0% | idle 0% | cpu002 w 92% |
cpu | sys 2% | user 0% | irq 1% | idle 97% | cpu003 w 0% |
cpu | sys 1% | user 0% | irq 0% | idle 99% | cpu000 w 0% |


スループットはほぼRAID1の時の2倍なのでもっともな動きだと思います。
ビルドにも10分程度。2Tで大体5時間程度?

気になったのがRAUD10でのデータの冗長性。理論でいえば2つのRAID1のアレイをストライプするので、データは

MIRROR1 MIRROR2
sda sdb sdc sdd
data1 data1 data2 data2
data3 data3 data4 data4
data5 data5 data6 data6


こうなると思うのですが…。

と思ったら実際その通りだった
http://d.hatena.ne.jp/BlueSkyDetector/2 ... 1212936771

というかRAID10って2台で組むと読みをストライプするRAID1になるのw
http://www.togakushi.zyns.com/modules/w ... x.php?p=54

つまり、違うデータを持ったドライブが2台死ぬ分には大丈夫だけど、同じデータを持ったドライブが同時に2個死んだら終了という。
6台だと違うデータを持ったドライブなら同時に3台まで平気だけど、やっぱり同じデータを持ったドライブが2台死んだら終了ですね

4台以上でやるときに読みは2台でActiveとbackupになり、2台目には負荷が掛からないはずなので読みが多いところでは2台が同時に壊れる可能性は低いと思います。
しかし書き込みが多く入るような場所だと同じ負荷がすべてのドライブに掛かってしまうので同時に壊れる可能性は高いと思います

パフォーマンスは上がりますがRAID6のように「どのドライブでも2個壊れて平気」とはいかないので難しいところです。


mdadmではなくてIntel Rapid Storageではどう動くのか?というのも気になったのでちょっと試してみました。実験の合間合間のリビルドの時間を使って動画を作ってみました。

Get the Flash Player to see this player.

作業BGMに定評のあるKOKIA


結果を見ると
p0 p1 p2 p3
1 1 2 2
3 3 4 4

という感じでデータを持っているようです。Intel Rapid StorageでもRAID 10の動きは同じようです。




色々試したまとめ
ぶっちぎりたいならRAID0だけど物置には怖くて使えない
耐障害性を持たせるならRAID6がいいけどパフォーマンス(特に書きとリビルド)に問題あり
遅いと思ってたRAID5はCPUパワーがあれば速い。容量も一番効率よく使える。けど2台同時に死んだら問答無用で終了
パフォーマンスとある程度の耐障害性を持たせるならRAID10がいいけど、運悪く同じデータを持ったドライブが2個死んだら終了


この中だと個人的にはRAID10がいいんじゃないかなと思うのでこれを使う方向で考えてみます

[ コメントを書く ] ( 1826 回表示 )   |  このエントリーのURL  |  $star_image$star_image$star_image$star_image$star_image ( 3 / 1725 )  |  
【その他】ファイル置き場どうしよう 
と言うエントリを書いて投稿しようとしたら書くのに時間をかけすぎてログインセッションが切れててあぼんした!FUCK!!!!!!!!!

同じ文章を書く気力がないので要約

・メインマシンが不安定だと思ったらメモリが最初から2枚死んでた




・Geilェ…

・抜いたら安定した

・ある程度メインマシンが落ち着いてきたので前々からどうにかしたいと思っていたファイル置き場の改訂に着手しよう

・今ファイルがサブマシンとバックアップサーバーでそれぞれバラバラになっているので一元化したい

・7からsmbやCIFS rev2なドライブにつなぐとXPの時のような遅さがないのでサブマシンも7にして必要なもの以外ファイル鯖に投げよう

・バックアップサーバーにつかってるTP I45のNICが蟹なせいで長時間転送すると熱くなりすぎるのか接続が切れることがある

・信頼のIntel 1000MT Dualport

・ただし元々PCI-Xな板なのでPCIで使うと700Mbps程度まで落ちる

・蟹の調子かいいと900Mbps以上でるので確実にボトルネックになっている

・ここにきてサーバー向けな板が色々あるのでこの際変えよう

・どうせだからOSも変えよう

・Supermicro X7DVL Xeon 5440x2 Mem12G→言い分ないけどファイル置き場だけに使うにはオーバースペック、FB-DIMMが結構熱くなるのでこれに気をつけないとまずい

・TYAN-Toledo-i3210W-i3200R-S5220 E5200 Mem8G→ファイル置き場にはちょうどいい構成、RS232ももっているのでホストのネットワーク設定を間違えてSSHが使えなくなってもVPNが生きている限りサブマシンからコンソールログインできる

・ASUS P5K-WS 構成同上→PCI-Xを持っているのでIYHしたはいいけどどこに配置しようか悩んで実験機なう、ただPCI-Xは速いしOC耐性も高いので使い道はある

・板はとりあえずHDD買って本番稼働前に決めればいいとして、それまでにどのOSを使おうか決めよう

・FreeNAS,ubuntu,WinServer2008R2を試してみた
・板はX7DVLでOS HDDとデータ用HDD2台を使って実験
・転送先はメインマシンでHDD3台使ってRAID0のディスクへ転送
・小さなファイルだとメモリにキャッシュされてしまうので5Gのゴミデータを作り転送

FreeNAS


・WebUIで簡単管理、信頼のUNIX、定期報告をGmailへメールするのも簡単。

・ZFSを使ってスナップショット管理もできる。使ったことないけど。

・RAID0を組んだドライブを共有にかけてsmbで転送すると何故かDLが80MB/sec程度なのに対しULが120MB/sec出る

・ただし同時に複数台のマシンからアクセスすると先客が終わるまで転送速度が2MB/sec程度になり、先客が終わると上の速度に戻る。UFSかUNIX版smbの仕様?

・RAID1にすると書き込みがCIFS越しで4-50MB/sec位まで落ちる。dd if=/dev/zero of=/mnt/RAID1/2G.img bs=1M count=2000 とかでもその程度なのでUFSかパリティー計算がネックになってる?

・ディスク単体ではUFSで60MB/sec出る。


Ubuntu10



・Linuxなのでパッケージがたくさん、EXT4は速い、使い慣れてる。

・GUIはないけどCUIがよくできてるのでSSHやRS232のコンソールログイン時に都合がいい。

・smbとmdadm raid0で上り下りともに100MB/sec位出る

・BtrFSやNILFSも面白そう

・RAID1でもディスク単体の時とほぼ変わらない70MB/sec位出る

・必要なのはググる気力ぐらい?

・欠点はLinux全般に言えることとしてボードのドライバがたまに見つからないくらい?



WinServer2008R2


某所で学術用途でDLできるので試してみた

・さすがWindows同士、CIFSでGbEの上限に近い120MB/sec位が安定して出る

・管理するときにいちいちリモートデスク使わないといけないのがだるい

・sntpを使えばある程度はステータス管理が楽になる

・RAIDボードによっては設定専用WebUIを持ってるのがあるのでそういうのがあれば楽

・Windows(笑)という偏見


まあFTP使えばRAID0を組んだいずれのシステムでも120MB/sec位出るのでそれを使ってもいいのですが、個人がLANで使うときはCIFSが一番楽なのでこれの速度が出るのが今回のシステムでは重要です。

後はRAIDのテストも色々したのですが長くなるので分割します。

[ コメントを書く ] ( 1498 回表示 )   |  このエントリーのURL  |  $star_image$star_image$star_image$star_image$star_image ( 3 / 1755 )  |  

<<最初へ <戻る | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 進む> 最後へ>>