タグ「Intel」が付けられているもの

RHEV-H用マシン

  • 投稿日:
  • by
  • カテゴリ:

Intel Celeron E3300を使ってRHEV-H用のマシンを組んでみた。メモリ4GBに2.5インチHDDのMini ITXで約3.8万円。ICH10R入りにしたので、dmraidで遊べるし。

SSD化終了!

  • 投稿日:
  • by
  • カテゴリ:

先にLinuxのサーバはSSDにしてあったんだが、メインのPCもSSD化終了。今回もIntelのX25-Mの80GBを購入。容量が不足する分は1TBのHDDとハイブリッドにすることで補完。

IntelとHGSTのSSD

  • 投稿日:
  • by
  • カテゴリ:

日立GSTとインテル、企業向けSSDを共同開発 - 2010年初頭の出荷を目指す。エンタープライズ向けということで、エントリーサーバには搭載されないかもしれないけれど、ミッドレンジ以上のサーバではストレージの性能が1桁以上上がることが期待出来るということですな。

と。SASも単一では3Gbpsではなかったかしら。10倍になったらさばけないので、次の規格ってことに。

ICH10R + dmraidでRAID1を組む

ICH10R入りM/Bに1TBのHDD2発なので、お決まりのやつを(^^ゞ
なんだかdmraidのパッケージにはあまり情報が無くて、まあ実際こんな感じなんだが。ちょっと投げやりすぐる...。

# rpm -ql dmraid
/sbin/dmraid
/sbin/dmraid.static
/usr/lib64/libdmraid.so.1.0.0.rc13
/usr/share/doc/dmraid-1.0.0.rc13
/usr/share/doc/dmraid-1.0.0.rc13/CHANGELOG
/usr/share/doc/dmraid-1.0.0.rc13/CREDITS
/usr/share/doc/dmraid-1.0.0.rc13/KNOWN_BUGS
/usr/share/doc/dmraid-1.0.0.rc13/LICENSE
/usr/share/doc/dmraid-1.0.0.rc13/LICENSE_GPL
/usr/share/doc/dmraid-1.0.0.rc13/LICENSE_LGPL
/usr/share/doc/dmraid-1.0.0.rc13/README
/usr/share/doc/dmraid-1.0.0.rc13/TODO
/usr/share/doc/dmraid-1.0.0.rc13/dmraid_design.txt
/usr/share/man/man8/dmraid.8.gz
/var/lock/dmraid

うーんプロプラでは無いから、まあコードを見ろ、そんな難しいことやってないよ、ドイツの科学力は世界一ぃぃぃ、って感じなんだろ、と。えーと、とりあえず、-sしろと。で、Activateするには-ayだと。

# dmraid -s
*** Group superset isw_cgejcgagfj
--> Subset
name   : isw_cgejcgagfj_Vol0
size   : 1953519616
stride : 128
type   : mirror
status : ok
subsets: 0
devs   : 2
spares : 0

# dmraid -ay
RAID set "isw_cgejcgagfj_Vol0" was activated

# ll /dev/mapper/
total 0
brw-rw---- 1 root disk 253,  1 Nov 29 22:31 VolGroup01-LogVol00
brw-rw---- 1 root disk 253,  0 Nov 29 22:31 VolGroup01-LogVol01
crw------- 1 root root  10, 63 Nov 29 22:31 control
brw-rw---- 1 root disk 253,  2 Nov 29 22:32 isw_cgejcgagfj_Vol0

あー、デバイスノードが出来てら。ちゅうことは、fdiskするか、pvcreate/vgcreate/lvcreateするかだわな。とりあえずLVMで。

# fdisk /dev/mapper/isw_cgejcgagfj_Vol0 
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.


The number of cylinders for this disk is set to 121600.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-121600, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-121600, default 121600): 
Using default value 121600

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 22: Invalid argument.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

# partprobe /dev/mapper/isw_cgejcgagfj_Vol0 
# ll /dev/mapper/isw_cgejcgagfj_Vol0*
brw-rw---- 1 root disk 253, 2 Nov 29 22:33 /dev/mapper/isw_cgejcgagfj_Vol0
brw-rw---- 1 root disk 253, 3 Nov 29 22:33 /dev/mapper/isw_cgejcgagfj_Vol0p1

# pvcreate /dev/mapper/isw_cgejcgagfj_Vol0p1 
  Physical volume "/dev/mapper/isw_cgejcgagfj_Vol0p1" successfully created

# vgcreate -s 32M VolGroup00 /dev/mapper/isw_cgejcgagfj_Vol0p1 
  Volume group "VolGroup00" successfully created

# vgdisplay 
  --- Volume group ---
  VG Name               VolGroup01
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               74.31 GB
  PE Size               32.00 MB
  Total PE              2378
  Alloc PE / Size       2378 / 74.31 GB
  Free  PE / Size       0 / 0   
  VG UUID               kcEq05-mAM4-CEQ4-z9t6-HYDm-9Vrs-zvvw5v
   
  --- Volume group ---
  VG Name               VolGroup00
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               931.50 GB
  PE Size               32.00 MB
  Total PE              29808
  Alloc PE / Size       0 / 0   
  Free  PE / Size       29808 / 931.50 GB
  VG UUID               iLmukb-Sq3i-buph-6doM-kkGq-SoW3-jedrfH

# lvcreate -l 29808 -n LogVol00 VolGroup00
  Logical volume "LogVol00" created

# lvdisplay 
  --- Logical volume ---
  LV Name                /dev/VolGroup01/LogVol01
  VG Name                VolGroup01
  LV UUID                LI52WN-bwWq-rsme-9YG5-Ko10-n7tJ-0yt4E8
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                72.31 GB
  Current LE             2314
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
   
  --- Logical volume ---
  LV Name                /dev/VolGroup01/LogVol00
  VG Name                VolGroup01
  LV UUID                cTWWR8-Npzf-A2ve-BKJQ-DP9O-zyA3-lSWkXz
  LV Write Access        read/write
  LV Status              available
  # open                 1
  LV Size                2.00 GB
  Current LE             64
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1
   
  --- Logical volume ---
  LV Name                /dev/VolGroup00/LogVol00
  VG Name                VolGroup00
  LV UUID                0DTn9b-deMD-hv3l-JePf-XOfW-B1hQ-tmMEG0
  LV Write Access        read/write
  LV Status              available
  # open                 0
  LV Size                931.50 GB
  Current LE             29808
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:4

ま、あとは、mke2fsしてfstabに書けばオッケーだろ。

# mke2fs -j /dev/VolGroup00/LogVol00 
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
122093568 inodes, 244187136 blocks
12209356 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
7452 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

念のため、iostatを確認。書けてるみたいだし。

# partprobe /dev/sda /dev/sdb

# iostat 
Linux 2.6.18-120.el5 (rhel5.rio.st) 	11/29/08

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.58    0.14    4.24   14.82    0.00   80.21

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
sda              43.42         4.22     43091.95       2486   25411751
sda1             26.76         0.29     27359.45        170   16134144
sdb              46.54         4.24     43312.50       2499   25541815
sdb1             22.81         0.19     21382.59        114   12609528
sdc              25.96       771.38       103.56     454892      61070
sdc1              0.28        21.00         0.02      12386         14
sdc2             25.65       749.90       103.54     442226      61056
dm-0             41.45       746.74       103.54     440362      61056
dm-1              0.21         1.64         0.00        968          0
dm-2           6526.75         1.42     52207.40        837   30787223
dm-3           6526.07         0.35     52207.38        209   30787215
dm-4           6525.94         0.18     52207.36        104   30787200

おっと、忘れてた、mkinitdしておこう。

# mkinitrd -v ./initrd-2.6.18-120.el5.img `uname -r`
Creating initramfs
Looking for deps of module ehci-hcd
Looking for deps of module ohci-hcd
Looking for deps of module uhci-hcd
Looking for deps of module ext3: jbd 
Looking for deps of module jbd
Looking for driver for device sdc2
Looking for deps of module pci:v00008086d00002822sv00001043sd000082D4bc01sc04i00: scsi_mod libata ahci 
Looking for deps of module scsi_mod
Looking for deps of module sd_mod: scsi_mod 
Looking for deps of module libata: scsi_mod 
Looking for deps of module ahci: scsi_mod libata 
Looking for deps of module usb-storage: scsi_mod 
Looking for deps of module ide-disk
Looking for deps of module dm-mod
Looking for deps of module dm-mirror: dm-mod dm-log 
Looking for deps of module dm-log: dm-mod 
Looking for deps of module dm-zero: dm-mod 
Looking for deps of module dm-snapshot: dm-mod 
Using modules:  /lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/ehci-hcd.ko /lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/ohci-hcd.ko /lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/uhci-hcd.ko /lib/modules/2.6.18-120.el5/kernel/fs/jbd/jbd.ko /lib/modules/2.6.18-120.el5/kernel/fs/ext3/ext3.ko /lib/modules/2.6.18-120.el5/kernel/drivers/scsi/scsi_mod.ko /lib/modules/2.6.18-120.el5/kernel/drivers/scsi/sd_mod.ko /lib/modules/2.6.18-120.el5/kernel/drivers/ata/libata.ko /lib/modules/2.6.18-120.el5/kernel/drivers/ata/ahci.ko /lib/modules/2.6.18-120.el5/kernel/drivers/usb/storage/usb-storage.ko /lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-mod.ko /lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-log.ko /lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-mirror.ko /lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-zero.ko /lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-snapshot.ko
/sbin/nash -> /tmp/initrd.XL3918/bin/nash
/sbin/insmod.static -> /tmp/initrd.XL3918/bin/insmod
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/ehci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/ehci-hcd.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/ohci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/ohci-hcd.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/usb/host/uhci-hcd.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/uhci-hcd.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/fs/jbd/jbd.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/jbd.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/fs/ext3/ext3.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/ext3.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/scsi/scsi_mod.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/scsi_mod.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/scsi/sd_mod.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/sd_mod.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/ata/libata.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/libata.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/ata/ahci.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/ahci.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/usb/storage/usb-storage.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/usb-storage.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-mod.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/dm-mod.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-log.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/dm-log.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-mirror.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/dm-mirror.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-zero.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/dm-zero.ko' [elf64-x86-64]
copy from `/lib/modules/2.6.18-120.el5/kernel/drivers/md/dm-snapshot.ko' [elf64-x86-64] to `/tmp/initrd.XL3918/lib/dm-snapshot.ko' [elf64-x86-64]
/sbin/lvm.static -> /tmp/initrd.XL3918/bin/lvm
/etc/lvm -> /tmp/initrd.XL3918/etc/lvm
`/etc/lvm/lvm.conf' -> `/tmp/initrd.XL3918/etc/lvm/lvm.conf'
/sbin/dmraid.static -> /tmp/initrd.XL3918/bin/dmraid
/sbin/kpartx.static -> /tmp/initrd.XL3918/bin/kpartx
Adding module ehci-hcd
Adding module ohci-hcd
Adding module uhci-hcd
Adding module jbd
Adding module ext3
Adding module scsi_mod
Adding module sd_mod
Adding module libata
Adding module ahci
Adding module usb-storage
Adding module dm-mod
Adding module dm-log
Adding module dm-mirror
Adding module dm-zero
Adding module dm-snapshot

テストベンチ

夏炉冬扇というわけでは無く、「夏炉」と化している自宅サーバ。さすがにTDP 130WのSmithfield、3GHzのPentium Dは暑いくせにもう遅いということもあり、可能な限り低予算で、かつショップのセールとかも活用して(笑)、原稿執筆のためにも使えるテストベンチとして新マシンを組んでみた。しかもCore i7のTDPが130Wだと分かったので、そんなエコじゃないCPUは自宅に置きたくないなぁ、かつCore2Duoの値下がりも期待出来るし。

ケースはAntecのMINI P180 WHITE。静音ケースとして人気モデルらしく、実際組んでみたら静かだった。しかもセールで半額で買った(笑)。

電源はAbeeのPower Silentistの450Wモデル。CPUにCore2Duoを考えていたので、450Wもありゃ、十分だろと。暑くならないとファンが回らないところも気に入った点。だって、TDP65WのノートPCでも使えるCPUなんだから、ファンなんていらないだろ。

M/BはASUS P5Q-EM。オーソドックスなボードなので、Linuxでも問題無かろうと思ったら少し問題が出た(^^ゞ
まあ、Linuxのエンジニアとして禄を食んでいる身としては、トラブルのうちに入らないぐらいなもんで、RealtekのチップがRHEL5.2だと使えなかった。実はRHEL5.3のベータでは問題なく動作するんだけど、Realtekのサイトからr8168ドライバを持ってきて入れてから、RHEL5.3ベータまで上げてから気付いた(^^ゞ

CPUはCore2DuoのE8400。E8500というチョイスもあったけど、安く済まそうと。何もしなくてもSpeed Stepする(cpuspeedサービスが動けば)けれど、3GHzが2GHzにしかダウンしないのがちょっとなぁ...。Pentium Dは4分の1のクロックまで落ちるのに...。

メモリは安くなったなぁ、PC2-6400の2GBを4枚買っても1万円しなかった。8GBですよ、これ。

HDDはST31000333ASを2発。P5Q-EMにはICH10Rが搭載されているので、まあ偽物だけどRAID1の1TBということにした。

で、メインのディスクはインテルのX25-M。起動時間も短いし、他の動作も非常にキビキビしていて、小気味よいなぁ。

Intel X25-Mのbonnie++の結果

  • 投稿日:
  • by
  • カテゴリ:

Core2Duo / 8GB RAM / RHEL5.2 / bonnie++-1.03での、Intel X25-Mのベンチマーク。

Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
rio.st 15648M 63726  85 87709  17 51931   7 61103  74 234377  14 21920  31
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 45792  99 472486 100 93376 100 46163 100 653971  99 96241  99
rio.st,15648M,63726,85,87709,17,51931,7,61103,74,234377,14,21920.5,31,16,45792,99,472486,100,93376,100,46163,100,653971,99,96241,99

公称値(リード・240MB/s、ライト・70MB/s)は決して大げさじゃないね。

異機種間でのライブ・マイグレーション

  • 投稿日:
  • by
  • カテゴリ:

AMDとレッドハット、AMD-Intelサーバ間の仮想化ライブ・マイグレーションに成功。Xenのライブ・マイグレーションの実装そのものがかなり怪しいという話を同僚から聞いていただけに、これはちょっと驚き。いくら、IA互換のAMDのプロセッサとは言え、ライブ・マイグレーションが可能なのねぇ...。

Windows用は出来ちゃった

  • 投稿日:
  • by
  • カテゴリ:

SanDisk、SSD書き込み速度を最大100倍高める技術「ExtremeFFS」発表。SSDはその特性上、既存のファイルシステムとの相性が非常に悪いと言えるのだけれど、ハードウェアの進化にソフトウェアがついて行けてないので、本来の性能が出ていないのが現状。Linuxでもこの点は認識されていて、BtrfsにはSSDに最適化されたモードをマウント時に指定することが出来る機能が含まれているのだけれど、Btrfsのkernelへのマージは2.6.30、つまりまだ1年ぐらい先の話。SSDのベンダー、例えばIntelがLinux向けのSSD専用FSを作ってくれるのが一番良いんだけれどなぁ。

サンディスク、SSDのランダム書き込み速度を最大で100倍向上させる新技術を発表:ニュース - CNET Japan