ホームページ  >  記事  >  運用・保守  >  CentOS上にWebサーバーを構築するためのログ管理・監視スキル

CentOS上にWebサーバーを構築するためのログ管理・監視スキル

WBOY
WBOYオリジナル
2023-08-05 08:33:141428ブラウズ

CentOS で Web サーバーを構築するためのログ管理と監視のスキル

Web サーバーは最新のインターネット アプリケーションの重要な部分であり、サーバーのログ管理と監視はサーバーの安定した運用とトラブルシューティングの鍵となります。この記事では、CentOS オペレーティング システム上に Web サーバーを構築する方法を紹介し、ログ管理と監視のテクニックをいくつか紹介します。

1. Web サーバーの構築

  1. Apache のインストール

Apache は、人気のあるオープン ソース Web サーバー ソフトウェアです。 CentOS への Apache のインストールは非常に簡単です。ターミナルで次のコマンドを入力するだけです。

sudo yum install httpd
  1. Apache の構成

Apache をインストールした後、いくつかの基本的な作業を行う必要があります。それの構成。設定ファイルは /etc/httpd/conf/httpd.conf にあります。 vi や nano などのエディタを使用してファイルを開くことができます。

たとえば、デフォルト Web サイトのルート ディレクトリを変更できます。

DocumentRoot "/var/www/html"
  1. Apache の起動

設定が完了したら、Apache を起動できます。 。次のコマンドを入力します:

sudo systemctl start httpd

2. ログ管理

  1. ログ ファイルの場所

Apache は /var/log/ にさまざまな種類のファイルを生成します。 httpd/ ディレクトリ ログ ファイル。一般的なログ ファイルの一部を次に示します:

  • access_log: すべての HTTP リクエストに関する情報を記録します;
  • error_log: サーバー エラーに関する情報を記録します;
  • ssl_access_log: 情報を記録しますすべての HTTPS リクエストに関する;
  • ssl_error_log: HTTPS リクエストに関するエラー情報を記録します。
  1. ログ ファイルのカット

Apache によって生成されるログ ファイルは、非常に大きなサイズに簡単に成長する可能性があるため、ログ ファイルを定期的にカットする必要がある場合があります。管理。 Linux には、ログ ファイルを簡単に切り取って圧縮できる logrotate というツールが用意されています。

まず、logrotate をインストールします:

sudo yum install logrotate

次に、httpd という名前のログ切断設定ファイルを作成します:

sudo nano /etc/logrotate.d/httpd

このファイルでは、ログ ファイルの切断ルールを指定できます。構成例を次に示します。

/var/log/httpd/access_log {
    rotate 7
    daily
    missingok
    compress
    delaycompress
    notifempty
    create 640 root root
    sharedscripts
    postrotate
        /sbin/service httpd reload > /dev/null 2>/dev/null || true
    endscript
}

この構成では、ログ ファイルは毎日ローテーションされ、過去 7 日間のバックアップが保持されます。カットされたファイルは圧縮されてアーカイブされます。

  1. 分析ログ

ログ ファイルには豊富な情報が含まれており、サーバーの分析と監視に非常に役立ちます。 Awstats、Webalizer、ELK Stack などのいくつかのツールを使用してログを分析できます。

Awstats と Webalizer は、詳細な Web サイト統計レポートを生成するための 2 つのツールです。これらは、yum コマンドを使用してインストールできます。

sudo yum install awstats webalizer

インストールが完了したら、Apache のログ ファイルを分析するように設定する必要があります。具体的な設定方法については、それぞれの公式ドキュメントを参照してください。

ELK Stack は強力なログ管理および分析プラットフォームであり、Elasticsearch、Logstash、Kibana の 3 つのオープンソース ツールで構成されています。 ELK スタックを使用すると、Apache ログ データを一元的に保存、分析、視覚化できます。

3. 監視スキル

  1. 監視ツールを使用する

サーバーの障害や問題をタイムリーに発見して解決するには、いくつかのツールを使用できます。 Nagios、Zabbix、Prometheus などの監視ツール。

Nagios は、さまざまなサービスやアプリケーションを監視し、アラート機能やレポート機能を提供できる、広く使用されているインフラストラクチャ監視ツールです。 Nagios を CentOS にインストールし、Apache の実行ステータスを監視するように設定できます。

Zabbix は、サーバーのパフォーマンスとリソースのリアルタイム監視をサポートする強力なネットワーク監視ツールです。 Zabbix を使用すると、CPU 使用率、メモリ使用量、ネットワーク トラフィックなどの Apache の主要なメトリクスを監視できます。

Prometheus は、豊富な組み込みインジケーターと柔軟なクエリ言語を提供する、最近人気のある監視システムです。 Prometheus を使用すると、Apache パフォーマンス メトリックを監視し、Grafana などのツールを使用して視覚化できます。

  1. カスタム監視スクリプト

既存の監視ツールを使用することに加えて、Apache を監視するための独自の監視スクリプトを作成することもできます。

たとえば、Apache の実行ステータスを定期的にチェックし、管理者に警告メールを送信する簡単な Bash スクリプトを作成できます。

#!/bin/bash

# 检查Apache是否运行
if ! pgrep -x "httpd" > /dev/null
then
    # 发送警报邮件
    echo "Apache is not running" | mail -s "Apache Alert" admin@example.com
fi

上記のスクリプトを check_apache.sh として保存し、 cron スケジュールされたタスクがそれを実行します:

*/5 * * * * /path/to/check_apache.sh

このスクリプトは 5 分ごとに実行され、Apache が実行されているかどうかを確認します。 Apache が実行されていない場合、スクリプトは管理者に警告メールを送信します。

概要:

この記事では、CentOS オペレーティング システム上に Web サーバーを構築する手順を紹介し、いくつかのログ管理および監視テクニックを提供します。ログ ファイルを適切に構成し、監視ツールを使用することで、Web サーバーの管理と保守を改善し、安定した動作を確保し、問題をタイムリーに発見して解決することができます。監視スクリプトをカスタマイズすることで、Apacheの稼働状況を柔軟に監視できます。これらのヒントがお役に立てば幸いです。

以上がCentOS上にWebサーバーを構築するためのログ管理・監視スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。