次のような設定で監視サーバーをセットアップしました。
<Plugin network>
Listen "0.0.0.0" "25826"
</Plugin>
現在、クライアントは監視サーバーにデータを送信しています(tcpdumpで確認済み)。コレクションフォルダーでもデータがダンプされていることが示されています。
/var/lib/collectd/rrd
[ec2-user at x rrd]$ ll
total 4
drwxr-xr-x 11 root root 4096 Nov 20 17:53 x-web-1.y.com
[ec2-user at x rrd]$
また、 find . -mmin 1 を使用して、継続的に更新されているかどうかも確認しました。
[ec2-user@x rrd]$ find . -mmin 1
./x-web-1.y.com/interface-eth0/if_errors.rrd
./x-web-1.y.com/interface-eth0/if_packets.rrd
./x-web-1.y.com/interface-eth0/if_octets.rrd
./x-web-1.y.com/disk-xvda1/disk_time.rrd
./x-web-1.y.com/disk-xvda1/disk_ops.rrd
./x-web-1.y.com/disk-xvda1/disk_octets.rrd
./x-web-1.y.com/disk-xvda1/disk_merged.rrd
しかし、collectd-webで調べると、クライアントが表示されません
私の設定に何が問題があるのでしょうか?
答え1
投稿された画像は collectd-web の一部ではないようです。いずれにせよ、Firefox には一種のキャッシュ効果があり、ホスト リストを含む collectd-web メニューの再構築を妨げています。Firefox のキャッシュを消去して、もう一度試してください。
答え2
以前コメントしたように、デフォルトの collectd.conf ファイル (グローバルHost
パラメータが としてデフォルト設定されている) を使用して同じ問題が発生していましlocalhost
た。クライアント コレクターのいずれかが同じグローバル名を使用している場合Host
、サーバー コレクターが混乱することがわかりました。これは通常、同じタイムスタンプに対して更新が多すぎるというログ ファイルのエラーによって証明されます。
解決策は、すべてのクライアントが一意のグローバル ホスト パラメータを使用していることを確認することです。その時点で、コレクター サーバーの rrd フォルダに、キャプチャされたサブコンテンツを含む個々のクライアント ホスト名を含むフォルダが作成されます。
答え3
私も同じ問題を抱えていました。組み込みの Python サーバー (正常に動作していた) を使用する代わりに、Apache 経由で collectd-web を提供していたときに発生しました。
何が起こっていたかというと、Apache が collectd-web 内の gci ファイルを処理していなかったのです。これを修正するには、mod_gci がインストールされていることを確認し、/etc/apache2/sites-available
Apache が collectd-web フォルダ内の設定の上書きを許可できるようにファイルを編集するだけです。
<Directory /var/www/collectd-web>
AllowOverride all
</Directory>
これにより、Apache は collectd-web の .htacccess ファイル (フォルダー上) を読み込みcgi-bin
、cgi スクリプトを実行するためのディレクティブが含まれます。
この小さな注意点はドキュメントに記載されています:http://collectdweb.appspot.com/documentation/
Apache も使用しているかどうかはわかりませんが、どのサーバーを使用している場合でも、CGI スクリプトが評価されていることを確認してください。そうでない場合、インターフェイスの動的な部分は読み込まれません。
答え4
最新の Prometheus またはその他のモニター システムに切り替えることを検討してください。
現時点では、collectd には ubuntu 22 LTS パッケージすらありません。
collectd から Prometheus に切り替えました。扱いがはるかに簡単になり、オプションも増えました。