您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件。 資訊
問題
包含數據分析資料的 Postgres 伺服器已用盡磁碟空間。
在以下範例中,您可以看到磁碟 /u01 已填滿 90% (176 GB/207 GB) 的磁碟空間。
$df -g Filesystem Size User Avail Use% Mounted on /dev/mapper/sysvg-syslv09 207G 176G 176G 21G 90% /u01
錯誤訊息
除非 Postgres 伺服器中的磁碟空間已完全填滿,否則您可能不會看到任何錯誤訊息。
可能原因
下表列出這個問題的可能原因:
原因 | 適用於 |
---|---|
磁碟空間不足 | Edge Private Cloud 使用者 |
缺少 Analytics (分析) 資料修剪 | Edge Private Cloud 使用者 |
磁碟空間不足
診斷
造成 Postgres Server 上的磁碟空間出錯的原因之一,就是您的磁碟空間不足,無法儲存大量的分析資料。下列步驟可協助您判斷磁碟空間是否充足,並採取適當行動解決問題。
- 查看 Analytics (分析) Proxy 效能資訊主頁,確定傳入的 API 流量速率。
顯示平均 TPS 的 Proxy 效能範例
- 請考量下列情境:
- 貴機構傳入的 API 流量為 22 TPS (每秒交易次數)。
- 換句話說,API 流量為每天 1,900,800 筆交易 (22 * 60 * 60 * 24)。
- 請注意,Analytics (分析) 中的每筆交易/訊息大小為 1.5,000 個位元組。
- 因此,每天會產生 2.7 GB 的 Analytics (分析) 資料 (1, 900,800 * 1.5,000)。
- 您必須在 Postgres 伺服器上保留 30 天的 Analytics (分析) 資料以供參考。
- 第 30 天產生的總資料為 81 GB (2.7 GB * 30)
- 因此,若要以 22 TPS 的流量速率儲存 30 天的 Analytics (分析) 資料,則需要有 150 GB 的磁碟空間。
- 81 GB (Analytics (分析) 資料) + 50 GB (其他資料,如記錄檔等) + 20 GB (額外的緩衝區空間) = 150 GB。
- 貴機構傳入的 API 流量為 22 TPS (每秒交易次數)。
- 如果系統上的磁碟空間不足 (如上述範例所示),儲存空間不足 150 GB (如上述範例所示),則磁碟空間不足,無法儲存 Analytics (分析) 資料。
解析度
為 Postgres 伺服器裝置新增足夠的磁碟空間。
沒有 Analytics (分析) 資料修剪
診斷
隨著 Edge 的 API 流量增加,儲存在 Postgres 資料庫的分析資料數量也會增加。可儲存在 Postgres 資料庫的分析資料量受限於系統可用的磁碟空間大小。
因此,如果您未採取下列任一動作,就無法繼續在 Postgres 資料庫中儲存其他數據分析資料:
-
新增更多磁碟空間。
這並非可擴充的選項,因為我們無法持續增加磁碟空間,因為這個做法有限且費用昂貴。
-
縮減資料保留時間超過必要的保留期限。
建議您採用這個解決方案,確保定期移除不需要的資料。
如果您未定期以手動方式或使用 Cron 工作修剪資料,那麼數據分析資料量會持續增加,最後可能導致系統耗盡磁碟空間。
解析度
如何修除超過所需保留期限的資料:
- 決定保留間隔,也就是您想在 Postgres 資料庫中保留 Analytics (分析) 資料的時間長度。
- 執行下列指令,修剪特定機構和環境的資料:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge org env number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Skip-confirmation-prompt - N/Y]
這個指令碼提供以下選項:
Delete-from-parent-fact
預設值:否。系統不會一併刪除父項資訊表的保留期限之前的資料。Skip-confirmation-prompt
。預設值:否。如果沒有,指令碼會先提示確認,然後再刪除父項資料。如果清除指令碼已自動化,請設為「是」。
詳情請參閱「縮減 Analytics (分析) 資料」一文。
如果問題持續發生,請與 Apigee Edge 支援團隊聯絡。