Ongoing service disruptions
For the most recent update on ongoing service disruptions affecting the AWS Middle East (UAE) Region (ME-CENTRAL-1), refer to the AWS Health Dashboard. For information on AWS Service migration, see How do I migrate my services to another region?
如何將我的 RHEL BYOL EC2 執行個體授權遷移到 RHUI 授權?
我有一個 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體,它執行帶有自備授權 (BYOL) 的 Red Hat Enterprise Linux (RHEL)。我想將其遷移到使用 Red Hat Update Infrastructure (RHUI) 來進行更新和修補。
解決方案
**重要:**在停止和啟動執行個體之前,請執行下列動作:
- 建立 Amazon Elastic Block Store (Amazon EBS) 磁碟區的快照。
**注意:**如果您的執行個體是執行個體儲存體備份,或具有包含資料的執行個體儲存體磁碟區,則當您停止執行個體時,Amazon EC2 會刪除該資料。 - 完成解決步驟後,暫時從其 Amazon EC2 Auto Scaling 群組中移除執行個體。
**注意:**如果您停止 Amazon EC2 Auto Scaling 群組中的某個執行個體,則根據您的縮減保護設定,該執行個體可能會終止。您使用 Amazon EMR、AWS CloudFormation 或 AWS Elastic Beanstalk 啟動的執行個體,可能位於 Auto Scaling 群組中。 - 將執行個體關閉行為設定為停止,以確保執行個體在您停止時不會終止。
**注意:**當您停止和啟動執行個體時,該執行個體的公有 IP 位址也會變更。最佳做法是使用彈性 IP 位址而不是公用 IP 位址,將外部流量路由到執行個體。如果您使用 Amazon Route 53,則可能需要在公有 IP 位址變更時更新 Route 53 DNS 記錄。
若要將您的執行個體移轉到 RHUI 授權,請完成以下步驟:
-
如果您在執行個體上使用 Proxy,請停用執行個體中繼資料服務 (IMDS) IP 位址的 Proxy。
-
若要確定您的執行個體是否使用 BYOL 或 AWS 授權,請根據您的 IMDS 版本執行下列命令:
IMDSV1:curl http://169.254.169.254/latest/dynamic/instance-identity/document 2>/dev/null | grep billingProductsIMDSV2:
curl --noproxy '*' -w "\n" -s \ -H "X-aws-ec2-metadata-token: \ $(curl --noproxy '*' -s -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 300")" \ http://169.254.169.254/latest/dynamic/instance-identity/document \ | grep billingProducts輸出範例:
$ curl http://169.254.169.254/latest/dynamic/instance-identity/document 2>/dev/null | grep billingProducts "billingProducts" : null,**注意:**如果 billingProducts 為 null,則該執行個體使用 BYOL。
-
使用 AWS Marketplace Amazon Machine Image (AMI) 啟動新的 RHEL 執行個體,其 RHEL 版本與原始執行個體相同。請務必使用與原始執行個體相同的可用區域,然後選擇類似的執行個體類型。
-
執行下列命令以檢查執行個體的帳單代碼,然後確認新執行個體是否使用 RHUI:
curl http://169.254.169.254/latest/dynamic/instance-identity/document 2>/dev/null | grep billingProducts "billingProducts" : [ "bp-6fa54006" ], -
執行下列命令以確認新執行個體是否已安裝 RHUI 用戶端套件:
sudo rpm -qa | grep rhui輸出範例:
$ sudo rpm -qa | grep rhui rh-amazon-rhui-client-4.0.4-1.el8.noarch -
執行下列其中一個命令,在新執行個體上下載但不安裝 RHUI 用戶端套件的 RPM 檔案:
sudo yum install --downloadonly --downloaddir=/tmp rh-amazon-rhui-client -y-或-
sudo yumdownloader --downloaddir=/tmp rh-amazon-rhui-client -
執行以下命令,確認您是否在新執行個體上正確下載了 RPM 套件:
ls -l /tmp | grep rh-amazon-rhui-client -rw-r--r--. 1 root root 43680 Mar 4 19:42 rh-amazon-rhui-client-4.0.5-1.el8.noarch.rpm -
執行下列其中一個命令,將 RHUI 用戶端 RPM 檔案從新執行個體複製到原始執行個體:
scp /tmp/rh-amazon-rhui-client-*.rpm ec2-user@BYOL-instance-ip:/tmp/-或-
rsync -avz /tmp/rh-amazon-rhui-client-*.rpm ec2-user@BYOL-instance-ip:/tmp/ -
執行以下命令從原始執行個體中移除現有的 RHUI 組態和套件:
sudo yum remove $(rpm -qa | grep rhui) -y -
執行以下命令,使用複製的 RPM 檔案在原始執行個體上安裝 RHUI 用戶端:
sudo yum install /tmp/rh-amazon-rhui-client-*.rpm -y
- 執行以下命令,確認您是否在原始執行個體上正確安裝了該套件:
sudo rpm -qa | grep rhui
- 開啟 Amazon EC2 主控台,然後記下原始執行個體的網路組態,例如 IP 位址、彈性 IP 位址和安全群組。您可能需要在新執行個體中建立這些設定。
- 停止新的、原始的執行個體。
- 從兩個執行個體分離所有 Amazon EBS 磁碟區。記下原始執行個體上每個磁碟區的裝置名稱或 ID。
- 將原始執行個體的磁碟區附加到新執行個體。
**注意:**使用與原始執行個體上的磁碟區相同的裝置名稱: - 啟動新執行個體。
- 連線到新的執行個體,然後執行以下命令來確認是否可以取得計費代碼:
curl http://169.254.169.254/latest/dynamic/instance-identity/document 2>/dev/null | grep billingProducts "billingProducts" : [ "bp-6fa54006" ],
- 執行以下命令以確認儲存庫組態是否正確:
sudo yum clean all sudo yum repolist
- 如果您不再需要原始執行個體的分離磁碟區,請將其刪除。您可以在確認更新時將其保留為備份。
對問題進行疑難排解
如果交換磁碟區後執行個體無法啟動,請確認是否將磁碟區附加到正確的裝置名稱。如果仍然遇到問題,請建立根磁碟區的快照,然後重複解決步驟。
如果您無法存取儲存庫,請執行以下命令來確認您是否安裝了 RHUI 用戶端:
rpm -qa | grep rhui
另外,請檢查您與中繼資料伺服器的網路連線。
相關資訊
使用 AWS Application Migration Service 將 RHEL BYOL 系統遷移到包含 AWS 授權的執行個體
相關內容
- 已提問 3 年前
- 已提問 2 年前
- 已提問 3 年前
