有人想參考的,有些是MongoDB 官方建議特別調的可以不用理~~
先attach 四個volumns,在Ubuntu 12.04 ami 下預設會是 /dev/xvd{f, g, h, i},
除非有另外增減過...
apt-get install mdadm
mdadm -v --create /dev/md0 -l10 --chunk=256 -n4 /dev/xvdf /dev/xvdg /dev/xvdh /dev/xvdi
mdadm: layout defaults to n2
mdadm: layout defaults to n2
mdadm: /dev/xvdf appears to contain an ext2fs file system
size=6291456K mtime=Wed Aug 22 18:13:42 2012
mdadm: size set to 6287104K
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
在 /etc/mdadm/mdadm.conf 中加入
DEVICE /dev/xvdf /dev/xvdg /dev/xvdh /dev/xvdi
ARRAY /dev/md0 metadata=1.2 UUID=dda3c8b6:a6cc85a9:cd1a3282:1069e054
(ARRAY那行由 mdadm --detail --scan來,但不是全部填進去,詳見文章最後)
這兩行,之後管理會較方便
又,原本 /dev/md0 及 /dev/xvd* 的 readahead 值是2048及256(用blockdev --getra 得知)
MongoDB 官方建議在EBS上調成 128 加速效能:
blockdev --setra 128 /dev/xvdf /dev/xvdg /dev/xvdh /dev/xvdi /dev/md0
可是重開就恢復耶=___= 我目前放rc.local。
最後是重點,
最後是重點,
update-initramfs -u
更新initrd.img,讓mdadm.conf在開機時生效,
如果少了這一步,重開機會變/dev/md127,若已格式化並用fstab設定開機時掛載的話就挫啦XD
根據
http://ubuntuforums.org/showthread.php?t=1764861
不知在哪版kernel開始若mdadm有指定name,則會先建成/dev/md127然後再建/dev/md/name指向他,所以ARRAY那行只保留/dev/md0及UUID就不會發生了,當然也要注意改過mdadm.conf就要用 update-initamfs -u 才能生效。
Update: 忘了紀錄刪除步驟,umount後:
- 停止陣列運作:
mdadm --stop /dev/md0
- 清除陣列各硬碟的superblock:
mmdadm --zero-superblock /dev/xvd[fghi]
- 編輯 /etc/mdadm/mdadm.conf 移除相關設定。
- update-initramfs -u
http://en.wikipedia.org/wiki/Mdadm#Deleting_an_array
說的mdadm --remove /dev/md0 實際操作先stop再remove或先remove好像都無效,
應該不需要。
沒有留言:
張貼留言