Day 13 运算宝石:【Lab】EC2储存资源 EBS Volume 建立与使用 (下)

https://ithelp.ithome.com.tw/upload/images/20210914/20100951aqaopPkpM7.jpg

今天,我们继续【Lab】EC2储存资源 EBS Volume 建立与使用下半部分。

连进 EC2 Instance 设定 EBS Volume 使用

再来回到 Instances,点击 EC2 Instance,按下 Connect 就会显示几个好用的指令,复制 chmod 400 my-ec2-keypair.pem 指令,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951ExR3F8mAoS.png
https://ithelp.ithome.com.tw/upload/images/20210905/20100951JVp8pjfena.png

复制好 chmod 後在本地电脑开启 Terminal,直接 cd 到下载 Key Pair 的目录底下 (我是目录是 Downloads),之後打上 ls -l grep .pem 这个指令,就可以看到下载的 Key Pair,而左边是代表他可以被使用的权限,可以看到有 w(write) 的这个权限,但 AWS 不允许权限这麽大,所以可以贴上刚刚的指令 chmod 400 my-ec2-keypair.pem,再按 ↑↑ 找到先前打过的指令执行,就可以看到权限只剩下 r(read) 这样就代表可以使用了。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951qKmAsyspYs.png

回到 EC2 介面,复制 SSH 指令到 Terminal 贴上,Terminal 会告诉我们这个 Hostname 不认识是否要继续,打上 yes 代表要。跑完之後看到Amazon Linux AMI 的图示就代表成功进去 EC2 Instance 了。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951R9fdtpHyjK.png

接着我们要来看这台 EC2 Instance 所拥有的 EBS Volume。打上 lsblk -p (-p 可以看到完整路径),就会看到有两个 EBS Volume,第一个是 8GB,被 Mount 在根目录,第二个 32GB 後来加上去的,还没有被 Mount,也就是还没被任何的资料夹做使用。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951YKxIkRb82s.png

再来打上 sudo file -s,并复制尚未被 Mount 的 EBS Volume 名称贴上,这个指令是让我们去看这个硬碟空间格式化的状况如何。如果我们看到data 就代表硬碟空间还没被格式化,所以作业系统还不能去使用他。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951eUzsMXWTaO.png

我们要去格式化他,打上 sudo mkfs -t xfs,并贴上 EBS Volume 名称。如果看到警示符号 (No such file or directory) 代表还没安装 mkfs.xfs 这个套件。打上 sudo yum install xfsprogs 安装起来,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951gu7r5j4Tt8.png

并打上 y 代表同意,好了之後再按 ↑,再做一次同样指令,格式化就成功了。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951cSGdRa038H.png

在成功之後我们再检视一次,打上 sudo file -s 与硬体的名称,就会发现已经不是呈现 data 了,而是 SGI XFS filesystem,代表这一个硬碟确实被格式化过了,并且可以给作业系统使用。如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951ZAPCq9uLht.png

最後一步就是去 Mount 到某一个资料夹,这边我先创一个 mkdir (我叫他my_data),再来 sudo mount 加上硬碟名称与 folder 名称,之後再打上 lsblk -p,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951jdUcKmhmRc.png

好了之後就会看到现在除了根目录有 Mount 之外,还有我们刚刚建立的资料夹已经被连结到我们新建立的 32G EBS Volume 的硬碟空间,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951cSacH5eKNX.png

到资料夹创建假资料

接着我们要到创建好的资料夹放入假资料,我们打上 cd,再打上 df -h 看一下目前的硬碟使用状况,在这个 Demo 之中,我们看到 32G 这个目前只使用 65MB 这麽少,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951ztBcRiDPne.png

那我们透过 sudo fallocate -l 来创造假档案,给他 1G 的大小并取名 (我叫falk_file),好了之後再打上 df -h,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951j51re68FkZ.png

之後就会发现使用状况从原本的 65MB 上升到 1.1GB 了,并打上 ls -lh,就会看到刚刚建立的档案就在这个目录底下,占了 1G 的空间,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951fyJ2QfOfl8.png

小结

本单元,我们实作了 EBS Volume 的创建,其中包含 Root Volume 以及额外硬碟的两种设定,并透过各种 mount 相关指令,让 EC2 Instance 能够去使用外接 EBS Volume。

What's Next?

到这边,我们也用了 5 天来认识 EC2 这个服务,同样也还有着许多值得深入练习的 Lab 主题,比如说 EBS Snapshot、客制化 AMI 的部分。如果未来铁人赛变成 300 天,相信就能给各个主题足够的篇幅XD

那麽明天我们将再来认识第三个「储存宝石:S3」!


<<:  CSS微动画 - 了解Animation并做出更多效果吧!

>>:  Day3 Pipeline 如何做版本控制 - NiFi Registry

开 api 日常心得笔记

开 api 规格是个有趣的事情,从栏位命名、资料阶层设计、易读性、合理性、方便性都是需要考量的点,对...

Day28 softirq, tasklet, workqueue

前言 昨天连滚带爬的走出了 interrupt的泥淖,希望之後能够有空把他弄得更清楚,今天要讲的东西...

Golang 程序码初读

Golang 程序码初读 按照惯例,怎麽能不先看看Hello, world呢!下面是Hello, w...

[Day 29]-【STM32系列】实作-步进马达 + ULN2003 控制

今天介绍步进马达,疑?昨天不是才说过马达吗?昨天的是伺服马达,今天的则是伺服马达 这两者有甚麽不一样...

结语

前言 今年13th铁人终於来到了尾声,又过了一年时间过得很快,今年是第二年的挑战(依旧主管迫害啊~)...