39:バックアップ用のホストを作り直す(3)

Date 2017-11-3 13:58:26 | Topic: Linux (サーバー制作)

38:バックアップ用のホストを作り直す(2)より
実は前項で触れていませんでしたが、再起動は何回か行っております。その際
設定サーバーに問題があるようです
(/usr/libexec/gconf-sanity-check-2がステータス256で終了しました)
とウィンドウが表示されたり、ログイン画面の時
インストールに問題があります
GNOMEの電源管理,,,,,,,,,
等のエラーが出てたのですが、何回か前回の修正をしていくうちにエラーが出なくなりました。何かの設定と関連しているようです。
いよいよfstabでコメントアウトしている領域を作り、運用中のホストとシンクロさせます。
先ずはLVMの作成
私はsdaに3つのパーティションを作り、sda1はext4でフォーマットし、親ホストの / 領域にしています。
sda2とsda3のパーティションはLVMでさらに領域を作っています。
swap領域は1TBのHDDにありますが、これは壊れて以降、変更していないので、そのまま使えます。
それでは PV の作成
# pvcreate /dev/sda2
# pvcreate /dev/sda3
VGの作成
# vgcreate Kvm6 /dev/sda2
# vgcreate Data6 /dev/sda3
ボリュームグループをsda2にKvm6、sda3にData6と言う名前で作る。
ここで重要なのはVG名をオリジナルのホストのVG名とは違える事、さもないと何かの都合でオリジナルのホストにこのディスクをつなげるとエラーになる。
LVの作成
# lvcreate -L 13G -n web Kvm6
書式は lvcreate -L 割り当てるサイズ -n lvの名前 どのVGに作成するか
同様に、他のLVも作って行きます。
2017-11-13追記(これをしないと起動しません):

 起動Diskにするためにパーティションをmsdosにする(赤のアンダーラインはSHELLへのコマンド、青のは各アプリへのコマンド、緑は表示部分の注意する所)
画像1の説明、(この画像は例の為LVがtempになっています)
parted /dev/vg名/lv名 でパーティションをを作成
(parted)と表示されたら、現在の状況を見るため、pコマンド
パーティションテーブルがloopになっている(アンダーラインで見にくいが)
テーブルを変更する為にmklabelコマンド
ラベルとして msdos
警告には y
次にパーティションが無くなったので再度作成、mkpart
種類は p
ファイルシステムは ext4
開始は 1049K
終了は 14G
出来たか見るために、再度 p
出来たがブートフラグが経ってないので
set 1 boot on (これは領域1にbootフラグをセットと言う意味)
再度 p コマンド
テーブルがmsdosでブートフラグも立っている。
q コマンドで parted を終わる
一部作業の記入を忘れていました 2017ー11ー25
# losetup -f ← loopの空いている番号を調べる、初めてなら loop0
# losetup /dev/loop0 /dev/Kvm6/temp ← loop0にtempを指定
# kpartx -a /dev/loop0
2017-11-25追記ここまで
ここで ls /dev/mapper で見ると tempp1が出来ているので
mkfs.ext4 /dev/mapper/Kvm6-tempp1で領域をフォーマットする
ここで重要なのはlv名(ここではtemp)の直ぐ後にp1(パーティションの1)が付く名前にすること
2017-11-13追記ここまで

全部のLVにprted と フォーマットを行う
一様LVを確認
# lvscan
作成したLVが表示されて入ればOK、LVの名前もチェックする事。
念のため再起動し、コピー作業をしていきます。
バックアップ用のサブホストにmountしている領域は
色々なダウンロードファイルの保存場所である、/dev/Data/Download とメールソフトのthunderbird が使用している /dev/Data/Thunderbird です。
(thunderbirdはメールの保存場所を標準の設定から変更してここにある。こうするとホストの変更の際にメールデーターの移動が簡単になる)
先ずは運用中のサーバーでbaculaでリストアをして置く。
この辺の作業はここを参照してください
必要なデーターは smb3サブホストの /SmbData/kinryo/Restores/ 以下に kvm-Download と kvm-Thunderbird として出来る
smb3ではsambaが走っているので、windowsやLinuxから参照出きるので、先ずはDownloadから
# mount.cifs //192.168.XX.XX/kinryo /test1 -o username=administrator
一部伏せ字、パスワードを聞かれるので入力する。これで、smb3の /SmbData/kinryo以下のファイルが /test1にマウントされた。そしてPWD(現在のディレクトリ位置を表示するコマンドだが)変更
# cd /test1/Restores/kvm-Download
コピーされるLVMをマウント
# mount /dev/Kvm/Download /test2
そしてコピー
# cp -pr ./ /test2
同様に kvm-Thunderbird もやる
そして fstabの変更
# gedit /etc/fstab
/dev/sda1				/                  ext4       defaults 0 0
/dev/Swap/kvm			swap               swap       defaults 0 0
devpts					/dev/pts           devpts     gid=5,mode=620 0 0
proc					/proc              proc       defaults 0 0
sysfs					/sys               sysfs      defaults 0 0
tmpfs					/dev/shm           tmpfs      defaults 0 0
/dev/Data/Download	/Download          ext4       defaults 0 0 ← # を取る
/dev/Kvm/Thunderbird	/Thunderbird       ext4       defaults 0 0 ← # を取る
# mount -a
でmountし直す。そしてマウントしたデーターが正しいかチェックする
ここで念のため再起動

****** ここからは運用中のサーバーで
次はサブホストのルートになるコピーですがbaculaでrestoreしたデーターを使用する事にします。
(各サブホストは起動中なので、そのままコピーしたくない)
コピーしたいサブホストは WEB(web5)とsamba(smb3)の二つ、
又、resutoreされるデーターは smb3の SmbData/kinryo/Restoresの下にコピーされる様に設定してある。(restoreの最後に保存されるホストの設定が必要)
restoreはここを参照してください。
リストアが終了したら

******* バックアップ用のホストに移り
LVMにコピーをしていくので、マウント、
# mount /dev/Kvm6/web /test2
test2は事前に作ってある。そしてsambaに出来たデーターは既にkinryo以下にマウントしてあるので、
(サブホストweb5のルート以下のデーターは web-rootにリストアされている。)
作業しやすいようにPWDを変更
# cd /test1/Restores/web-root
そしてコピーをしていく
# cp -pr ./ /test2
コピーが終わったら、ダブリの修正、ダブっている物は
サブホスト名、サブホストのUUID、 IPアドレス、ディスクのUUID等、

先ずはホスト名の変更
# gedit /test2/etc/sysconfig/network
抜粋
HOSTNAME=XXXX.kinryokai.net ← XXXXの所を使いたいホスト名に変更

サブホストのUUIDは
# uuidgen
da4be530-b98f-4876-9a56-ddb71dfd1f30
で表示されたUUIDをコピーし、
# virsh edit web
textモードにしてから、名前を使いたいホスト名(hostnameと合わせるため)とUUIDを Shift+Ctrl+v でペーストし、esc : w q と順に押して保存し終了するがエラーが出た
エラー: operation failed: domain 'smb' already exists with uuid 62418b8a-cd51-48e2-6185-627ec437aa93
失敗しました。 再試行しますか ? [y,n,f,?]:
fでforceしても同じエラーになるので、仕方なしに n で保存しないで終了。
色々やったがよくわからない、もっと良い方法がありそうだが,取りあえず
/etc/libvirt/qemu/web5.xmlを他の場所にコピーし、それをエディターで修正後、
# virsh undefine web
で削除し、別の場所に修正保存しているweb.xml(ファイル名も変えた)を /etc/libvirt/qemu/ に切り取り後、コピーし
# virsh define /etc/libvirt/qemu/web.xml
で定義しなおしたら出来た。
邪道だが(もっとも上のやり方も邪道みたいだが)強引に web.xml のファイル名と各変更をし、メインホストを再起動しても出来た)
次はIP
# gedit /test2/etc/sysconfig/network-scripts/ifcfg-eth0
抜粋
IPADDR=192.168.ZZ.XX ←XXの所を使いたいアドレスに

次はディスクのUUIDだがumountしてからだが、blkidで確認しておく、そして
# umount /test2
# blkid
web6のUUIDを控えておいて
# tune2fs -U `uuidgen` /dev/Kvm/web6
これで、UUIDが変更になった筈だが、確認
# blkid

次はsambaのサブホストであるsmb6のコピー。これは /test1/Restores/smb-root にあるので
# cd ../smb-root
# mount /dev/Kvm/smb6 /test2
そしてコピー
# cp -pr ./ /test2
終わったらweb6の場合と同じように、ホスト名, IPアドレス、ディスクのUUID を変更してumount する。
40:バックアップ用のホストを作り直す(4)に続く


This article comes from 錦稜会 KINRYOKAI
https://www.kinryokai.net

The URL for this story is:
https://www.kinryokai.net/article.php?storyid=341