Amazon-Ec2

AWS RDS db.t2 實例性能門檻值和監控

  • November 20, 2015

我們一直在為 Drupal 和 WordPress 等主流 CMS 軟體推出標準 Web 伺服器配置,伺服器和儲存在 EC2 / EBS 上,這些軟體包的數據庫在 RDS / MySQL 上。

通常我們使用t2.micro CPU 和db.t2.micro DB投入生產,這讓客戶對我們和 AWS 感到滿意,因為他們通常可以在第一年保持免費套餐。EC2 上的預設監控工具會清楚地顯示我們何時可能超出 Web 主機最寶貴的資源,即CPU 使用率。如果門檻值接近或超過 10%,那麼我們知道是時候遷移到t2.small實例類型了。

我們不太確定如何確定何時需要從db.t2.micro升級到db.t2.small甚至更高版本。這些要求不涉及多可用區或只讀副本,只是 CMS 軟體在高峰期可能嚴重依賴數據庫的情況,我們需要通過圖表或警報來發現這些情況。

EC2 實例的文件清楚地表明了它們自己的限制是什麼,我想知道對於我們的簡單案例是否可以推薦 RDS 實例的任何此類限制。他們的 Amazon RDS 最佳實踐中的一般要求很有幫助,儘管我沒有遵循所有連結,因為我只是試圖設置我們可以設置的門檻值,這些門檻值將明確要求以我不熟悉的方式升級數據庫實例技術客戶可以理解和觀察。

我承認我不是 DBA;由於我的工作性質,我將數據庫架構留給了 CMS 軟體的設計者。如果有人告訴我從哪裡開始,因為它與 AWS 平台上的此配置相關,我當然願意學習性能評估的基礎知識。也許我只是還沒有找到合適的官方文件或教程。

或者:根據我們在 CloudWatch 上看到的情況,我們只需要知道如何定量測量訪問 RDS 實例的任何延遲是否是由於實例大小太小(或者可能是 MySQL 資源參數設置太低)造成的。

簡單地說,我可以判斷 CloudWatch 指標Freeable Memory是否接近於零,那麼我們將需要升級實例。與我們的 EC2 實例一樣,最大CPU 使用率也必須有一個我猜這將遠低於 100%,儘管我再次沒有看到像 EC2 那樣記錄在案。我想DB Connections會有一個實際的最大值。最後,我希望有人能告訴我如何解釋寫入 IOPS 和讀取 IOPS,以及它們是否會對像我們這樣的小型配置施加性能限制,或者它們是否僅用於計算成本。

ps,我嘗試在AWS 論壇上發布此內容:Amazon Relational Database Service,但Post New Thread連結目前會產生“重定向循環”。(抱歉,我不能在此處包含更多 URL,但我不允許。)

**$$ edit, response to comment $$**謝謝@Ross,我不知道RDS 上也可以使用CPUCreditBalance(我在 EC2 上看到過);沒有看到第二個螢幕還有 7 個指標,所有 17 個指標都可以從列表中選擇。我仍然想知道根據 RDS 實例類型,可能會對除 CPU 以外的可監控資源施加哪些限制,尤其是 I/O 活動。

pps,我在 AWS 論壇上進一步提煉了一些問題並發布了(如何確定 RDS T2 實例的大小是否與 CloudWatch 統計數據相符?

在過去的幾個月裡,我對此有一些看法,我相信這些值得關注的項目將解決上述所有問題:

1)@Ross 對原始文章的評論是關鍵。T2 實例,無論其規模如何,無論它們是 EC2 還是 RDS,都會在其 CPU 積分用完時停止執行,因為峰值 CPU 需求仍在繼續。

  1. 我們最常看到的 CMS Web 伺服器的故障模式正是通過這種情況顯示的:當httpd程序所需的 CPU 百分比超過分配給該實例類型的 CPU 百分比時,CloudWatch 圖表會下降到零(請參閱下面的文件連結) .

3)T2實例CPU積分耗盡的快速解決方案是關閉,升級實例類型,然後重新啟動實例,大約需要3-4分鐘。不同實例類型容量的最重要描述在這裡:http ://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-instances.html

  1. AWS 上的任何生產網路伺服器都必須預先分配一個彈性 IP 地址,因為這個原因:如果沒有,並且實例被重新調整,IP 地址將會改變,使網路伺服器無法訪問,遠遠超出原本只有 3- 4分鐘的停機時間。

5)獲得更多CPU積分的唯一方法是升級機器類型。每個 T2 實例大小可以容納的積分數量在上面的文件連結中進行了描述:它始終等於實例類型在 24 小時內完成的 CPU 工作。

  1. 在峰值性能需求下降後,機器可以在一段預定的停機時間(同樣是 3-4 分鐘)內恢復到原來的規模。

  2. 到目前為止,I/O 活動在任何高峰期都沒有對我們的 Web 伺服器造成任何性能下降。IOPS 的數量嚴格由 EBS 卷大小決定。IOPS 的確切含義和這種關係在此處進行了描述:http: //docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-io-characteristics.html

  3. Cloud Watch 指標Freeable MemoryDB Connections都無法預測或糾正 Web 伺服器密集型環境中的性能問題。

引用自:https://serverfault.com/questions/702046