AWS ParallelCluster ヘッドノードに追加したEBSを拡張

2020.10.09

ヘッドノードに追加したEBSを拡張

結論

  • EBSを拡張しヘッドノード、コンピュートノードから正しく認識できました。
  • AWS ParallelClusterだからといって特別な作業はありませんでした。
    • ParallelCluster 2.7 + CentOS7

ParallelClusterのEBS拡張検証

至って普通のEBS拡張作業なのですがParallelClusterの検証結果として残します。

検証環境構成

項目
OS CentOS7
ジョブスケジューラ Slurm
ParallelClusterバージョン 2.7

EBS拡張作業

ヘッドノードに追加でアタッチした拡張対象のEBS情報です。

> aws ec2 describe-volumes --volume-ids vol-0e453e8aee6ab4d35

出力結果
EBSのサイズは10GBです。

{
    "Volumes": [
        {
            "Attachments": [
                {
                    "AttachTime": "2020-10-06T04:19:34+00:00",
                    "Device": "/dev/sdb",
                    "InstanceId": "i-0566bdd7bb9223027",
                    "State": "attached",
                    "VolumeId": "vol-0e453e8aee6ab4d35",
                    "DeleteOnTermination": false
                }
            ],
            "AvailabilityZone": "ap-northeast-1a",
            "CreateTime": "2020-10-06T04:03:33.473000+00:00",
            "Encrypted": true,
            "KmsKeyId": "arn:aws:kms:ap-northeast-1:000000000000:key/8a8bfc1d-dbbf-4ded-a481-76ef956aae63",
            "Size": 10,
            "SnapshotId": "",
            "State": "in-use",
            "VolumeId": "vol-0e453e8aee6ab4d35",
            "Iops": 100,
            "Tags": [
                {
                    "Key": "Name",
                    "Value": "test-parallelcluster-add-master"
                }
            ],
            "VolumeType": "gp2"
        }
    ]
}

50GBに変更します。

> aws ec2 modify-volume --size 50 --volume-id vol-0e453e8aee6ab4d35

出力結果

{
    "VolumeModification": {
        "VolumeId": "vol-0e453e8aee6ab4d35",
        "ModificationState": "modifying",
        "TargetSize": 50,
        "TargetIops": 150,
        "TargetVolumeType": "gp2",
        "OriginalSize": 10,
        "OriginalIops": 100,
        "OriginalVolumeType": "gp2",
        "Progress": 0,
        "StartTime": "2020-10-07T08:09:18+00:00"
    }
}

しばらく時間を置いてから拡張されたか確認します。

> aws ec2 describe-volumes --volume-ids vol-0e453e8aee6ab4d35

出力結果
50GBに拡張されました。

{
    "Volumes": [
        {
            "Attachments": [
                {
                    "AttachTime": "2020-10-06T04:19:34+00:00",
                    "Device": "/dev/sdb",
                    "InstanceId": "i-0566bdd7bb9223027",
                    "State": "attached",
                    "VolumeId": "vol-0e453e8aee6ab4d35",
                    "DeleteOnTermination": false
                }
            ],
            "AvailabilityZone": "ap-northeast-1a",
            "CreateTime": "2020-10-06T04:03:33.473000+00:00",
            "Encrypted": true,
            "KmsKeyId": "arn:aws:kms:ap-northeast-1:000000000000:key/8a8bfc1d-dbbf-4ded-a481-76ef956aae63",
            "Size": 50,
            "SnapshotId": "",
            "State": "in-use",
            "VolumeId": "vol-0e453e8aee6ab4d35",
            "Iops": 150,
            "Tags": [
                {
                    "Key": "Name",
                    "Value": "test-parallelcluster-add-master"
                }
            ],
            "VolumeType": "gp2"
        }
    ]
}

ParallelClusterのヘッドノードでの作業

ParallelClusterのヘッドノードでも一般的な作業方法と変わりありません。

ボリュームサイズ変更後の Linux ファイルシステムの拡張 - Amazon Elastic Compute Cloud

/sharedが追加したEBSのマウント先です。

$ df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  3.7G     0  3.7G   0% /dev
tmpfs          tmpfs     3.8G     0  3.8G   0% /dev/shm
tmpfs          tmpfs     3.8G   17M  3.7G   1% /run
tmpfs          tmpfs     3.8G     0  3.8G   0% /sys/fs/cgroup
/dev/nvme0n1p1 xfs        25G   12G   14G  47% /
/dev/nvme1n1   ext4      9.8G   37M  9.2G   1% /shared
tmpfs          tmpfs     761M     0  761M   0% /run/user/0
tmpfs          tmpfs     761M     0  761M   0% /run/user/1000
$ lsblk
NAME        MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme0n1     259:1    0  25G  0 disk
└─nvme0n1p1 259:2    0  25G  0 part /
nvme1n1     259:0    0  50G  0 disk /shared

追加でアタッチしたEBSはext4なのでresize2fsコマンドを使用しました。

$ sudo resize2fs /dev/nvme1n1
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/nvme1n1 is mounted on /shared; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 7

/sharedのディスクサイズが50GBになりました。

$ df -hT
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  3.7G     0  3.7G   0% /dev
tmpfs          tmpfs     3.8G     0  3.8G   0% /dev/shm
tmpfs          tmpfs     3.8G   17M  3.7G   1% /run
tmpfs          tmpfs     3.8G     0  3.8G   0% /sys/fs/cgroup
/dev/nvme0n1p1 xfs        25G   12G   14G  47% /
/dev/nvme1n1   ext4       50G   52M   47G   1% /shared
tmpfs          tmpfs     761M     0  761M   0% /run/user/0
tmpfs          tmpfs     761M     0  761M   0% /run/user/1000

コンピュートノードから確認

50GBのディスクがNFSマウントされているのが確認できます。

$ df -hT
Filesystem                                                Type      Size  Used Avail Use% Mounted on
devtmpfs                                                  devtmpfs  1.8G     0  1.8G   0% /dev
tmpfs                                                     tmpfs     1.8G     0  1.8G   0% /dev/shm
tmpfs                                                     tmpfs     1.8G   17M  1.8G   1% /run
tmpfs                                                     tmpfs     1.8G     0  1.8G   0% /sys/fs/cgroup
/dev/nvme0n1p1                                            xfs        25G   12G   14G  47% /
ip-10-1-10-184.ap-northeast-1.compute.internal:/home      nfs        25G   12G   14G  47% /home
ip-10-1-10-184.ap-northeast-1.compute.internal:/opt/intel nfs        25G   12G   14G  47% /opt/intel
ip-10-1-10-184.ap-northeast-1.compute.internal:/shared    nfs        50G   52M   47G   1% /shared
ip-10-1-10-184.ap-northeast-1.compute.internal:/opt/slurm nfs        25G   12G   14G  47% /opt/slurm
tmpfs                                                     tmpfs     355M     0  355M   0% /run/user/1000

書き込みも問題なし。前回の書き込みテストで使ったファイルも確認できます。

$ touch /shared/new_comnode.txt

$ ll /shared
total 16
drwx------ 2 root   root   16384 Oct  6 04:19 lost+found
-rw-rw-r-- 1 centos centos     0 Oct  9 08:02 new_comnode.txt
-rw-rw-r-- 1 centos centos     0 Oct  6 04:43 written_by_comnode.txt
-rw-rw-r-- 1 centos centos     0 Oct  6 04:36 written_by_headnode.txt

おわりに

AWS ParallelClusterのヘッドノードなので念のため検証しました。追加EBSの拡張に関しては一般的なEC2と同じ認識で問題なかったです。不安に思われた方の参考になれば幸いです。

以上、コンサル部の大村@網走でした。