千家信息网

如何实现AWS-EC2自动挂载EBS卷或磁盘

发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,这篇文章将为大家详细讲解有关如何实现AWS-EC2自动挂载EBS卷或磁盘,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。linux下自动挂载的配置文件是
千家信息网最后更新 2024年11月19日如何实现AWS-EC2自动挂载EBS卷或磁盘

这篇文章将为大家详细讲解有关如何实现AWS-EC2自动挂载EBS卷或磁盘,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

linux下自动挂载的配置文件是放在

[root@ip-172-31-10-1 mongodb]# cat /etc/fstab## /etc/fstab# Created by anaconda on Mon Feb 22 17:08:22 2016## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#UUID=ef6ba050-6cdc-416a-9380-c14304d0d206 /                       xfs     defaults        0 0

在这个配置文件中,最后一行显示的是自动挂载的磁盘。

对于用AMI启动的EC2实例特别要注意,在第一次按照默认配置(实际的启动卷数量)进行启动之后,若想修改默认的卷个数或进行其他卷挂载的时候,需要修改自动挂载脚本。若在不修改配置文件的情况下,解除了在配置文件中出现的原挂载卷,会导致实例在重启后无法正常启动,你的EC2实例也就坏了…

那么,如何查看自己挂载的卷是否在自动挂载的配置文件中?
下面进行查询

首先要查询到机器上挂载了那些卷:

$ df -lhFilesystem           Size  Used Avail Use% Mounted on/dev/xvda1            30G   11G   20G  37% /devtmpfs             3.9G     0  3.9G   0% /devtmpfs                3.7G     0  3.7G   0% /dev/shmtmpfs                3.7G   17M  3.7G   1% /runtmpfs                3.7G     0  3.7G   0% /sys/fs/cgroup/dev/xvdg            500G  377G  123G  76% /data_bak/dev/mapper/kp-data  695G  458G  237G  66% /datatmpfs                757M     0  757M   0% /run/user/1000

从上面可以看出,/dev开头的是挂载卷,总共有三个挂载卷,我们需要知道每个挂载卷的UUID号。

# lsblkNAME                                                                                     MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTxvda                                                                                     202:0    0   30G  0 disk└─xvda1                                                                                  202:1    0   30G  0 part /xvdh                                                                                     202:112  0  700G  0 disk└─kp-data                                                                                253:0    0  695G  0 lvmloop0                                                                                      7:0    0  100G  0 loop└─docker-202:1-466265-pool                                                               253:1    0  100G  0 dm  └─docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498 253:2    0   10G  0 dmloop1                                                                                      7:1    0    2G  0 loop└─docker-202:1-466265-pool                                                               253:1    0  100G  0 dm  └─docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498 253:2    0   10G  0 dm# blkid/dev/block/202:1: UUID="ef6ba050-6cdc-416a-9380-c14304d0d206" TYPE="xfs"/dev/loop0: UUID="32b45258-a08f-4e9b-b2fa-5baa99f96c7d" TYPE="xfs"/dev/mapper/docker-202:1-466265-pool: UUID="32b45258-a08f-4e9b-b2fa-5baa99f96c7d" TYPE="xfs"/dev/mapper/docker-202:1-466265-07b91bd38d426f9da2428c068aa1b780e3ca2236a29cce6efba92c4143adf498: UUID="32b45258-a08f-4e9b-b2fa-5baa99f96c7d" TYPE="xfs"

通过上面两个命令可以查找到对应的UUID号。

将需要去除的卷那一行去掉即可。

另外将EBS卷和实例分离的步骤
  1. 使用以下命令卸载 /dev/sdh 设备

umount -d /dev/sdh
  1. 打开 Amazon EC2 控制台 https://console.aws.amazon.com/ec2/。

  2. 在导航窗格中,选择 Volumes。

  3. 选择卷,然后选择 Actions、Detach Volume。

  4. 在确认对话框中,选择 Yes, Detach。

如果碰到显示卷正在使用busy的信息,说明有程序正在使用这个卷。

[centos@ip-172-31-10-1 ~]$ sudo umount /dev/xvdfumount: /data: target is busy.        (In some cases useful info about processes that use         the device is found by lsof(8) or fuser(1))

通过下面命令查找是哪些进程在使用:

[centos@ip-172-31-10-1 log]$ lsof | grep '/data'bash      11100        centos  cwd       DIR 202,80      4096   262146 /data/mongo/logbash      11863        centos  cwd       DIR 202,80      4096        2 /databash      12107        centos  cwd       DIR 202,80      4096   262148 /data/mongo/dblsof      13481        centos  cwd       DIR 202,80      4096   262146 /data/mongo/loggrep      13482        centos  cwd       DIR 202,80      4096   262146 /data/mongo/loglsof      13483        centos  cwd       DIR 202,80      4096   262146 /data/mongo/log

然后将这些进程kill掉,就可以顺利umount卷或磁盘了~

关于如何实现AWS-EC2自动挂载EBS卷或磁盘就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0