iT邦幫忙

2021 iThome 鐵人賽

DAY 22
0
IT管理

無限手套 AWS 版:掌控一切的 5 + 1 雲端必學主題系列 第 22

Day 22 資料寶石:【Lab】RDS架構 建立自己的第一台雲端資料庫 (中)

https://ithelp.ithome.com.tw/upload/images/20210924/20100951ED1oBVei3M.jpg

今天我們接續 RDS Lab 實作。

創建第一台 RDS instance

按下左邊列表的 Databases (下圖#1),再點擊右方 Create database (下圖#2),開始建立資料庫的動作。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951w7wxEGjqPW.png

如下圖,資料庫的建立方式選擇 Standard Create,擁有較完整的設定。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951YMmLr9X2mS.png

下方有多種不同的 DB 軟體可以使用(下圖#1),包含 Amazon Aurora、MariaDB、MySQL、PostgreSQL、Oracle、Microsoft SQL Server。

Amazon Aurora (下圖#2)是一個相容於 MySQL 與 PostgreSQL 的資料庫軟體,跟其他 DB 相比長得比較不同,是經過各種優化的,而這次示範則要拿跟其他 DB 比較像的資料庫軟體MySQL(下圖#3)來做示範。

Edition 種類只有一個,就是 MySQL Community (下圖#4)。Version 則有非常多個,這邊假設選擇 AWS 預設的 MySQL 8.0.17 (下圖#5)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951OAkbzLwi8C.png

再來看到 Templates 下方有3個選項,基本上真正要用的都是選擇 Production (下圖#1),而如果是開發或測試則是選擇 Dev/Test (下圖#2)或 Free tier (下圖#3),由左而右,花費越少。
https://ithelp.ithome.com.tw/upload/images/20210905/201009513eXik8DBg6.png

再來看到 Setting,假設給 DB 一個名稱為 mysql-database-1 (下圖#1), Credentials Settings 下方帳號名稱則為 admin (下圖#2),再利用 Master password 與 Confirm password 輸入密碼以建立密碼(下圖#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/2010095129U0KUFpoJ.png

而下方 DB instance size 選擇的是什麼呢?就如同先前介紹的,一個 RDS instance 就是 EC2 加 EBS 再配上一些資料庫軟體,所以這邊在選的其實是底層的 EC2 要用什麼規格。

可以看到有 3 個大類,這邊的選擇就跟在考量 EC2 instance Type 的時候一樣,選擇 Standard classes (下圖#1)。

再來,下邊則是選擇要用多好的 EC2 instance 來跑這個資料庫,這次則假設選以 AWS 預設的 db.m5.xlarge (下圖#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951fpQi3K3qWv.png

Storage 相關到的是底層的 EBS Volume 要用到多好,Storage type 選擇預設的 Provisioned IOPS (SSD)(下圖#1),Allocated storage 放上 100GiB 初始的儲存空間(下圖#2),Provisioned IOPS 給 1000 個處理 I/O 的能力(下圖#3)。

而 Storage autoscaling 下方 Enable storage autoscaling 的勾選(下圖#4),以及 Maximum storage threshold 為 1000GiB 的設置(下圖#5),將能夠從最少的 100GiB 的初始空間(下圖#2),根據需求動態擴大到 1000GiB (下圖#5)。
https://ithelp.ithome.com.tw/upload/images/20210905/201009516RtU2ow0JJ.png

Availability & durability 中的 Multi-AZ deployment 通常都會選用 Create a standby instance,如下圖。

也就如同之前所介紹的,有一台 Primary instance,也會有一台 Standby instance 隨時準備接管,當 Primary instance 壞掉時來做事情,這也是為什麼 Subnet Group 必須再放入不同 AZ 的兩個 Subnets。
https://ithelp.ithome.com.tw/upload/images/20210905/201009511FrMqkMiAZ.png

Connectivity 網路的連線部分,Virtual private cloud (VPC)放上先前所建立的 VPC (下圖#1),再來點開下方的 Additional connectivity configuration (下圖#2),放上先前建立的 Subnet Group (下圖#3)。

Publicly accessible (下圖#4)設定的項目為是否要讓此 RDS instance 對 Internet 開放,通常都選擇 No,只透過一個在 Public 的 EC2 去跟在 Private Subnet 的 RDS instance 做溝通。

再來,先把 Existing VPC security groups 的 default 取消掉(下圖#5),選擇先前建立的 Security Group (下圖#6),這樣就可以允許外界透過 Database port 3306 (下圖#7)來連進此資料庫。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951OMB9fr4hQA.png

Database authentication options 選擇使用一般的密碼認證方式 ,如下圖:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951DgoA48YJak.png

接下來點開 Additional configuration,如下圖。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951WW2IAYBoyf.png

往下看到 Backup,先前提過 RDS 為使用者提供了許多備份功能,而這邊勾選 Enable automatic backups (下圖#1),就能選擇 Backup 的頻率(下圖#2),此處是以天為單位,目前版本可以從 1 天到 15 天,這邊假設選擇每 1 天都來備份 1 次。

因為 Backup 會佔據一些資源,所以通常 Backup 時間會在當地時間凌晨,而更確切的時間則可以透過 Backup window 選擇 Select window 來調整(下圖#3),不過這邊為了 Demo 選擇 No preference (下圖#4)就好了。
https://ithelp.ithome.com.tw/upload/images/20210905/201009519rIBb30KBB.png

再往下找到 Maintenance,勾選 Enable auto minor version upgrade (下圖#1),它就會幫使用者做定期的軟體自動更新。

而當底層的 EC2 instance 在做 Patching 的時候,也會占用一些資源,所以也可以透過 Maintenance window 的 Select window 的勾選來使用調整自動更新時間的功能(下圖#2),而這次 Demo 就用 No preference 就可以了(下圖#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951Il1nsd6gqD.png

最後,藉勾選 Enable deletion protection,就能預防使用者不小心把整台 RDS 給砍掉,如下圖:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951B6wmNAm0ZN.png

往下滑看到 Estimated monthly costs,下方會顯示每月的預計花費(下圖#1),總共 600 美金大約台幣 18000 元,所以在這次的 Demo 中要小心,看完之後要把它關得乾乾淨淨。

設定完畢後,就可以點擊 Create database (下圖#2)來建立資料庫。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951DDruF4sQQD.png

大概過了 20 幾分鐘後,Status 終於從 Modifying (下圖#1)變成 Available (下圖#2),便可以點進資料庫看細部資料(下圖#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/201009510f6ZKOooEb.png

進到資料庫詳細資訊頁面後,我們會注意到資料庫是在 us-east-2c 的 AZ (下圖#1),也就是 Primary instance 在 us-east-2c 的 AZ (下圖#1)。

而雖然介面上看不到,但 Standby instance 必然會在另一個 AZ,也就是在 us-east-2b。換句話說,我們能肯定已經有一個 Multi-AZ 的部署,Primary instance 在 us-east-2c (下圖#1),而 Standby instance 在 us-east-2b。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951CfpVkx2IYh.png

小結

在這一輪的實作中,建議大家可以空出一個下午或者是一個晚上,三到四個小時的時間來做我們 RDS 這一輪的實作演練,因為許多的創建過程一等就是 20 分鐘,而 RDS 的收費又相對地較高一點,所以務必要確保這一輪的演練完之後就得把所有的資源都清乾淨。

再來,我們就要透過 EC2 來連線使用這台 RDS Instance,一個工作上非常常見的用法狀況。

What's Next?

那麼明天,我們將接著看到「資料寶石:【Lab】RDS架構 建立自己的第一台雲端資料庫(下)」!


上一篇
Day 21 資料寶石:【Lab】RDS架構 建立自己的第一台雲端資料庫 (上)
下一篇
Day 23 資料寶石:【Lab】RDS架構 建立自己的第一台雲端資料庫 (下)
系列文
無限手套 AWS 版:掌控一切的 5 + 1 雲端必學主題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言