跳至內容

如何為執行 Amazon Linux、RHEL、CentOS 或 Ubuntu 的 EC2 執行個體設定 ATOP 監控和 SAR 監控工具?

5 分的閱讀內容
0

我擁有執行 Amazon Linux、Red Hat Enterprise Linux (RHEL)、CentOS 或 Ubuntu 的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。我想設定 ATOP 和 SAR 監控工具,以收集有關程序使用情況的詳細資料。

簡短說明

標準 Amazon Machine Image (AMI) 上未設定 ATOP 和 SAR 監控工具。但是,您可以在以 Amazon Linux、RHEL、CentOS、SUSE Linux Enterprise Server (SLES) 或 Ubuntu Linux 為基礎的發行版上安裝監控工具。

根據預設,ATOP 和 SAR 監控工具會以 10 分鐘間隔收集指標,並保留歷史記錄 30 天。若要收集更精細的資料,您可以將收集時間重新設定為每 1 分鐘一次。

解決方法

根據您發行版執行的作業系統 (OS) 安裝 ATOP 和 SAR 監控。

AL2023

Amazon Linux 2023 (AL2023) 預設包含 sysstat 套件。如果您的系統沒有 sysstat 套件,請完成以下步驟:

  1. 若要安裝監控工具,請執行以下命令:

    sudo yum -y install sysstat atop
  2. 若要變更日誌收集間隔,請執行以下命令:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/sysconfig/atop
    sudo mkdir -v /etc/systemd/system/sysstat-collect.timer.d/
    sudo bash -c "sed -e 's|every 10 minutes|every 1 minute|g' -e '/^OnCalendar=/ s|/10$|/1|' /usr/lib/systemd/system/sysstat-collect.timer > /etc/systemd/system/sysstat-collect.timer.d/override.conf"
    sudo sed -i 's|^SADC_OPTIONS=.*|SADC_OPTIONS=" -S XALL"|' /etc/sysconfig/sysstat
  3. 若要啟用和重新啟動服務,請執行以下命令:

    sudo systemctl enable atop.service sysstat.service
    sudo systemctl restart atop.service sysstat.service

AL2

若要在 Amazon Linux 2 (AL2) 上安裝 ATOP 和 SAR 監控工具,請完成下列步驟:

  1. 若要安裝 RHEL 7 的 Extra Packages for Linux (EPEL) 發行套件,請執行以下命令:

    sudo amazon-linux-extras install epel
  2. 若要安裝監控工具,請執行以下命令:

    sudo yum -y install sysstat atop --enablerepo=epel
  3. 若要變更日誌收集間隔,請執行以下命令:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/sysconfig/atop
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/cron.d/sysstat
  4. 若要啟用和重新啟動服務,請執行以下命令:

    sudo systemctl enable atop.service crond.service sysstat.service
    sudo systemctl restart atop.service crond.service sysstat.service

Amazon Linux AMI

若要安裝 ATOP 和 SAR 監控工具,請完成下列步驟:

  1. 若要安裝監控工具並變更日誌收集間隔,請執行以下命令:
    sudo yum -y install sysstat atop --enablerepo=epel
    sudo sed -i 's/^INTERVAL=600.*/INTERVAL=60/' /etc/sysconfig/atop
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/cron.d/sysstat
    **注意:**Amazon Linux 預設安裝 EPEL 儲存庫。
  2. 若要啟用和重新啟動服務,請執行以下命令:
    for _service in atop crond sysstat; do sudo chkconfig ${_service} on; sudo service ${_service} start; done

RHEL 和 CentOS

**注意:**下列組態步驟在 RHEL 和 CentOS 的每個主要版本中都是相同的。

若要安裝 ATOP 和 SAR 監控工具,請完成下列步驟:

  1. 若要安裝 EPEL 發行套件,請根據您的 RHEL 或 CentOS 版本執行以下命令:
    RHEL 8、RHEL 9、CentOS 8 和 CentOS Stream 9:

    source /etc/os-release
    sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-${VERSION_ID%.*}.noarch.rpm -y

    RHEL 7 和 CentOS 7:

    sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

    RHEL 6 和 CentOS 6:

    sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
  2. 若要安裝監控工具,請執行以下命令:

    sudo dnf -y install sysstat atop --enablerepo=epel
  3. 若要變更日誌收集間隔,請根據您的 RHEL 或 CentOS 版本執行以下命令:
    RHEL 8、RHEL 9、CentOS 8 和 CentOS Stream 9:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/sysconfig/atop
    sudo mkdir -v /etc/systemd/system/sysstat-collect.timer.d/
    sudo bash -c "sed -e 's|every 10 minutes|every 1 minute|g' -e '/^OnCalendar=/ s|/10$|/1|' /usr/lib/systemd/system/sysstat-collect.timer > /etc/systemd/system/sysstat-collect.timer.d/override.conf"
    sudo sed -i 's|^SADC_OPTIONS=.*|SADC_OPTIONS=" -S XALL"|' /etc/sysconfig/sysstat

    RHEL 7 和 CentOS 7:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/sysconfig/atop
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/cron.d/sysstat

    RHEL 6 和 CentOS 6:

    sudo sed -i 's/^INTERVAL=600.*/INTERVAL=60/' /etc/sysconfig/atop
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/cron.d/sysstat
  4. 若要啟用和重新啟動服務,請根據您的 RHEL 或 CentOS 版本執行以下命令:
    RHEL 8、RHEL 9、CentOS 8 和 CentOS Stream 9:

    sudo systemctl enable atop.service sysstat.service
    sudo systemctl restart atop.service sysstat.service

    RHEL 7 和 CentOS 7:

    sudo systemctl enable atop.service crond.service sysstat.service
    sudo systemctl restart atop.service crond.service sysstat.service

    RHEL 6 和 CentOS 6:

    for _service in atop crond sysstat; do sudo chkconfig ${_service} on; sudo service ${_service} start; done

Ubuntu

若要安裝 ATOP 和 SAR 監控工具,請完成下列步驟:

  1. 若要安裝監控工具,請執行以下命令:

    sudo apt-get update
    sudo apt-get -y install atop sysstat
  2. 若要變更日誌收集間隔,請根據您的 Ubuntu 版本執行以下命令:
    Ubuntu 24.04 和 Ubuntu 22.04:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/default/atop
    sudo mkdir -v /etc/systemd/system/sysstat-collect.timer.d/
    sudo bash -c "sed -e 's|every 10 minutes|every 1 minute|g' -e '/^OnCalendar=/ s|/10$|/1|' /usr/lib/systemd/system/sysstat-collect.timer > /etc/systemd/system/sysstat-collect.timer.d/override.conf"
    sudo bash -c "echo 'SA1_OPTIONS=\"-S XALL\"' >> /etc/default/sysstat"
    sudo sed -i 's|ENABLED="false"|ENABLED="true"|' /etc/default/sysstat

    Ubuntu 20.04:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /usr/share/atop/atop.daily
    sudo sed -i -e 's|5-55/10|*/1|' -e 's|every 10 minutes|every 1 minute|' -e 's|debian-sa1|debian-sa1 -S XALL|g' /etc/cron.d/sysstat
    sudo bash -c "echo 'SA1_OPTIONS=\"-S XALL\"' >> /etc/default/sysstat"
    sudo sed -i 's|ENABLED="false"|ENABLED="true"|' /etc/default/sysstat

    Ubuntu 18.04 和 Ubuntu 16.04:

    sudo sed -i 's/^INTERVAL=600.*/INTERVAL=60/' /usr/share/atop/atop.daily
    sudo sed -i -e 's|5-55/10|*/1|' -e 's|every 10 minutes|every 1 minute|' -e 's|debian-sa1|debian-sa1 -S XALL|g' /etc/cron.d/sysstat
    sudo bash -c "echo 'SA1_OPTIONS=\"-S XALL\"' >> /etc/default/sysstat"
  3. 若要啟用和重新啟動服務,請根據您的 Ubuntu 版本執行以下命令:
    Ubuntu 24.04 和 Ubuntu 22.04:

    sudo systemctl enable atop.service sysstat.service
    sudo systemctl restart atop.service sysstat.service

    Ubuntu 20.04:

    sudo systemctl enable atop.service cron.service sysstat.service
    sudo systemctl restart atop.service cron.service sysstat.service

    Ubuntu 18.04 和 Ubuntu 16.04:

    sudo sed -i 's|ENABLED="false"|ENABLED="true"|' /etc/default/sysstat
    sudo systemctl enable atop.service cron.service sysstat.service
    sudo systemctl restart atop.service cron.service sysstat.service

SLES 和 SLES for SAP

若要安裝 ATOP 和 SAR 監控工具,請完成下列步驟:

  1. 若要啟用 PackageHub,請根據您的 SLES 版本執行以下命令。
    SLES15:

    source /etc/os-release
    sudo SUSEConnect -p PackageHub/$VERSION_ID/x86_64
    sudo zypper ref -s

    SLES12:

    source /etc/os-release
    sudo SUSEConnect -p PackageHub/$VERSION_ID/x86_64
    sudo zypper addrepo https://download.opensuse.org/repositories/server:monitoring/SLE_12_SP5/server:monitoring.repo
    sudo zypper ref -s

    **注意:**對於 SLES12,您還可以新增 OpenSUSE 伺服器監控儲存庫。

  2. 若要安裝 SAR 和 ATOP,請執行以下命令:

    sudo zypper in sysstat atop atop-daemon
  3. 若要變更日誌收集間隔,請根據您的 SLES 版本執行以下命令:
    SLES15:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /etc/default/atop
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/sysstat/sysstat.cron
    sudo sed -i 's/^SADC_OPTIONS=.*/SADC_OPTIONS=" -S XALL"/' /etc/sysstat/sysstat

    SLES12:

    sudo sed -i 's/^LOGINTERVAL=600.*/LOGINTERVAL=60/' /usr/share/atop/atop.daily
    sudo sed -i -e 's|*/10|*/1|' -e 's|every 10 minutes|every 1 minute|' /etc/sysstat/sysstat.cron
    sudo sed -i 's/^SADC_OPTIONS=.*/SADC_OPTIONS=" -S XALL"/' /etc/sysstat/sysstat
  4. 若要啟用和重新啟動服務,請執行以下命令:

    sudo systemctl enable atop.service cron.service sysstat.service
    sudo systemctl restart atop.service cron.service sysstat.service

相關資訊

在 AL2 執行個體上新增儲存庫

Amazon Linux 2 常見問題集

Fedora Project 網站上的 Extra Packages for Enterprise Linux (EPEL)

AWS 官方已更新 6 個月前