自 2025 年 11 月 1 日起,Amazon Redshift 將不再支援建立新的 Python UDFs。如果您想要使用 Python UDFs,請在該日期之前建立 UDFs。現有的 Python UDFs將繼續如常運作。如需詳細資訊,請參閱部落格文章
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
重新定位叢集
透過在 Amazon Redshift 中使用重新定位功能,您可以讓 Amazon Redshift 將叢集移至另一個可用區域 (AZ),而不會遺失任何資料或導致應用程式發生變更。透過重新定位,您可以在叢集上發生服務中斷時繼續操作,將所受影響降到最低。
開啟叢集重新定位時,Amazon Redshift 可能會在某些情況下選擇將叢集重新定位。特別是,當目前的可用區域中所發生的問題讓您無法達到最佳化的叢集操作,或是為了改善服務可用性,就會發生這種情況。如果指定可用區域中的資源限制會中斷叢集操作,您也可以叫用重新定位功能。其中一個範例是繼續執行叢集或調整叢集大小的能力。Amazon Redshift 提供重新定位功能,無需額外付費。
將 Amazon Redshift 叢集重新定位到新的可用區域時,新叢集的端點會與原始叢集的端點相同。您的應用程式可以重新連線到該端點並繼續操作,而不會修改或遺失資料。但是,由於指定可用區域中的資源可能有限制,因此不一定可以重新定位。
僅 RA3 執行個體類型支援 Amazon Redshift 叢集重新定位。RA3 執行個體類型會使用 Redshift 受管儲存 (RMS) 作為耐用儲存層。叢集資料的最新副本一律可在 AWS 區域中的其他可用區域中使用。換句話說,您可以將 Amazon Redshift 叢集重新定位到另一個可用區域,而不會遺失任何資料。
當您開啟叢集的重新定位功能時,Amazon Redshift 會將您的叢集遷移到代理後面。這樣做有助於實作與位置無關的叢集運算資源存取權。遷移會導致叢集重新開機。將叢集重新定位到另一個可用區域時,當新叢集在新的可用區域中重新上線時,會發生中斷情形。不過,您不需要對應用程式進行任何變更,因為即使在叢集重新定位至新的可用區域後,叢集端點仍會維持不變。
在子網路群組包含多個可用區域的新建立或還原的 RA3 叢集上,預設會啟用叢集重新定位。在建立佈建叢集時,Amazon Redshift 會指派 5439 作為預設連接埠。您可以變更為 5431 至 5455 或 8191 至 8215 之連接埠範圍內的其他連接埠。(請勿變更為範圍以外的連接埠。這會導致錯誤。) 若要變更佈建叢集的預設連接埠,請使用 Amazon Redshift 主控台 AWS CLI或 Amazon Redshift API。若要變更無伺服器工作群組的預設連接埠,請使用 AWS CLI 或 Amazon Redshift Serverless API。
如果您開啟重新定位,且目前使用領導節點 IP 地址來存取您的叢集或增強型 VPC 路由,請務必變更該存取。請改為使用與叢集的虛擬私有雲端 (VPC) 端點相關聯的 IP 地址。若要尋找此叢集的 IP 地址,請在叢集詳細資訊頁面的網路和安全區段中尋找並使用 VPC 端點。若要取得 VPC 端點的詳細資訊,請登入 Amazon VPC 主控台。
您也可以使用 AWS Command Line Interface (AWS CLI) 命令describe-vpc-endpoints
來取得與端點相關聯的彈性網路界面。您可以使用 describe-network-interfaces
命令來取得相關聯的 IP 地址。如需 Amazon Redshift AWS CLI 命令的詳細資訊,請參閱《 命令參考》中的可用AWS CLI 命令。
限制
使用 Amazon Redshift 重新定位功能時,請注意下列限制:
-
由於指定可用區域中的資源可能有限制,因此並非所有情況下都能進行叢集重新定位。如果發生這種情況,Amazon Redshift 不會變更原始叢集。
-
DC2 執行個體系列的 產品不支援重新定位。
-
您無法跨 AWS 區域執行重新定位。
-
Amazon Redshift 重新定位預設使用連接埠號碼 5439。您也可以變更為 5431-5455 或 8191-8215 之連接埠範圍內的其他連接埠。
使用主控台管理重新定位
您可以使用 Amazon Redshift 主控台來管理叢集重新定位的設定。
建立新叢集時關閉重新定位
使用下列程序在建立新叢集時關閉重新定位。
關閉新叢集的重新定位
登入 AWS Management Console ,並在 https://console.aws.amazon.com/redshiftv2/
:// 開啟 Amazon Redshift 主控台。 在導覽功能表上,選擇叢集。
選擇建立叢集以建立新叢集。如需如何建立叢集的詳細資訊,請參閱《Amazon Redshift 入門指南》中的 Amazon Redshift 佈建資料倉儲入門。
-
在備份下,針對叢集重新定位,選擇已停用。重新定位預設為開啟。
選擇 建立叢集。
修改現有叢集的重新定位
使用下列程序變更現有叢集的重新定位設定。
修改現有叢集的重新定位設定
-
登入 AWS Management Console ,並在 https://console.aws.amazon.com/redshiftv2/
:// 開啟 Amazon Redshift 主控台。 在導覽選單上,選擇叢集。系統會 AWS 列出目前區域中您帳戶的叢集。每個叢集的屬性子集會在清單中分欄顯示。
從清單中選擇您要修改之叢集的名稱。隨即會出現叢集詳細資訊頁面。
選擇維護索引標籤,然後在備份詳細資訊區段中選擇編輯。
在備份下,選擇已停用。重新定位預設為開啟。
選擇修改叢集。
重新定位叢集
使用下列程序將叢集手動重新定位到其他可用區域。當您要測試次要可用區域中的網路設定,或當您在目前的可用區域中即將遇到資源限制時,此功能特別有用。
將叢集重新定位到其他可用區域
-
登入 AWS Management Console ,並在 https://console.aws.amazon.com/redshiftv2/
:// 開啟 Amazon Redshift 主控台。 在導覽選單上,選擇叢集。系統會 AWS 列出目前區域中您帳戶的叢集。每個叢集的屬性子集會在清單中分欄顯示。
從清單中選擇您要移動之叢集的名稱。隨即會出現叢集詳細資訊頁面。
針對動作,選擇重新定位。重新定位叢集頁面隨即出現。
-
(選擇性) 選擇可用區域。如果您未選擇可用區域,Amazon Redshift 會為您選擇。
Amazon Redshift 會啟動重新定位功能,並將叢集顯示為正在重新定位。重新定位完成後,叢集狀態會變更為「可用」。
使用 Amazon Redshift CLI 管理重新定位
您可以使用 AWS 命令列介面 (CLI) 管理叢集重新定位的設定。
使用 AWS CLI,下列範例命令會建立名為 mycluster
且已開啟重新定位的 Amazon Redshift 叢集。
aws redshift create-cluster --cluster-identifier mycluster --number-of-nodes 2 --master-username
enter a username
--master-user-passwordenter a password
--node-type ra3.4xlarge --port 5439 --no-availability-zone-relocation
如果您目前的叢集使用不同的連接埠,您必須先將其修改為使用 5431-5455 或 8191-8215 的連接埠範圍,然後再將其修改為開啟重新定位。預設值為 5439。下列範例命令會修改連接埠,以防您的叢集未使用指定範圍中的連接埠。
aws redshift modify-cluster --cluster-identifier mycluster --port 5439
下列範例命令包含 Amazon Redshift 叢集上的 availability-zone-relocation 參數。
aws redshift modify-cluster --cluster-identifier mycluster --availability-zone-relocation
下列範例命令會關閉 Amazon Redshift 叢集上的 availability-zone-relocation 參數。
aws redshift modify-cluster --cluster-identifier mycluster --no-availability-zone-relocation
下列範例命令會叫用 Amazon Redshift 叢集上的重新定位。
aws redshift modify-cluster --cluster-identifier mycluster --availability-zone us-east-1b