在 Database Center 中使用評估功能,評估及測試資料庫建議對效能的影響,再將建議套用至實際執行環境的資料庫機群。
為評估建議,評估作業會執行下列作業:
複製資料庫執行個體。
對副本執行基準化模擬測試。
比較複製廣告活動的基準成效,以及套用建議設定變更後的成效。
支援的產品和建議
Database Center 評估僅適用於 PostgreSQL 適用的 Cloud SQL 執行個體。
您可以評估下列類型的建議:
運算資源擴充:評估將執行個體調整為具有更多 vCPU 或記憶體的機器類型,會造成哪些影響。
版本升級:評估從 Cloud SQL Enterprise 版遷移至 PostgreSQL 適用的 Cloud SQL Enterprise Plus 版,對效能造成的影響。詳情請參閱「將執行個體就地升級為 Cloud SQL Enterprise Plus 版本」。
啟用資料快取:分析啟用資料快取對延遲和輸送量的影響。
事前準備
執行建議評估前,請先確認你符合下列規定:
啟用 API:啟用下列 API:
- Cloud SQL Admin API (
sqladmin.googleapis.com) - Cloud Run Admin API (
run.googleapis.com) - Cloud Logging API (
logging.googleapis.com) - Gemini Cloud Assist API
(
geminicloudassist.googleapis.com) - Secret Manager API
(
secretmanager.googleapis.com) - Cloud Monitoring API (
monitoring.googleapis.com)
如要啟用 API,請參閱「啟用及停用 API」。
- Cloud SQL Admin API (
資料庫連線憑證:您必須提供目標資料庫名稱和資料庫使用者名稱。
Secret Manager 密鑰:您必須將資料庫使用者名稱的密碼儲存在全域 Secret Manager 密鑰中,並知道密鑰名稱,才能在密鑰挑選器中搜尋該密鑰。如果清單中未顯示密鑰,才需要提供完整密鑰路徑。如要進一步瞭解如何建立密鑰,請參閱「建立及存取密鑰」。
服務帳戶:為環境設定身分與存取權管理 (IAM) 服務帳戶,以便評估及比較基準效能與建議變更。這個服務帳戶需要權限,才能從 Secret Manager 讀取資料庫憑證密鑰,以及在 Cloud Run 中協調基準化工作。如要設定服務帳戶,請參閱「建立服務帳戶」。
IAM 權限:您必須具備必要的 IAM 權限,才能啟動及管理測試程序。詳情請參閱「必要 IAM 權限」。
評估最佳化建議
請按照下列步驟評估及測試建議:
前往 Google Cloud 控制台的「Database Center」(資料庫中心) 頁面。
按一下導覽選單中的「評估」。
找出 PostgreSQL 適用的 Cloud SQL 執行個體支援的建議。
在該建議的「影響」欄中,按一下「評估影響」。
如果尚未啟用必要的 API,請按照面板中的指引啟用。
在「評估詳細資料」頁面的設定面板中,輸入下列連線詳細資料:
在「Database」(資料庫) 中輸入資料庫名稱。有效選項對應至 Cloud SQL 執行個體「資料庫」頁面中列出的資料庫。
在「Username」(使用者名稱) 中輸入資料庫使用者名稱。
在「密碼密鑰」中,選取包含資料庫使用者密碼的 Secret Manager 密鑰。
如果清單中未顯示該 Secret,請以
projects/PROJECT_ID/secrets/SECRET_NAME格式手動輸入 Secret 路徑。將PROJECT_ID替換為專案 ID,並將SECRET_NAME替換為密鑰名稱。根據預設,Database Center 會使用最新版的 Secret。您可以選擇在路徑中附加/versions/VERSION,並將VERSION替換為 Secret 版本,藉此指定版本。在「服務帳戶」中,選取要用於執行基準化作業的服務帳戶。
按一下「生成測試計畫」。生成計畫需要幾分鐘的時間。
Database Center 會產生測試計畫預覽畫面,顯示複製資料庫、執行 pgbench 工作負載、套用建議及分析效能的步驟順序。
Database Center 生成計畫時,會在「Assessments」(評估) 頁面列出工作階段。您可以放心離開這個頁面,稍後再返回工作階段。
如要修正測試計畫,請在「測試說明」欄位中輸入說明 (例如
Change the benchmark duration to 60 seconds),然後按一下「更新測試計畫」。按一下「開始評估」。在確認對話方塊中,查看帳單通知。在專案中,佈建複製的執行個體和執行基準測試工作會產生費用。
評估工作階段的有效時間為 48 小時。 Database Center 會在評估完成後,自動刪除複製的執行個體。如果評估失敗,系統不會自動刪除複製的執行個體,您必須手動刪除。
按一下「確認」即可開始評估。評估程序需要一些時間才能完成。
Database Center 會顯示評估進度。工作階段在背景執行時,您可以放心離開頁面。
查看評估記錄和報表
追蹤評估工作階段,管理評估並查看成效比較報表。Database Center 會保留工作階段報表和中繼資料 48 小時,並顯示每個工作階段的到期倒數計時。
前往 Google Cloud 控制台的「Database Center」頁面。
在導覽選單中,按一下「評估」。
在工作階段清單中,按一下工作階段的「工作階段 ID」,即可查看詳細資料。
下表說明評估工作階段狀態、每個狀態顯示的資訊,以及可執行的動作:
狀態 顯示的資訊 可執行的動作 規劃階段 測試計畫詳細資料和預覽畫面。 使用「測試說明」 欄位修正測試計畫預覽畫面,或按一下「開始評估」開始評估。 評估階段 評估進度和評估使用的測試計畫。 按一下「取消」即可取消評估。 已完成 摘要:比較套用建議前後的資料庫效能。 無 已取消 取消評估前的進度。 無 產生作業失敗 無法生成測試計畫,您可以查看測試計畫詳細資料和設定欄位 (例如資料庫名稱和密碼名稱),然後重試產生測試計畫。 更新評估設定,例如資料庫名稱和使用者名稱,然後重試產生測試計畫。 評估失敗 無法評估建議,您可以查看錯誤訊息和評估失敗前的進度。 無
取消工作階段或清除失敗的工作階段
如果取消進行中的評估工作階段,或執行失敗,請確認所有暫時資源都已移除。由於 Database Center 無法在失敗或取消後確認清理作業是否成功,請檢查並刪除所有失敗和取消工作階段的剩餘資料庫複製執行個體。
取消課程:在「評估」頁面中,按一下要取消的評估作業課程 ID,然後按一下「取消」。如要取消工作階段,工作階段 ID 的狀態必須為「評估階段」。
清理複製的資源:
如要手動刪除複製的執行個體,請按照下列步驟操作:
前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。
在執行個體清單中,找出複製的執行個體。您可以使用工作階段詳細資料頁面顯示的資源連結,識別複製的項目。
按一下複製執行個體旁的「更多動作」圖示 more_vert,然後按一下「刪除」。
在確認對話方塊中輸入複製執行個體名稱,然後按一下「Delete」(刪除)。
必要 IAM 權限
您必須具備特定權限,才能啟動及管理測試程序。 如要取得這些權限,請指派預先定義的角色,或建立具有個別權限的自訂角色。
如要管理存取權及瞭解角色,請參閱「使用 IAM 控管存取權」。
終端使用者的權限
下表列出使用者帳戶需要的權限,以及包含這些權限的預先定義角色:
| 所需權限 | 預先定義的角色 |
|---|---|
cloudsql.instances.patchcloudsql.instances.clonecloudsql.instances.deletecloudsql.instances.getcloudsql.instances.createTestingAgentSessioncloudsql.instances.getAgentSessioncloudsql.instances.listAgentSessionscloudsql.instances.cancelAgentSession
|
roles/cloudsql.admin
|
run.jobs.createrun.jobs.run
|
roles/run.developer
|
logging.logEntries.list
|
roles/logging.viewer
|
secretmanager.secrets.list
|
roles/secretmanager.viewer
|
serviceusage.services.use
|
roles/serviceusage.serviceUsageConsumer
|
monitoring.monitoredResourceDescriptors.list (選填)
|
roles/monitoring.viewer 或 roles/viewer
|
如要在評估結果頁面查看圖表資料,使用者帳戶必須具備 monitoring.monitoredResourceDescriptors.list 權限。建議授予這項權限,但執行建議評估時並非必要。
啟動評估的使用者也必須具備所選服務帳戶的「服務帳戶使用者」角色 (roles/iam.serviceAccountUser) 或 iam.serviceAccounts.actAs 權限。
Cloud Run 服務帳戶的權限
下表列出 Cloud Run 作業使用的服務帳戶所需權限,以及包含這些權限的預先定義角色:
| 所需權限 | 預先定義的角色 |
|---|---|
cloudsql.instances.connect
|
roles/cloudsql.client
|
cloudsql.instances.login
|
roles/cloudsql.instanceUser
|
secretmanager.versions.access
|
roles/secretmanager.secretAccessor
|
限制
使用建議評估功能時,請注意下列限制:
僅供參考的報表:評估不會對正式版資料庫套用修改。如果對基準化結果感到滿意,請使用 PostgreSQL 適用的 Cloud SQL 控制台或 PostgreSQL 適用的 Cloud SQL API,手動套用建議。
48 小時後到期:資料庫中心只會在工作階段儲存空間保留工作階段報表和中繼資料 48 小時,之後就會刪除。
單一使用者隔離:只有建立驗證工作階段的使用者可以查看。專案中的其他負責人無法查看您的工作階段記錄或結果。
全域密鑰位置:包含資料庫密碼的 Secret Manager 密鑰必須是全域密鑰。系統不支援區域性密鑰。
帳單
評估建議時,您使用的資源會產生費用。系統會在專案中建立資料庫執行個體的副本,您需要為這個副本付費。Database Center 會在評估完成後自動刪除副本。如果評估失敗或取消,您必須手動刪除複製內容,以免持續產生費用。
此外,資料庫代理程式會使用其他 Google Cloud 基礎架構,可能產生費用,包括:
- Cloud SQL:適用於複製的執行個體。詳情請參閱「Cloud SQL 定價」。
- Cloud Run:執行評估代理程式。詳情請參閱「Cloud Run 定價」一文。
- 其他服務:用於協調評估的其他服務會產生少量費用。
您只需為評估作業的執行時間付費。
後續步驟
瞭解如何查看及篩選健康狀態問題和建議。
瞭解如何自訂資料庫機群檢視畫面。