😽

【AWS】AmazonLinuxにEBSをマウントさせてみた。

2021/05/25に公開

はじめに

AmazonLinuxにEBSをマウントさせる手順をアウトプットしてみたいと思います。
※仕事で疑問に思っている方がいらっしゃったので、せっかくだから記事にしようという考えです。

構成図

※今回は赤枠のEBSをEC2にxfs形式でマウントさせてみます。

EC2(AmazonLinux)のスペック

項目 設定
VM名 testweb01
インスタンスタイプ t2.micro
OS AmazonLinux2
vCPU 1
メモリ(GiB) 1
ルートデバイス名 /dev/sda1:8GB(/)
EBS /dev/sdb:8GB(/st1)

前提

  • 作業用ユーザーにて作業
  • 既にEC2作成済みの状態
  • EC2作成時にボリューム追加済み

作業手順

①ボリュームマウント設定
②自動マウント設定

①ボリュームマウント設定

1.アタッチ済みボリュームの確認

コマンド
lsblk

svdbがマウントされていないことを確認

実行例
[ec2-user@ip-10-0-0-45 ~]$ lsblk
NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
mqxvda1 202:1    0   8G  0 part /
xvdb    202:16   0   8G  0 disk
[ec2-user@ip-10-0-0-45 ~]$

2.ボリュームにファイルシステムが存在しないことを確認。

  • ファイルシステムタイプの確認
コマンド
sudo file -s ボリュームパス

dataだけ出力されていることを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo file -s /dev/xvdb
/dev/xvdb: data
[ec2-user@ip-10-0-0-45 ~]$
  • インスタンスにアタッチされている全てのデバイスに関する情報を取得
コマンド
sudo lsblk -f

xvdbにファイルシステムが存在しないことを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo lsblk -f
NAME    FSTYPE LABEL UUID                                 MOUNTPOINT
xvda
mqxvda1 xfs    /     7b355c6b-f82b-4810-94b9-4f3af651f629 /
xvdb
[ec2-user@ip-10-0-0-45 ~]$

3.ファイルシステム作成

  • ファイルシステム作成
コマンド
sudo mkfs -t xfs ボリュームパス

/dev/xvdbにファイルシステム(xfs)を作成する。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo mkfs -t xfs /dev/xvdb
meta-data=/dev/xvdb              isize=512    agcount=4, agsize=524288 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=0
data     =                       bsize=4096   blocks=2097152, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[ec2-user@ip-10-0-0-45 ~]$
  • ファイルシステム作成後確認
コマンド
lsblk -f

xvdbがxfsになっていることを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ lsblk -f
NAME    FSTYPE LABEL UUID                                 MOUNTPOINT
xvda
mqxvda1 xfs    /     7b355c6b-f82b-4810-94b9-4f3af651f629 /
xvdb    xfs          ba27c20e-2346-41da-8668-461a01a5e685
[ec2-user@ip-10-0-0-45 ~]$

4.ボリュームのマウントポイントディレクトリの作成

コマンド
sudo mkdir ディレクトリ

/st1ディレクトリを作成する。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo mkdir /st1
[ec2-user@ip-10-0-0-45 ~]$ ls -la /st1
total 0
drwxr-xr-x  2 root root   6 May 25 11:39 .
dr-xr-xr-x 19 root root 268 May 25 11:39 ..
[ec2-user@ip-10-0-0-45 ~]$

5.ボリュームマウント

  • ボリュームマウント
コマンド
sudo mount ボリュームパス マウントするディレクトリ

/st1ディレクトリにxvdbをマウントする。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo mount /dev/xvdb /st1
[ec2-user@ip-10-0-0-45 ~]$
  • ボリューム後確認
コマンド
df -Ph

/st1ディレクトリにxvdbがマウントされていることを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ df -Ph
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        482M     0  482M   0% /dev
tmpfs           492M     0  492M   0% /dev/shm
tmpfs           492M  404K  492M   1% /run
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/xvda1      8.0G  1.5G  6.6G  18% /
tmpfs            99M     0   99M   0% /run/user/1000
/dev/xvdb       8.0G   41M  8.0G   1% /st1
[ec2-user@ip-10-0-0-45 ~]$

②自動マウント設定

このまま再起動を実施した場合、ボリュームが自動マウントされない。
そのため、起動時に自動でボリュームがマウントされる設定を実施する。

1./etc/fstabのバックアップ

  • ファイルバックアップ
コマンド
cp -p /etc/fstab /etc/fstab.org
実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo cp -p /etc/fstab /etc/fstab.org
[ec2-user@ip-10-0-0-45 ~]$
  • バックアップ確認
コマンド
s -la /etc | grep fstab

/etc/fstab.orgが存在することを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ ls -la /etc | grep fstab
-rw-r--r--  1 root root       91 Apr 29 00:16 fstab
-rw-r--r--  1 root root       91 Apr 29 00:16 fstab.org
[ec2-user@ip-10-0-0-45 ~]$

2.デバイスのUUIDを確認

コマンド
sudo blkid

/dev/xvdbのUUIDを確認する。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo blkid
/dev/xvda1: LABEL="/" UUID="7b355c6b-f82b-4810-94b9-4f3af651f629" TYPE="xfs" PARTLABEL="Linux" PARTUUID="a5dcc974-1013-4ea3-9942-1ac147266613"
/dev/xvdb: UUID="ba27c20e-2346-41da-8668-461a01a5e685" TYPE="xfs"
[ec2-user@ip-10-0-0-45 ~]$

/dev/xvdbのUUIDがba27c20e-2346-41da-8668-461a01a5e685であることを確認。

3.自動ボリュームマウント設定

コマンド
sudo vim /etc/fstab

/etc/fstabに以下の一行を追加する。

追加内容
UUID=ba27c20e-2346-41da-8668-461a01a5e685  /st1  xfs  defaults,nofail  0  2

【設定についての説明】

  • デバイスUUID=ba27c20e-2346-41da-8668-461a01a5e685をディレクトリ/st1にマウント
  • xfsファイルシステムを使用
  • defaults,nofailフラグを使用
  • ファイルシステムがダンプされないように「0」を設定
  • ルート以外のデバイスでfsckチェックを実施するために「2」を設定

※フラグの意味

項目 説明
defaults デフォルトのオプションを設定する(async auto dev exec nouser rw suid)
nofail マウントできないディスクを無視するための設定
ファイル内容
[ec2-user@ip-10-0-0-45 ~]$ cat /etc/fstab
#
UUID=7b355c6b-f82b-4810-94b9-4f3af651f629     /           xfs    defaults,noatime  1   1
UUID=ba27c20e-2346-41da-8668-461a01a5e685  /st1  xfs  defaults,nofail  0  2
[ec2-user@ip-10-0-0-45 ~]$

4.ボリュームマウント確認

  • アンマウント/マウント確認
コマンド
sudo umount ファイルシステム
sudo mount ファイルシステム
df -Ph

/st1のアンマウント/マウントを実施する。

実行例
[ec2-user@ip-10-0-0-45 ~]$ sudo umount /st1
[ec2-user@ip-10-0-0-45 ~]$ sudo mount /st1
[ec2-user@ip-10-0-0-45 ~]$ df -Ph
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        482M     0  482M   0% /dev
tmpfs           492M     0  492M   0% /dev/shm
tmpfs           492M  464K  492M   1% /run
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/xvda1      8.0G  1.5G  6.6G  18% /
tmpfs            99M     0   99M   0% /run/user/1000
tmpfs            99M     0   99M   0% /run/user/0
/dev/xvdb       8.0G   41M  8.0G   1% /st1 ← マウントされていることを確認。
[ec2-user@ip-10-0-0-45 ~]$
  • 再起動確認
再起動
sudo reboot
再起動後確認
df -Ph

再起動後に/st1がマウントされていることを確認。

実行例
[ec2-user@ip-10-0-0-45 ~]$ df -Ph
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        482M     0  482M   0% /dev
tmpfs           492M     0  492M   0% /dev/shm
tmpfs           492M  408K  492M   1% /run
tmpfs           492M     0  492M   0% /sys/fs/cgroup
/dev/xvda1      8.0G  1.5G  6.6G  18% /
/dev/xvdb       8.0G   41M  8.0G   1% /st1
tmpfs            99M     0   99M   0% /run/user/1000
[ec2-user@ip-10-0-0-45 ~]$

参考

Linux で Amazon EBS ボリュームを使用できるようにする
/etc/fstabに記述されている数字の意味
/etc/fstabファイル(ファイルシステムテーブル)
クラウドサーバーの追加ディスクマウント時はnofailオプションを!

Discussion