自身の Amazon Linux・RHEL・CentOS・Ubuntu を実行している EC2 インスタンスに、どうすれば ATOP および SAR モニタリングツールを設定できるかを教えてください。
Amazon Linux・Red Hat Enterprise Linux (RHEL)・CentOS・Ubuntu を実行している Amazon Elastic Compute Cloud (Amazon EC2) インスタンスがあります。プロセス使用率に関する詳細なデータを収集するために、ATOP モニタリングと AWS Serverless Application Repository のモニタリングツールを設定したいと考えています。
簡単な説明
ATOP モニタリングツールと AWS Serverless Application Repository のモニタリングツールは、標準の Amazon マシンイメージ (AMI) では設定されていません。これらのモニタリングツールは、Amazon Linux・RHEL・CentOS・Ubuntu Linux ベースのディストリビューションにインストールすることができます。ATOP モニタリング と SAR モニタリングを有効にすれば、30 日間の保存履歴を使用して、インスタンスのプロセス使用率のより詳細な把握が可能となります。
デフォルトでは、ATOP および SAR モニタリングツールは 10 分間隔でメトリクスを収集します。間隔をデフォルト値から 1 分間隔に再設定することで、より詳細なデータを収集可能です。
解決策
Amazon Linux 2023
-
以下のように、モニタリングツールをインストールします。
$ sudo yum -y install sysstat atop
-
以下のように、ログ収集間隔を変更します。
$ 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
-
以下のように、サービスを有効にして再起動します。
$ sudo systemctl enable atop.service sysstat-collect.timer sysstat.service
$ sudo systemctl restart atop.service sysstat-collect.timer sysstat.service
Amazon Linux 2
-
amazon-linux-extras コマンドを使用して、以下のように、RHEL 7 用の Extra Packages for Enterprise Linux (EPEL) パッケージをインストールします。
sudo amazon-linux-extras install epel
-
以下のように、モニタリングツールをインストールします。
sudo yum -y install sysstat atop --enablerepo=epel
-
以下のように、ログ収集間隔を変更します。
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
-
以下のように、サービスを有効にして再起動します。
sudo systemctl enable atop.service crond.service sysstat.service sudo systemctl restart atop.service crond.service sysstat.service
Amazon Linux AMI
-
モニタリングツールをインストールします。
**注:**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
-
以下のように、サービスを有効にして再起動します。
for _service in atop crond sysstat; do sudo chkconfig ${_service} on; sudo service ${_service} start; done
RHEL および CentOS
次の設定手順は、RHEL および CentOS のすべてのメジャーリリースに共通です。
RHEL 9
-
以下のように、RHEL 9 用の EPEL リリースパッケージをインストールし、CodeReady Linux Builder リポジトリをアクティベートします。
$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
$ sudo dnf config-manager --set-enabled codeready-builder-for-rhel-9-rhui-rpms
-
以下のように、モニタリングツールをインストールします。
$ sudo dnf -y install sysstat atop --enablerepo=epel
-
以下のように、ログ収集間隔を変更します。
$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
-
サービスの有効化と再起動
$ sudo systemctl enable atop.service crond.service sysstat.service
$ sudo systemctl restart atop.service crond.service sysstat.service
RHEL 8 および CentOS 8:
-
以下のように、RHEL 8 用の EPEL リリースパッケージをインストールします。
sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
-
以下のように、モニタリングツールをインストールします。
sudo dnf -y install sysstat atop --enablerepo=epel
-
以下のように、ログ収集間隔を変更します。
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
-
以下のように、サービスを有効にして再起動します。
sudo systemctl enable atop.service crond.service sysstat.service sudo systemctl restart atop.service crond.service sysstat.service
RHEL 7 および CentOS 7:
-
以下のように、RHEL 7 用の EPEL リリースパッケージをインストールします。
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
-
以下のように、モニタリングツールをインストールします。
sudo yum -y install sysstat atop --enablerepo=epel
-
以下のように、ログ収集間隔を変更します。
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
-
以下のように、サービスを有効にして再起動します。
sudo systemctl enable atop.service crond.service sysstat.service sudo systemctl restart atop.service crond.service sysstat.service
RHEL 6 および CentOS 6:
-
以下のように、RHEL 6 用の EPEL リリースパッケージをインストールします。
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
-
以下のように、モニタリングツールをインストールします。
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
-
以下のように、サービスを有効にして再起動します。
for _service in atop crond sysstat; do sudo chkconfig ${_service} on; sudo service ${_service} start; done
Ubuntu の場合
Ubuntu 22.04 と 20.04:
-
以下のように、モニタリングツールをインストールします。
sudo apt-get update sudo apt-get -y install atop sysstat
-
ログ収集間隔を変更し、設定ファイルに -S XALL を追加して、ディスクと i ノードの使用状況をレポートするよう sysstat を設定します。
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 sudo systemctl enable atop.service cron.service sysstat.service sudo systemctl restart atop.service cron.service sysstat.service
Ubuntu 18.04:
-
以下のように、モニタリングツールをインストールします。
sudo apt-get update sudo apt-get -y install atop sysstat
-
ログ収集間隔を変更し、設定ファイルに -S XALL を追加して、ディスクと i ノードの使用状況をレポートするように sysstat を設定します。
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"
-
以下のように、サービスを有効にして再起動します。
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:
-
以下のように、モニタリングツールをインストールします。
sudo apt-get update sudo apt-get -y install atop sysstat
-
ログ収集間隔を変更し、ディスクと i ノードの使用状況をレポートするように sysstat を設定します。設定ファイルに -S XALL を追加します。
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"
-
以下のように、サービスを有効にして再起動します。
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
関連情報
Amazon Linux インスタンスにリポジトリを追加する
Extras library (Amazon Linux 2)
EPEL ウェブサイト
FreeDesktop の Web サイトの systemd.timer -- Timer unit configuration
関連するコンテンツ
- 承認された回答質問済み 4ヶ月前lg...
- 質問済み 1年前lg...
- AWS公式更新しました 7ヶ月前