今天,我們繼續【Lab】EC2儲存資源 EBS Volume 建立與使用下半部分。
再來回到 Instances,點擊 EC2 Instance,按下 Connect 就會顯示幾個好用的指令,複製 chmod 400 my-ec2-keypair.pem 指令,如下圖:
複製好 chmod 後在本地電腦開啟 Terminal,直接 cd 到下載 Key Pair 的目錄底下 (我是目錄是 Downloads),之後打上 ls -l grep .pem 這個指令,就可以看到下載的 Key Pair,而左邊是代表他可以被使用的權限,可以看到有 w(write) 的這個權限,但 AWS 不允許權限這麼大,所以可以貼上剛剛的指令 chmod 400 my-ec2-keypair.pem,再按 ↑↑ 找到先前打過的指令執行,就可以看到權限只剩下 r(read) 這樣就代表可以使用了。如下圖:
回到 EC2 介面,複製 SSH 指令到 Terminal 貼上,Terminal 會告訴我們這個 Hostname 不認識是否要繼續,打上 yes 代表要。跑完之後看到Amazon Linux AMI 的圖示就代表成功進去 EC2 Instance 了。如下圖:
接著我們要來看這台 EC2 Instance 所擁有的 EBS Volume。打上 lsblk -p (-p 可以看到完整路徑),就會看到有兩個 EBS Volume,第一個是 8GB,被 Mount 在根目錄,第二個 32GB 後來加上去的,還沒有被 Mount,也就是還沒被任何的資料夾做使用。如下圖:
再來打上 sudo file -s,並複製尚未被 Mount 的 EBS Volume 名稱貼上,這個指令是讓我們去看這個硬碟空間格式化的狀況如何。如果我們看到data 就代表硬碟空間還沒被格式化,所以作業系統還不能去使用他。如下圖:
我們要去格式化他,打上 sudo mkfs -t xfs,並貼上 EBS Volume 名稱。如果看到警示符號 (No such file or directory) 代表還沒安裝 mkfs.xfs 這個套件。打上 sudo yum install xfsprogs 安裝起來,如下圖:
並打上 y 代表同意,好了之後再按 ↑,再做一次同樣指令,格式化就成功了。如下圖:
在成功之後我們再檢視一次,打上 sudo file -s 與硬體的名稱,就會發現已經不是呈現 data 了,而是 SGI XFS filesystem,代表這一個硬碟確實被格式化過了,並且可以給作業系統使用。如下圖:
最後一步就是去 Mount 到某一個資料夾,這邊我先創一個 mkdir (我叫他my_data),再來 sudo mount 加上硬碟名稱與 folder 名稱,之後再打上 lsblk -p,如下圖:
好了之後就會看到現在除了根目錄有 Mount 之外,還有我們剛剛建立的資料夾已經被連結到我們新建立的 32G EBS Volume 的硬碟空間,如下圖:
接著我們要到創建好的資料夾放入假資料,我們打上 cd,再打上 df -h 看一下目前的硬碟使用狀況,在這個 Demo 之中,我們看到 32G 這個目前只使用 65MB 這麼少,如下圖:
那我們透過 sudo fallocate -l 來創造假檔案,給他 1G 的大小並取名 (我叫falk_file),好了之後再打上 df -h,如下圖:
之後就會發現使用狀況從原本的 65MB 上升到 1.1GB 了,並打上 ls -lh,就會看到剛剛建立的檔案就在這個目錄底下,占了 1G 的空間,如下圖:
本單元,我們實作了 EBS Volume 的創建,其中包含 Root Volume 以及額外硬碟的兩種設定,並透過各種 mount 相關指令,讓 EC2 Instance 能夠去使用外接 EBS Volume。
到這邊,我們也用了 5 天來認識 EC2 這個服務,同樣也還有著許多值得深入練習的 Lab 主題,比如說 EBS Snapshot、客製化 AMI 的部分。如果未來鐵人賽變成 300 天,相信就能給各個主題足夠的篇幅XD
那麼明天我們將再來認識第三個「儲存寶石:S3」!