2014年8月29日金曜日

SoftLayerに冗長化NFSサーバを(その2)

(その1)では、Bare Metal Instance を考慮対象から外しましたが、ボンディングの検証目的で利用したい、という要望があり、RAID コントローラでローカルHDDが冗長化されていないこと、HDD 追加ができないこと、この2点を前提に、構築手順を紹介します。

(その1)との違いだけ述べます。

発注するときに、Partition Template にて、「Linux Extra Partition」を選択しておいてください。

pacemaker のリソース設定ファイルをロードする直前で物理サーバ用に書き換えを行っている部分を以下のように変更します。p_diskd_root にて読み書きテストをしているので、読み込みテストを実施している p_diskd_share1 の設定を除外するのがよいのですが、そこまでの手間はかけないことにします。Bare Metal Instance では、唯一の HDD に対し、読み取り監視と読み書き監視の両方を実施していることになります。


[ -e /proc/xen ] || sudo sed -i -e 's/xvdc/sdc/' /etc/ha.d/crm.txt

 

if [ ! -e /proc/xen ]; then
  if [ -e /dev/sdc ]; then
    sudo sed -i -e 's/xvdc/sdc/' /etc/ha.d/crm.txt
  else
    sudo sed -i -e 's/xvdc/sda/' /etc/ha.d/crm.txt
  fi
fi


※ 現状、swap 用 HDD の監視を行っていません。
読み取り監視を追加するか、swap パーティションを一度削除し、swap 用パーティションと書き込みテスト用パーティションを作成して書き込み監視を追加した方がよいです。
後日、HDD 追加作業を行う際に、同時に対応することとします。

「データ領域を LVM で構成し、DRBD 用に初期化します。」の部分を以下の手順に変更します。


sudo sed -i -e '/disk/ s/^UUID/#UUID/' /etc/fstab
sudo umount /disk0
sudo umount /disk
sudo rmdir /disk0 /disk
sudo fdisk /dev/sda << 'EOF'
t
5
8e
p
w
EOF
sudo pvcreate /dev/sda5
sudo vgcreate vg0 /dev/sda5
#sudo lvcreate --name drbd0 --extents 90%FREE vg0
sudo lvcreate --name drbd0 --size 400G vg0
sudo dd if=/dev/zero of=/dev/vg0/drbd0 bs=1M
sudo drbdadm create-md r0


disk0」は「disk」の場合もあるようです。OS を Reload したら変わりました。umount に失敗したら、必要に応じて読み替えてください。常にどちらにも対応するように書き直しました。

ゼロクリアしているので、かなり時間がかかります。40分から1時間くらいみておいてください。途中経過が気になる場合は別端末を開き、
sudo kill -USR1 $(ps -ef | grep '[d]d if' | grep -v sudo | awk '{print $2}')
を実行すれば出力されます。

上記で、論理ボリュームサイズを空き容量の 90% ではなく、400GB で指定しています。
Bare Metal Instance、Bare Metal Server では、発注した時と同サイズのものが手に入るとは限らない点をうっかり失念しておりました。

検証のため発注した1号機と2号機のHDDサイズが異なっていたため気づきました。
汎用的に書くことの難しさがこのようなところに現れます。
発注したものよりも大きいHDDが手に入ってラッキーとも言えますが、クラスタの場合、障害復旧時に同予算で別発注することがあることを考えると、ラッキーにすがっては問題が出ます。

物理マシンでは、RAID コントローラ付きで Bare Metal Server を発注し、3つ目の論理デバイスを作成することにしましたが、2つ目にswapパーティションが作られるのではなく、1つ目に作られるように思われます。swap位置を変更し、/etc/fstab を変更する手順を紹介しませんでした。1つ目に作られた / パーティションについても、swap移動後に空いたスペースを有効利用する為にパーティションサイズを変更し、ファイルシステムを拡大する手順を追加した方がよいと思っています。
次回、サーバのシステムバックアップ、リストアを行うので、リストア時に調整する、という事にします。

0 件のコメント:

コメントを投稿