如何为运行 Amazon Linux、RHEL、CentOS 或 Ubuntu 的 EC2 实例配置 ATOP 和 SAR 监控工具?

上次更新时间:2020 年 11 月 18 日

我有一个正在运行 Amazon Linux、Red Hat Enterprise Linux (RHEL)、CentOS 或 Ubuntu 的 Amazon Elastic Compute Cloud (Amazon EC2) 实例。如何配置 ATOP 和 SAR 监控工具以收集有关过程利用率的精细数据?

简短描述

在标准 Amazon 系统映像 (AMI) 上未配置 ATOP 和 SAR 监控工具。您可以在基于 Amazon Linux、RHEL、CentOS 或 Ubuntu Linux 的发行版上安装这些监控工具。启用 ATOP 和 SAR 监控可以通过 30 天的保留历史记录更精细地了解实例的进程利用率。

默认情况下,ATOP 和 SAR 监控工具每 10 分钟收集一次指标。您可以将间隔时间从默认值重新配置为 1 分钟,以收集更精细的数据。

解决方法

Amazon Linux 2

1.    使用 amazon-linux-extras 命令安装适用于 RHEL 7 的 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

1.    安装监控工具。

注意:Amazon Linux 已经安装了 EPEL 存储库。

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

2.    启用和重新启动服务:

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

RHEL 和 CentOS

对于 RHEL 和 CentOS 的每个主要发行版,下列配置步骤都相同。

RHEL 8 和 CentOS 8:

1.    安装适用于 RHEL 8 的 EPEL 发行包:

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

2.    安装监控工具:

sudo dnf -y install sysstat atop --enablerepo=epel

3.    更改日志收集间隔时间:

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

4.    启用和重新启动服务:

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

RHEL 7 和 CentOS 7:

1.    安装适用于 RHEL 7 的 EPEL 发行包:

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

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

RHEL 6 和 CentOS 6:

1.    安装适用于 RHEL 6 的 EPEL 发行包:

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

2.    安装监控工具:

sudo yum -y install sysstat atop --enablerepo=epel

3.    更改日志收集间隔时间:

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.    启用和重新启动服务:

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

Ubuntu

Ubuntu 20.04:

1.    安装监控工具:

sudo apt-get update
sudo apt-get -y install atop sysstat

2.    通过在配置文件中添加 -S XALL,更改日志收集间隔时间并将 sysstat 配置为报告磁盘和 inode 使用情况:

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"

3.    启用和重新启动服务:

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

Ubuntu 18.04:

1.    安装监控工具:

sudo apt-get update
sudo apt-get -y install atop sysstat

2.    通过在配置文件中添加 -S XALL,更改日志收集间隔时间并将 sysstat 配置为报告磁盘和 inode 使用情况:

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.    启用和重新启动服务:

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

Ubuntu 16.04:

1.    安装监控工具:

sudo apt-get update
sudo apt-get -y install atop sysstat

2.    通过在配置文件中添加 -S XALL,更改日志收集间隔时间并将 sysstat 配置为报告磁盘和 inode 使用情况:

sudo sed -i 's/^INTERVAL=600.*/INTERVAL=60/' /etc/default/atop
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.    启用和重新启动服务:

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

这篇文章对您有帮助吗?


您是否需要账单或技术支持?