設定連線至 Amazon RDS for Oracle 來源的網路

本頁說明如何設定網路連線,以便透過資料庫移轉服務,將異質 Oracle 來源遷移至 AlloyDB for PostgreSQL。

您可以透過三種不同方法,為從 Amazon RDS for Oracle 來源進行的遷移作業,設定必要的網路連線:

如要進一步瞭解來源資料庫網路連線,請參閱「 來源網路方法總覽」。

設定 IP 許可清單連線

如要使用公開 IP 許可清單連線方式,請按照下列步驟操作:

  1. 在 AWS 管理主控台中,執行下列步驟:
    1. 確認來源 Amazon RDS 資料庫已設定為允許公開 IP 連線。
    2. 找出端點名稱和通訊埠號碼。建立連線設定檔時,您必須輸入這些值。

    如要進一步瞭解如何準備 Amazon RDS for Oracle 執行個體,請參閱 Amazon RDS 說明文件中的「 連線至 Oracle 資料庫執行個體」。

  2. 建立安全性群組,允許資料庫移轉服務傳送流量至 Amazon RDS VPC。請參閱「 建立安全性群組,提供虛擬私有雲中的 DB 執行個體存取權」。

    請務必允許您建立遷移作業的區域使用所有 資料庫移轉服務公開 IP 位址

  3. 稍後 建立來源連線設定檔時,請按照下列步驟操作:
    1. 在「定義連線詳細資料」部分,請使用執行個體的端點名稱做為來源資料庫 IP。
    2. 在「定義連線方式」專區中,選取「IP 許可清單」

透過轉送 SSH 通道設定連線

如要透過安全殼層 (SSH) 通道連線至來源資料庫,請按照下列步驟操作:

  1. 啟動 Amazon EC2 執行個體,做為專用的轉送 SSH 通道。請務必在與來源 Amazon RDS for Oracle 相同的 Amazon VPC 中設定。

    詳情請參閱 Amazon 說明文件中的「 開始使用 Amazon EC2」。

  2. 連線至 EC2 執行個體,並設定 SSH 通道。 請按照下列步驟操作:
    1. 為資料庫移轉服務建立專屬使用者帳戶,以便連線:
      adduser TUNNEL_ACCOUNT_USERNAME
    2. 限制資料庫遷移服務帳戶的 Shell 存取權,以提升安全性:
      usermod -s /usr/sbin/nologin TUNNEL_ACCOUNT_USERNAME
    3. 決定資料庫移轉服務連線至通道時要使用的驗證方法。

      您可以使用密碼,或產生 PEM 格式的 SSH 金鑰,之後建立來源連線設定檔時,即可將金鑰上傳至資料庫遷移服務。

      • 如要使用密碼,則無須進行任何額外設定。請記下您為 TUNNEL_ACCOUNT_USERNAME 帳戶建立的密碼。
      • 如要使用金鑰驗證,請產生私密/公開金鑰組。舉例來說,您可以使用 ssh-keygen 公用程式:
        1. 產生金鑰組:
              ssh-keygen -m PEM -f YOUR_KEY_NAME
              
        2. 將公開金鑰 (YOUR_KEY_NAME.pub) 複製到通道伺服器上的 ~/.ssh/ 目錄。
        3. 儲存私密金鑰。建立來源連線設定檔時,您稍後需要將這個檔案上傳至資料庫遷移服務。
    4. 編輯 /etc/ssh/sshd_config 檔案,設定轉接的安全殼層通道,以符合貴機構的需求。建議您使用下列設定:
      # Only allow the Database Migration Service user to connect.
      AllowUsers TUNNEL_ACCOUNT_USERNAME
      
      # Send keep-alive packets every 60 seconds to ensure that
      # the tunnel doesn't close during the migration
      ServerAliveInterval=60
      
      # Optional: Force key-based authentication
      PasswordAuthentication no
      
      # Enables Database Migration Service to connect from a different host
      PermitTunnel yes
      GatewayPorts yes
    5. 執行 ssh 指令來啟動通道。

      使用下列任何指令資料之前,請先替換以下項目:

      • TUNNEL_SERVER_SSH_PORT,其中包含伺服器監聽 SSH 連線的通訊埠號碼。
      • SOURCE_DATABASE_PRIVATE_IP,並使用來源資料庫的私人 IP 位址。SSH 伺服器必須能夠連線至該 IP。
      • SOURCE_DATABASE_PORT,並加上來源資料庫監聽連線的通訊埠編號。Oracle 的預設 TCP 連線通訊埠號碼為 1433
      • USERNAME,其中包含將執行通道的使用者帳戶名稱。這個帳戶與 TUNNEL_ACCOUNT_USERNAME不同。
      • TUNNEL_SERVER_PUBLIC_IP,並使用安全殼層通道伺服器的公開 IP。
      ssh -N -L \
      TUNNEL_SERVER_SSH_PORT:SOURCE_DATABASE_PRIVATE_IP:SOURCE_DATABASE_PORT \
      USERNAME@TUNNEL_SERVER_PUBLIC_IP
  3. 稍後 建立來源連線設定檔時,請按照下列步驟操作:
    1. 在「定義連線詳細資料」部分,請使用執行個體的端點名稱做為來源資料庫 IP。
    2. 在「定義連線方式」部分,選取「轉送 SSH 通道」
    3. 提供 SSH 伺服器的公開 IP 位址或主機名稱。
    4. 請提供您在通道伺服器上為 SSH 連線指定的通訊埠。
    5. 輸入您為資料庫移轉服務建立的使用者名稱,以便連線 (即 TUNNEL_ACCOUNT_USERNAME 的值)。
    6. 從「驗證方式」下拉式選單中,選取要搭配 TUNNEL_ACCOUNT_USERNAME 使用的驗證方式:
      • 如要使用使用者密碼,請選取「密碼」,然後在表單中輸入 TUNNEL_ACCOUNT_USERNAME 密碼。
      • 如果將 SSH 伺服器設定為使用金鑰驗證,請選取「私密/公開金鑰組」,然後上傳您使用 ssh-keygen 指令產生的私密金鑰

使用 Private Service Connect 介面設定私人連線

這種連線方法可讓您連線至來源資料庫的私人 IP,而不必耗用 虛擬私有雲對等互連配額。建議使用 Private Service Connect 介面進行私人 IP 連線。

如要使用這個方法,您必須在打算建立網路附件的相同虛擬私有雲網路中,設定 Cloud VPN 或 Cloud Interconnect。如果無法在 Cloud VPN 或 Cloud Interconnect 所在的虛擬私有雲網路中建立網路附件,您也需要在 Compute Engine 上建立反向 Proxy 虛擬機器 (VM),才能建立連線。

如果無法使用 Cloud VPN 或 Cloud Interconnect,建議改用 轉送 SSH 通道IP 允許清單連線方法。

如要使用 Private Service Connect 介面連線,請完成下列步驟:

  1. 透過 Cloud VPN 與 Amazon RDS for PostgreSQL 執行個體建立直接連線。

    詳情請參閱 Cloud VPN 說明文件中的「 在 Google Cloud 與 AWS 之間建立高可用性 VPN 連線」。

  2. 選用:如果無法在 Cloud VPN 所在的虛擬私有雲網路中建立網路附件,請在 Compute Engine 上建立 反向 Proxy 虛擬機器 (VM),轉送虛擬私有雲之間的連線。
  3. 在 Cloud VPN 所在的虛擬私有雲中建立網路連結。請按照下列步驟操作:
    1. 前往 Google Cloud 控制台的「Network attachments」(網路附件) 頁面。

      前往「網路附件」

    2. 按一下「Create network attachment」(建立網路連結)
    3. 輸入附件名稱。
    4. 從「Network」(網路) 選單中,選取來源所在的虛擬私有雲。
    5. 請使用您打算建立目的地資料庫的區域。

      資料庫移轉服務是完全區域性的產品,也就是說,與遷移作業相關的所有實體 (來源和目的地連線設定檔、遷移工作、目的地資料庫、轉換工作區) 都必須儲存在單一區域。

    6. 在「Subnetwork」(子網路) 選單中,選取至少有 6 個可用 IP 位址的子網路,供資料庫移轉服務使用 (即 /29 範圍)。
    7. 在「連線偏好設定」中,選取「接受所選專案的連線」

      稍後 建立私人連線設定時,資料庫移轉服務會自動將生產端專案新增至「已接受」專案清單

    8. 請勿新增「已接受專案」或「遭拒的專案」
    9. 按一下「Create network attachment」(建立網路連結)
  4. 在資料庫遷移服務中, 為 Private Service Connect 介面建立私人連線設定
  5. 稍後 建立來源連線設定檔時,請按照下列步驟操作:
    1. 在「定義連線詳細資料」部分, 輸入來源 Amazon RDS 執行個體的私人 IP。
    2. 在「定義連線方式」部分,選取「私人連線」
    3. 從下拉式選單中,選取您在上一個步驟中建立的私人連線設定。

透過虛擬私有雲對等互連設定私人連線

如要搭配使用私人連線與 Amazon RDS for Oracle 來源,您必須在同一個虛擬私有雲網路中設定 Cloud VPN 或 Cloud Interconnect,並打算為資料庫遷移服務建立私人連線設定。如果無法在 Cloud VPN 或 Cloud Interconnect 所在的虛擬私有雲網路中建立私人連線設定,您也需要在 Compute Engine 上建立反向 Proxy 虛擬機器 (VM),才能建立連線。

如果無法使用 Cloud VPN 或 Cloud Interconnect,建議改用 轉送 SSH 通道IP 允許清單連線方法。

如要透過虛擬私有雲對等互連和 Cloud VPN 使用私人連線,請按照下列步驟操作:

  1. 透過 Cloud VPN 與 Amazon RDS for PostgreSQL 執行個體建立直接連線。

    詳情請參閱 Cloud VPN 說明文件中的「 在 Google Cloud 與 AWS 之間建立高可用性 VPN 連線」。

  2. 選用:如果無法在 Cloud VPN 所在的虛擬私有雲網路中建立私人連線設定,請在 Compute Engine 上 建立反向 Proxy 虛擬機器 (VM),轉送虛擬私有雲之間的連線。
  3. 在資料庫遷移服務中, 建立私人連線設定,與 Cloud VPN 所在的虛擬私有雲網路對等互連。
  4. 稍後 建立來源連線設定檔時,請按照下列步驟操作:
    1. 在「定義連線詳細資料」部分, 輸入來源 Amazon RDS 執行個體的私人 IP。
    2. 在「定義連線方式」部分,選取「私人連線」
    3. 從下拉式選單中,選取您在上一個步驟中建立的私人連線設定。