遷移到您的Amazon RDS實體
在某些時候,您的應用程式需求可能需要在 Amazon Lightsail中找不到的功能,幸運的是,將應用程式的一個或所有部分移動到其他AWS服務中非常簡單
您將資料庫組件從 Amazon Lightsail遷移到 Amazon RDS
要遷移資料庫,您需要:
①將Amazon Lightsail VPC的IP地址范圍(無類別域間路由或CIDR,范圍)添加到Amazon RDS安全組
②在Amazon Lightsail中啟用VPC
③將您的資料從 Amazon Lightsail資料庫遷移到 Amazon RDSA資料庫
此程序將為前端在 Amazon Lightsail 實體上運行的體系結構,但該資料現在由 Amazon RDS管理

一、修改您的Amazon RDS安全組
1、修改您的Amazon RDS安全組:
將資料庫組件遷移到 Amazon RDSE的第一步是確保允許來自 Amazon Lightsail VPC 的流量到達Amazon RDS,通過將 Amazon Lightsail VPC的IP地址范圍(172.26.0.0/16)現有 Amazon RDS安全組來完成此步驟,
2、進入Amazon RDS資料庫界面:
https://console.aws.amazon.com/rds/home#databases:
請確保您在之前部署實驗室資源的同一區域中操作
3、從資料庫串列中,單擊 “task-db”,請確保其狀態為 “可用(Available)”,否則以下操作均無效

4、在“連接和安全”的選項卡上,單擊您的 “VPC安全組”

5、單擊“入站選項卡”:
6、單擊“編輯”

7、單擊“添加規則”,然后進行配置
示例:
①鍵入:MYSQL/Aurora
②來源:定制:172.26.0.0/16

8、單擊 “保存”
二、啟用VPC對等
下一步是確保 Lightsail VPC可以與您的默認 AWS VPC進行通信,默認情況下,AWS中的服務無法訪問在 Amazon Lightsail中運行的服務(反之亦然),但是,可以通過使用稱為VPC對等的功能來解決這種情況,VPC對等使某些AWS服務可以與 Amazon lightsail資源進行通信(在這種情況下, Amazon RDS資料庫將與在Amazon Lightsail實體上運行的Web前端進行通信),
1、進入Amazon Lightsail賬戶設定界面:
https://lightsail.aws.amazon.com/ls/webapp/account/profile
2、從水平選單中,單擊“Advanced(高級)”
向下滾動到 “VPC對等”部分
在部署Lightsail資源的區域旁邊,選擇 “啟用VPC對等”

三、重新配置資料庫連接:
在此任務中,您將再次更新應用程式組態檔(config.php)以指向Amazon RDS資料庫
由于您當前的 Lightsail實體都在負載均衡器下運行,因此僅將其中一些實體重新配置為指向 Amazon RDS資料庫是不明智的,這樣做可能會導致負載均衡器顯示連接lightsail資料庫的一些前端以及連接到 Amazon RDS資料庫的其他前端.
要避免這種情況,您將基于現有的快照部署新的PHP前端實體,然后修改實體:
1、進入Amazon Lightsail快照界面:
https://lightsail.aws.amazon.com/ls/webapp/home/snapshots
2、PHP-fe-1旁邊:
①點擊 > 實體快照
②點擊
③單擊“創建新實體”
3、命令實體:PHP-fe-rds
4、滾動到螢屏底部,單擊”
”
請注意,實體創建成功后,您就可用使用新勢力,可用將組態檔重新配置為指向Amazon RDS資料庫
5、一旦您的PHP-fe-rds實體可用,請使用SSH對其進行連接
6、進入Amazon RDS資料庫界面
請確保之前部署的資源在同一區域中
7、從資料庫串列中,單擊您之前按創建的Amazon RDS資料庫名稱(此資料庫的名字為之前創建的 “task-db”)以訪問資料庫詳細資訊界面
8、從“連接和安全”選項卡中,將 “endpoint(端點)”復制
該端點類似于:tasks-db.cdihowyzznav.us-west-2.rds.amazonas.com
9、回傳php-fe-rds實體的SSH會話界面
10、創建環境變數(RDS_ENDPOINT)以保存RDS資料庫端點的值:
①粘貼” RDS_ENDPOINT='RDSENDPOINT' “
②用之前的資料庫端點替換RDSENDPOINT

11、設定默認用戶名(dbmasteruser)的環境變數和您之前創建的密碼(taskstasks)
RDS_username=dbmasteruser && RDS_PASSWORD=taskstasks
12、驗證環境變數是否設定正確,(以下命令的輸出應與您為RDS端點設定的值,RDS用戶名和RDS密碼匹配):
echo "Endpoint = "$RDS_ENDPOINT && echo "username = "$RDS_username && echo "Password = "$RDS_PASSWORD
13、創建一個指向Amazon RDS資料庫的新組態檔:
**
cat /opt/bitnami/apache2/configs/config.php.bak | \
sed "s/<endpoint>/$RDS_ENDPOINT/; \
s/<username>/$RDS_username/; \
s/<password>/$RDS_PASSWORD/;" \
> /opt/bitnami/apache2/configs/config.php.rds_db
**
14、通過將現有的config.php替換為指向Amazon RDS資料庫的新創建的版本來激活配置:
cp /opt/bitnami/apache2/configs/config.php.rds_db /opt/bitnami/apache2/configs/config.php
15、驗證是否已修改活動組態檔,以下命令的值應與Amazon RDS端點,用戶名和密碼的值相匹配:
cat /opt/bitnami/apache2/configs/config.php
16、在新的瀏覽器選項卡中:
①輸入:
http://php-fe-rds/install.php
②將php-fe-rds替換為新的實體的公有IP地址

把Amazon Lightsail資料庫中的資料遷移到Amazon RDS資料庫中,這是通過使用幾乎完全相同的程序完成的,該程序用于將本地MySQL資料庫遷移到Amazon Lightsail資料庫
17、在SSH視窗中創建一個(LS_ENDPOINT)的環境變數,已通過以下方式保存資料庫端點的值:
①粘貼:LS_ENDPOINT='MYENDPOINT'
②將MYENDPOINT 替換為Lightsail資料庫的端點
18、設定默認用戶名(dbmasteruser)的環境變數和之前創建的密碼(taskstasks)
LS_username=dbmasteruser && LS_PASSWORD=taskstasks
19、檢查以確保正確設定環境變數(以下命令的輸出應與您為LS端點設定的值,用戶名和密碼匹配)
echo "Endpoint = "$LS_ENDPOINT && echo "username = "$LS_username && echo "Password = "$RDS_PASSWORD
20、鍵入以下命令將資料庫匯出到檔案(tasks.sql)
**
mysqldump -u $LS_username \
--host $LS_ENDPOINT \
--databases tasks \
--single-transaction \
--compress \
--order-by-primary \
--set-gtid-purged=OFF \
-p$LS_PASSWORD > tasks.sql
**
21、通過MySQL命令列工具訪問您的Amazon RDS實體
**
mysql -u $RDS_username \
--port=3306 \
--host=$RDS_ENDPOINT \
-p$RDS_PASSWORD
**
22、將之前創建的資料庫轉儲檔案匯入MySQL
source tasks.sql;
23、在瀏覽器選項卡中
①http://php-fe-rds
②將php-fe-rds替換為新的實體的公有IP地址
您應該可用看到您最初創建的任務現在存在于由Amazon RDS管理的資料庫中
從這一點開始,您可用重復此步驟并從php-fe-rds實體創建新快照,從該新快照部署2個實體,并用您的三個新勢力替換負載均衡其中的現有實體使用Amazon RDS
此程序將為您提供在Amazon Lightsail中運行的冗余Web前端,資料庫在Amazon RDS中運行,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/51592.html
標籤:其他
上一篇:計算機網路中
