Get Hands-on with Amazon EKS - Workshop Event Series
Whether you're taking your first steps with Kubernetes or you're an experienced practitioner looking to sharpen your skills, our Amazon EKS workshop series delivers practical, real-world experience that moves you forward. Learn directly from AWS solutions architects and EKS specialists through hands-on sessions designed to build your confidence with Kubernetes. Register now and start building with Amazon EKS!
如何使用 ATOP 工具和 atopsar 工具,取得 EC2 Linux 執行個體中程序的歷史使用情況統計資料?
我想了解如何使用 ATOP 工具,監控 Amazon EC2 Linux 執行個體中執行程序的歷史資源使用情況,例如 CPU、記憶體和磁碟 I/O。我想取得有關安裝 ATOP 和分析日誌檔的說明。
簡短說明
ATOP 工具是一種效能監控工具,可記錄歷史資源使用情況以供日後分析。此工具也可提供即時報告。您可以擷取每個程序和執行緒的 CPU 使用率、記憶體消耗量和磁碟 I/O 的使用情況。ATOP 工具在記錄統計資料時,會以背景服務的形式保持作用中狀態。這有助於對伺服器執行長期分析,資料依預設會儲存 28 天。
**注意:**ATOP 只有在安裝完成後,才會開始記錄資料。您無法擷取 ATOP 安裝日期之前的歷史效能資料。
解決方法
安裝 ATOP
如需安裝指示,請參閱如何為執行 Amazon Linux、RHEL、CentOS 或 Ubuntu 的 EC2 執行個體設定 ATOP 監控和 SAR 監控工具?
建立 ATOP 報告日誌
ATOP 工具會在 /var/log/atop 建立日誌檔。這些檔案根據以下格式命名:atop_ccyymmdd。例如,atop_20210902 就是 2021 年 9 月 2 日的錄製檔。
若要存取日誌檔,請執行下列命令:
atop -r /var/log/atop/atop_ccyymmdd
將 atop_ccyymmdd 改成您要檢閱的日期。
請參閱下方的指令和日誌檔範例:
atop -r /var/log/atop/atop_20210902 ATOP - ip-172-20-139-91 2021/09/02 17:03:44 ---------------- 3h33m7s elapsed PRC | sys 6.51s | user 7.85s | #proc 103 | #tslpi 81 | #tslpu 0 | #zombie 0 | #exit 0 | CPU | sys 0% | user 3% | irq 0% | idle 197% | wait 0% | ipc notavail | curscal ?% | cpu | sys 0% | user 1% | irq 0% | idle 98% | cpu000 w 0% | ipc notavail | curscal ?% | cpu | sys 0% | user 1% | irq 0% | idle 98% | cpu001 w 0% | ipc notavail | curscal ?% |
在下方輸出範例中,第一個錄製的快照是在 2021 年 9 月 2 日 17:03:44。若要前往下一張快照,請按鍵盤上的 t 鍵 (小寫)。若要返回上一張快照,請按 T 鍵 (大寫)。若要分析特定時段,請按 b 鍵,然後輸入日期和時間。ATOP 工具會跳到 Enter new time 變數中指定的時間:
NET | lo ---- | pcki 2 | pcko 2 | sp 0 Mbps | si 0 Kbps | so 0 Kbps | erro 0 | Enter new time (format [YYYYMMDD]hhmm): PID TID RDDSK WRDSK WCANCL DSK CMD 1/4
若要檢視不同的統計資料,請按指定的快捷鍵。快速鍵範例如下:
- g: 一般資訊 (預設)。
- m: 記憶體詳細資訊。
- d: 磁碟詳細資訊。
- n: 網路詳細資訊。此鍵僅在安裝 netatop 核心模組時才起作用。
- c: 每個程序的完整命令列。
若要排序程序清單,請使用下列快速鍵:
- C: CPU 活動。
- M: 記憶體消耗量。
- D: 磁碟活動。
- N: 網路活動。此鍵僅在安裝 netatop 核心時才起作用。
- A: 最活躍的系統資源(自動模式)。
按 h 鍵可檢視說明文件。
建立特定時段的 ATOP 報告日誌
若要存取日誌檔並僅擷取特定時段的效能資料,請執行下列命令:
atop -r /var/log/atop/atop_ccyymmdd -b starttime -e endtime -M
將 atop_ccyymmdd 改成您要檢閱的日期。將 starttime 改成效能期間的開始時間,並將 endtime 改成結束時間。
例如,下列命令會傳回 2024 年 4 月 22 日 08:00 至 08:10 之間擷取的記憶體效能資料:
$ atop -r /var/log/atop/atop_20240422 -b 0800 -e 0810 -M
範例中使用的旗標:
- b:開始時間
- e:結束時間
- r:指定檔案
- M:記憶體
使用 ATOP 命令產生系統活動報告
您可以使用 atopsar 命令產生系統活動報告。
如果您使用旗標 -c,則會產生關於系統目前 CPU 使用率的報告。下列範例顯示了此報表的兩個結果,每個結果相隔一秒:
$ atopsar -c 1 2 ip-172-20-139-91 4.14.238-182.422.amzn2.x86_64 #1 SMP Tue Jul 20 20:35:54 UTC 2021 x86_64 2021/09/02 -------------------------- analysis date: 2021/09/02 -------------------------- 18:50:16 cpu %usr %nice %sys %irq %softirq %steal %guest %wait %idle _cpu_ 18:50:17 all 0 0 0 0 0 0 0 0 200 0 0 0 0 0 0 0 0 0 100 1 0 0 0 0 0 0 0 0 100 18:50:18 all 0 0 0 0 0 0 0 0 200 0 0 0 0 0 0 0 0 0 100 1 0 0 0 0 0 0 0 0 100
atopsar 命令可分析指定時間範圍內的資料。例如,若要產生當天從 13:00 (-b) 開始,並於 13:35 (-e) 結束的所有報告 (-A),請執行下列命令:
atopsar -A -b 13:00 -e 13:35
請將 atopsar 的標誌合併為單一命令,以擷取多個輸出。下列範例命令會查詢 CPU 使用率、程序 (或) 負載,以及程序和執行緒:
$ atopsar -cpP
範例輸出:
ip-172-31-89-231 6.1.84-99.169.amzn2023.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Apr 8 19:19:48 UTC 2024 x86_64 2024/04/22 -------------------------- analysis date: 2024/04/22 -------------------------- 07:59:27 cpu %usr %nice %sys %irq %softirq %steal %guest %wait %idle cpu 08:00:27 all 0 0 0 0 0 0 0 4 95 08:01:27 all 0 0 0 0 0 0 0 0 100 08:02:27 all 0 0 0 0 0 0 0 0 100 08:03:27 all 0 0 0 0 0 0 0 0 100 -------------------------- analysis date: 2024/04/22 -------------------------- 07:59:27 pswch/s devintr/s clones/s loadavg1 loadavg5 loadavg15 load 08:00:27 203 70 1.07 0.13 0.29 0.14 08:01:27 53 31 0.07 0.05 0.23 0.13 08:02:27 59 31 0.87 0.02 0.19 0.12 08:03:27 68 35 0.22 0.00 0.15 0.10 -------------------------- analysis date: 2024/04/22 -------------------------- 07:59:27 clones/s pexit/s curproc curzomb thrrun thrslpi thrslpu procthr 08:00:27 1.07 1.07 114 0 1 83 58 08:01:27 0.07 0.07 114 0 1 83 58 08:02:27 0.87 0.88 109 0 1 83 53 08:03:27 0.22 0.28 105 0 1 76 52
如需 ATOP 擷取和顯示之旗標及輸出值的詳細清單,請參閱 Linux 網站上的 atopsar。
相關資訊
為什麼我的 EC2 Linux 執行個體由於資源過度使用而沒有回應?
DigitalOcean 網站上的 Linux 的 ATOP 命令指南
相關內容
- 已提問 2 年前
- 已提問 2 年前
- 已提問 1 年前
AWS 官方已更新 2 年前