【CentOS7&AWS】EBSを新規に追加し、/var配下を新規EBSへマウントし直す手順


◆EBSを新規に追加し、/var配下を
 新規EBSへマウントし直す手順

<前提>
・OSはCentOS7.xでファイルシステムは
 xfsであること
・任意のEBSボリュームを作成し、
 該当インスタンスへアタッチが
 完了していること
・root権限で実行すること
・# yum -y install gdiskでgdiskコマンドが
 インストールされていること

<手順>
①追加のEBSボリュームが
  当該インスタンスに
  アタッチされていること
 →今回は/dev/xvdfボリュームで作成

②gdisk コマンドで /dev/xvdf1という
パーティションを切る
# gdisk /dev/xvdf

※注意1:gdisk コマンドに渡す引数は、
「/dev/xvdf」となる。そのコマンドの
実行の結果として「/dev/xvdf1」という
パーティションが切られるので1はつけないこと。

※注意2:EBSのボリュームの
 「アタッチ済み情報」を確認して
 任意のボリュームに読み替えること
※注意3:多少なりとも危険を
 伴う作業のため、バックアップを
 取得後、実施するか検証環境で
 手順を確認しておくこと。

p 押下で現在のパーティションを表示
n 押下で新規でパーティションを作成
Enter 押下(デフォルトのまま) ※ Partition number
Enter 押下(デフォルトのまま) ※ First sector
Enter 押下(デフォルトのまま) ※ Last sector
Enter 押下(デフォルトのまま) ※ Hex code or GUID
w 押下で書き込みに進む
Y 押下で、実際に書き込み

※以降の手順は、"gdisk" コマンドにより
 /dev/xvdf1 パーティションが
 作成されたことを前提としているので、
 再度"lsblk"或いは"fdisk -l"を実行し、
 実際の環境で作成された
 パーティションに適宜置き換えること

③パーティションの変更を OS に通知
 # partprobe /dev/xvdf1

④xfs ファイルシステムを作成
 # mkfs.xfs /dev/xvdf1

⑤/mnt にマウントして、既存のログをコピー
 # mount /dev/xvdf1 /mnt
 # rsync -a /var/ /mnt/
 # umount /dev/xvdf1

⑥UUID を確認し、fstab を修正
 # xfs_admin -u /dev/xvdf1

 以下のようなエントリーを /etc/fstab に追加
UUID=5dbc3450-ad21-405a-ac1d-66d41901e919 /var xfs defaults 0 2
 →イコール(=)の前後にスペースを
 入れないこと

⑦マウントできることを確認
 # mount /var

※"# mouont /var" の
 実行後は、"df -h" により対象の
 パーティションが"/var" に
 マウントされていることを
 確認し継続して"/mnt" に
 マウントされてしまっている場合は、
 "umount /mnt" を実行し、
 再度"df -h" でマウントの状況を確認する。

⑧SELinux のコンテキストを正しく設定
 # restorecon -Rv /var

⑨OSを再起動
 # reboot

⑩起動後ログが正しく書き込めているか確認
 # logger "TEST" # tail /var/log/messages

(参考)
 /var/log/messagesファイルの
 最後から100行を表示
 # tail -n 100 /var/log/messages

また、上記の手順だと既存の/var以下の
ログが残るが、これらを削除したい場合には、
当該インスタンスを停止し、
当該ボリュームをデタッチし別の
インスタンスにアタッチ&マウントして、
/var/ 以下のファイルを
削除するといった方法で削除が可能。