CentOS 7|RHEL 7 に Graylog 4 をインストールする方法 |
このガイドでは、CentOS 7 | RHEL 7 Linux システムに Graylog 4 をインストールする手順を説明します。 Graylog は、データ センター、クラウド、またはその両方で水平方向に拡張できる機能を備えた、複数のログ ソース、DC、地域から最大 TB のログ データを集約できるオープン ソースのログ管理プラットフォームです。
Graylog 検索機能は非常に高速かつ強力なので、サーバーをストリームにグループ化してログを簡単に検索できます。 Graylog UI はシンプルかつ直感的で、完全なユーザー管理と LDAP のサポートを備えています。アラートとレポートもサポートされています。
Graylog 4.x は、Elasticsearch 7.x と MongoDB の最新バージョン – 4.x を完全にサポートしています。 Ubuntu および CentOS 8 ユーザーの場合は、次を確認してください。
- Ubuntu 20.04/Ubuntu 18.04 に GrayLog をインストールする
- CentOS 8 に GrayLog をインストールする
Graylog は、その機能を Java、Elasticsearch、および MongoDB に依存しています。 Elasticsearch はログ ストレージを担当し、MongoDB は Graylog 関連の設定を保存します。
ステップ 1: SELinux を構成する
システムで SELinux を使用している場合は、次の設定を行います。
sudo yum -y install curl vim policycoreutils
sudo setsebool -P httpd_can_network_connect 1
sudo semanage port -a -t http_port_t -p tcp 9000
sudo semanage port -a -t http_port_t -p tcp 9200
sudo semanage port -a -t mongod_port_t -p tcp 27017
ステップ 2: 必要なリポジトリを追加します。
EPEL リポジトリを有効にします。
CentOS 7:
sudo yum -y install epel-release
RHEL 7:
sudo subscription-manager repos --enable rhel-*-optional-rpms \
--enable rhel-*-extras-rpms \
--enable rhel-ha-for-rhel-*-server-rpms
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
MongoDB リポジトリを追加します。
sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo <<EOF
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF
Elasticsearch リポジトリを追加します。
sudo tee /etc/yum.repos.d/elasticsearch.repo <<EOF
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/oss-7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
YUM パッケージのインデックス キャッシュを更新します。
sudo yum clean all
sudo yum -y makecache
追加されたすべてのリポジトリが機能していることを確認します。
$ yum repolist
repo id repo name status
base/7/x86_64 CentOS-7 - Base 10072
droplet-agent/x86_64 DigitalOcean Droplet Agent 8
elasticsearch-7.x Elasticsearch repository for 7.x packages 1058
extras/7/x86_64 CentOS-7 - Extras 509
mongodb-org-4.4 MongoDB Repository 172
updates/7/x86_64 CentOS-7 - Updates 3573
repolist: 15392
ステップ 3: Java、Elasticsearch、MongoDB をインストールする
このコマンドを実行して、必要なパッケージをすべてインストールします。
sudo yum -y install vim pwgen java-11-openjdk java-11-openjdk-devel
sudo yum -y install pwgen elasticsearch-oss mongodb-org
Java およびその他のパッケージがインストールされているかどうかを確認します。
$ java -version
openjdk version "11.0.20" 2023-07-18 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.20.0.8-1.el7_9) (build 11.0.20+8-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.20.0.8-1.el7_9) (build 11.0.20+8-LTS, mixed mode, sharing)
MongoDB サービスを開始して有効にします。
mongod サービスを開始し、起動時に開始するように設定します。
sudo systemctl enable --now mongod
sudo systemctl status mongod
MongoDB パス:
ステップ 4: Graylog 用に Elasticsearch を構成する
Elasticsearch 設定ファイルを変更し、クラスター名を graylog に設定する必要があります。さらに、行のコメントを解除し (最初の文字の # を削除し)、action.auto_create_index: false
を追加する必要があります。 を構成ファイルに追加します。
編集するファイルは/etc/elasticsearch/elasticsearch.yml です。
$ sudo vi /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog
action.auto_create_index: false
Elasticsearch サービスを開始して有効にします。
sudo systemctl daemon-reload
sudo systemctl enable --now elasticsearch
サービスのステータスを確認します。
$ systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2023-08-21 14:26:45 UTC; 3s ago
Docs: https://www.elastic.co
Main PID: 8722 (java)
CGroup: /system.slice/elasticsearch.service
└─8722 /usr/share/elasticsearch/jdk/bin/java -Xshare:auto -Des.networkaddress.cache.ttl=60 -Des.networkaddress.cache.negative.ttl=10 -XX:+AlwaysPreTouch -Xss1m -Djava.awt.headless=tr...
Aug 21 14:26:26 centos-01 systemd[1]: Starting Elasticsearch...
Aug 21 14:26:26 centos-01 systemd[1]: Started Elasticsearch.
デフォルトの Elasticsearch ファイルの場所は次のとおりです。
ステップ 5: CentOS 7|RHEL 7 に Graylog サーバーをインストールする
次のコマンドを使用して、Graylog リポジトリと Graylog 自体をインストールします。
sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-4.3-repository_latest.rpm
sudo yum -y install graylog-server
また、/etc/graylog/server/server.conf に password_secret 変数と root_password_sha2 変数を追加設定する必要があります。
### Generate root_password_sha2
$ echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1
Enter Password: password <INPUT-PASSWORD>
Sha2 パスワードが画面に出力されます。これを構成ファイルで使用して更新します。
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
前にインストールした pwgen ツールを使用して password_secret を生成します。
$ pwgen -N 1 -s 96
pYJuHjPD0166gUEzhL3XUpTkacYAu26FFxVIRjvczINydWF7WwBbUEUaD5KukCUBIKpklbYn85ebWTOQg4UMMS0twWqB7Rep
これらの設定は必須であり、設定がないと Graylog は起動しません。
$ sudo vi /etc/graylog/server/server.conf
password_secret = Replace-me-with-generated-password-secret
root_password_sha2 = Replace-me-with-generated-hashed-root-secret
例 :
password_secret = pYJuHjPD0166gUEzhL3XUpTkacYAu26FFxVIRjvczINydWF7WwBbUEUaD5KukCUBIKpklbYn85ebWTOQg4UMMS0twWqB7Rep
root_password_sha2 = 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
Graylog HTTP インターフェイスが使用するネットワーク インターフェイスにもアドレスをバインドしましょう
$ sudo vi /etc/graylog/server/server.conf
#line 105
http_bind_address = 0.0.0.0:9000
システム上のすべてのアドレスにバインドするには、graylog サービスを再起動します。
sudo systemctl restart graylog-server
Graylog ディレクトリ構造:
ステップ 6: CentOS 7|RHEL 7 で Graylog サービスを開始する
次に、graylog サービスを開始し、システム起動時に開始できるようにします。
sudo systemctl daemon-reload
sudo systemctl enable --now graylog-server.service
サービスのステータスを確認します。
$ systemctl status graylog-server.service
● graylog-server.service - Graylog server
Loaded: loaded (/usr/lib/systemd/system/graylog-server.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2022-03-19 08:25:09 UTC; 13s ago
Docs: http://docs.graylog.org/
Main PID: 19249 (graylog-server)
CGroup: /system.slice/graylog-server.service
├─19249 /bin/sh /usr/share/graylog-server/bin/graylog-server
└─19250 /usr/bin/java -Xms1g -Xmx1g -XX:NewRatio=1 -server -XX:+ResizeTLAB -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:+C...
Sep 16 09:08:11 cent701.novalocal systemd[1]: Stopped Graylog server.
Sep 16 09:08:11 cent701.novalocal systemd[1]: Started Graylog server.
Graylog ファイアウォールを構成する
単一ノードのインストールの場合、UI アクセスと API 用にポート9000を開くだけで済みます。 CentOS 7|RHEL 7 でこれを行うには、firewalld を使用します。
sudo firewall-cmd --add-port=9000/tcp --permanent
sudo firewall-cmd --reload
http://public_ip:9000 を使用して Graylog Web インターフェイスにアクセスできるようになりました。以下のようなインターフェースが表示されるはずです。
CentOS 7 | RHEL 7 での Elasticsearch 7.x を使用した Graylog 4.x のインストールは完了しました。Let's Encrypt SSL を使用した Graylog Nginx リバース プロキシの構成に関する次の記事をお読みください。
メッセージを Graylog に取り込み、エクストラクターを使用してメッセージを抽出する方法、またはパイプラインを使用してメッセージを操作する方法の学習を進めます。
タグ :
- CentOS 7 に Graylog 4 をインストールする
- RHEL 7 に Graylog 4 をインストールする
- CentOS 7/RHEL 7 への Graylog のインストール
その他のログ関連記事:
- Rsyslog を使用した VMware vSphere および vCenter Central のログ管理
- Ubuntu 18.04 の Graylog サーバーでログを管理する
- ログから Postfix メール統計を取得する方法