【注意】この記事の内容は古くなりました
Amazon Linux 2023 でも net-snmp
のパッケージが利用できるようになりました。
特に理由がなければ、公式パッケージをご利用ください。
https://docs.aws.amazon.com/linux/al2023/release-notes/new-AL2023.0-AL2023.1.html
以下の内容は、過去の情報としてご参照ください。
はじめに
Amazon Linux 2023 からは net-snmp
パッケージが削除されています。
参考:削除されたパッケージ - Amazon Linux 2023
このため、snmpdを利用して各種監視を行っている場合に困ったことになります。
というわけで Amazon Linux 2023 にソースコードからnet-snmpをインストールして設定してみました。
手順
SourceForge から圧縮アーカイブされているソースコードをダウンロードします。
※説明例では net-snmp-5.9.1.tar.gz
をダウンロードしたものとして記載します。
# 必要パッケージのインストール
dnf install gcc make
# 別途ダウンロードしたファイルを解凍
tar zxvf net-snmp-5.9.1.tar.gz
cd net-snmp-5.9.1
# コンパイル・インストール等
./configure
make
make install
インストール後、まずはsnmpdの設定ファイルを準備します。
※各環境に合った設定ファイルをご用意ください。
mkdir -p /usr/local/etc/snmpd/
vi /usr/local/etc/snmpd/snmpd.conf
設定ファイルを用意したら、Systemdを使ってデーモン化を行います。
[Unit]
Description=snmpd daemon
Requires=network.target
After=network.target
[Service]
Type=simple
KillMode=process
User=root
Group=root
PIDFile=/var/run/snmpd.pid
Environment="CONF=/usr/local/etc/snmpd/snmpd.conf"
Environment="OPTIONS=-f -LS 5 d -a -Lf /dev/null"
Environment="PIDFILE=/var/run/snmpd.pid"
ExecStart=/usr/local/sbin/snmpd $OPTIONS -c $CONF -p $PIDFILE
ExecReload=/usr/bin/kill -HUP $MAINPID
ExecStop=/usr/bin/kill -TERM $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target
systemctl enable snmpd.service
systemctl start snmpd.service
デーモン起動後に snmpwalk
などを利用して動作確認を行います。
さいごに
AWSさん、パッケージ消しすぎでは?