使用私人 IP 連線至 PostgreSQL 適用的 Cloud SQL 執行個體
本頁說明如何使用私人 IP 建立及連結 PostgreSQL 執行個體。假設您及時完成所有步驟 (包括清除作業),在本快速入門導覽課程中建立的資源通常不會超過一美元。
事前準備
-
In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.
-
Make sure that billing is enabled for your Trusted Cloud project.
-
啟用必要的 Google Cloud API。
控制台
前往 Trusted Cloud 控制台的「API」頁面。
啟用 Cloud SQL Admin API。啟用這項 API 後,您就能執行 Cloud SQL 驗證 Proxy。gcloud
按一下下列按鈕開啟 Cloud Shell,直接在瀏覽器中使用指令列存取 Trusted Cloud 資源。您可以使用 Cloud Shell 執行本快速入門導覽課程中的
gcloud
指令。使用 Cloud Shell 執行下列
gcloud services enable
指令,啟用本快速入門導覽課程所需的 API:gcloud services enable sqladmin.googleapis.com
這個指令會啟用下列 API:
- Cloud SQL Admin API。啟用這項 API 後,您就能執行 Cloud SQL 驗證 Proxy。
總覽
連線至具有私人 IP 位址的 Cloud SQL 執行個體時,連線方式會因來源位置而異。最重要的一點是,來源機器必須與 Cloud SQL 執行個體位於相同的虛擬私有雲網路。如果來源不在 Trusted Cloud 或不在同一個 Trusted Cloud 專案中,則必須設定連線,方式與本文所示不同。
在本快速入門導覽課程中,我們將透過最直接的路徑設定連線。來源和目標位於同一個 Trusted Cloud 專案和同一個虛擬私有雲網路。我們建立具有私人 IP 位址的 Cloud SQL 執行個體 (目標),以及 Compute Engine VM (來源)。我們會使用 VM 安裝並使用從 VM 連線至 Cloud SQL 執行個體所需的工具。
請執行下列動作:
- 建立使用私人 IP 位址的 Cloud SQL 執行個體。
找出並儲存執行個體的
connection name
,以供日後使用。 - 建立 Compute Engine VM。
- 開啟兩個與 Compute Engine VM 的 SSH 連線。
您將使用第一個視窗安裝 psql,並安裝及啟動 Cloud SQL 驗證 Proxy。接著,您會使用第二個視窗連線至 Cloud SQL 驗證 Proxy,藉此連線至 Cloud SQL 執行個體。
- 在 SSH 視窗 #1 中,執行下列操作:
- 安裝 psql 用戶端。
- 安裝 Cloud SQL 驗證 Proxy。
Cloud SQL 驗證 Proxy 可做為 psql 用戶端和 Cloud SQL 執行個體之間的連接器。
- 啟動 Cloud SQL 驗證 Proxy。
成功後,Cloud SQL 驗證 Proxy 會監聽連線要求。
- 在 SSH 視窗 #2 中,讓 psql 用戶端連線至 Cloud SQL 驗證 Proxy,連線至 Cloud SQL 執行個體。
成功後,您會在視窗中看到 psql 提示,並在執行 Cloud SQL 驗證 Proxy 的 SSH 視窗 #1 中,看到連線成功訊息。
- 清除所用資源。
建立使用私人 IP 位址的 Cloud SQL 執行個體
-
前往 Trusted Cloud 控制台的「Cloud SQL Instances」頁面。
- 點選「建立執行個體」。
- 按一下「Choose PostgreSQL」(選擇 PostgreSQL)。
- 如果系統提示您啟用 Compute API,請按一下「啟用 API」按鈕。
- 在「執行個體資訊」部分,輸入「執行個體 ID」的名稱。
- 輸入 postgres 使用者的密碼。記下您建立的密碼,因為後續步驟將會用到該密碼。
- 在「選擇區域和可用區供應情形」部分,選取「單一可用區」選項。
- 展開「Show configuration options」(顯示設定選項)。
- 展開「連線」。
- 清除「公開 IP」。
- 選取「私人 IP」。
- 選取「網路」下拉式選單中的「預設」。
- 如果您使用新專案,系統會顯示「需要私人服務連線」訊息。然後按照下列步驟操作:
- 按一下「設定連線」。
- 按一下「啟用 Service Networking API」。
- 在「Allocate an IP range」(分配 IP 範圍) 區段中,選取「Use an automatically allocated IP range」(使用系統自動分配的 IP 範圍)。
- 按一下「繼續」。
- 按一下「建立連線」,然後等待連線建立完成。
點選「建立執行個體」。
系統會將您帶往執行個體的「總覽」頁面。按一下新執行個體,查看詳細資料,包括私人 IP 位址。
在「連線至這個執行個體」部分,複製並儲存執行個體的「連線名稱」。connection name
的格式為 projectID:region:instanceID
。
您稍後啟動 Cloud SQL 驗證 Proxy 時會用到這個 connection name
。
建立資料庫
返回執行個體總覽頁面,然後選取「資料庫」選單項目。
- 選取 [Create database] (建立資料庫)。
- 在「Database name」(資料庫名稱) 欄位中輸入 DB_NAME。
- 點選「建立」。
稍後使用 Cloud SQL 驗證 Proxy 連線時,會用到這個 db_name
。
建立 Compute Engine VM
-
前往 Trusted Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
- 點選「建立執行個體」。
- 輸入執行個體的「名稱」。
- 在「存取權範圍」中,選取「允許所有 Cloud API 的完整存取權」。
- 按一下「建立」,然後等待 VM 建立完成。
開啟兩個與 Compute Engine VM 的 SSH 連線
我們會在 VM 中使用兩個視窗。第一個視窗用於安裝 psql 用戶端和 Cloud SQL 驗證 Proxy、取得執行個體連線名稱,以及使用這個名稱啟動 Proxy。第二個視窗用於透過 Proxy 連線至 Cloud SQL 執行個體。
- 在 Compute Engine VM 執行個體的「連線」欄中,展開「SSH」選單。
- 選取「在瀏覽器視窗中開啟」,開啟 SSH 視窗 #1。
視窗中的提示可能需要幾秒鐘才會顯示。
- 出現提示時,請輸入
pwd
,確認您位於/home/$USER
目錄。您將在這個視窗中安裝 psql 用戶端和 Cloud SQL 驗證 Proxy,並啟動 Cloud SQL 驗證 Proxy。
- 再次選取「在瀏覽器視窗中開啟」,開啟 SSH 視窗 #2。
您將使用這個視窗連線至 Cloud SQL 執行個體。
安裝 psql 用戶端
請使用 SSH 視窗 #1 執行這個步驟。
從套件管理員安裝 psql 用戶端:
sudo apt-get update sudo apt-get install postgresql-client
安裝 Cloud SQL 驗證 Proxy
請使用 SSH 視窗 #1 執行這個步驟。
- 安裝
wget
:sudo apt-get install wget
- 下載 Cloud SQL 驗證 Proxy:
wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.8.2/cloud-sql-proxy.linux.amd64 \ -O cloud-sql-proxy
- 將 Cloud SQL 驗證 Proxy 設為允許執行:
chmod +x cloud-sql-proxy
啟動 Cloud SQL 驗證 Proxy
請使用 SSH 視窗 #1 執行這個步驟。
啟動 Cloud SQL 驗證 Proxy,監控輸出內容。將 INSTANCE_CONNECTION_NAME
改成您建立 Cloud SQL 執行個體時複製的 connection name
。
./cloud-sql-proxy --private-ip INSTANCE_CONNECTION_NAME
Cloud SQL 驗證 Proxy 成功啟動後,SSH 視窗中會顯示類似下列內容的訊息:
Listening on 127.0.0.1:5432 for myInstance Ready for new connections
連線至 Cloud SQL 執行個體
請使用 SSH 視窗 #2 執行這個步驟。
執行下列指令,並將 DB_NAME 替換為 Cloud SQL 資料庫的名稱:
psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"
在「Enter password:」提示中,輸入 PostgreSQL 帳戶的密碼。
確認系統顯示 PostgreSQL 提示字元。您已使用 psql 用戶端連線至資料庫。
返回啟動 Cloud SQL 驗證 Proxy 的終端機視窗。畫面會顯示類似以下的訊息:
New connection for myInstance
清除所用資源
如要避免系統向您的 Trusted Cloud 帳戶收取本頁所用資源的費用,請按照下列步驟操作。
-
前往 Trusted Cloud 控制台的「Cloud SQL Instances」頁面。
- 選取
myinstance
執行個體,開啟「執行個體詳細資料」頁面。 - 在頁面頂端的圖示列中,按一下 [刪除]。
- 在「Delete instance」(刪除執行個體) 視窗中輸入執行個體名稱,然後按一下「Delete」(刪除)。
選用清除步驟
如果您未使用本快速入門導覽課程啟用的 API,可以停用這些 API。
- 本快速入門導覽課程中啟用的 API:
- Cloud SQL Admin API
前往 Trusted Cloud 控制台的「API」頁面。
選取 Cloud SQL Admin API,然後按一下「停用 API」按鈕。
前往 Trusted Cloud 控制台的「VM instances」(VM 執行個體) 頁面。
選取執行個體的名稱。
在「更多動作」選單中選取「刪除」。
後續步驟
您可以根據需求,進一步瞭解如何建立 Cloud SQL 執行個體。
您也可以瞭解如何為 Cloud SQL 執行個體建立 PostgreSQL 使用者和資料庫。
此外,您也可以瞭解如何從其他 Trusted Cloud 應用程式連線至 Cloud SQL 執行個體: