GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Graylog2 unter CentOS 7 / RHEL 7

Graylog (früher bekannt als Graylog2) ist eine Open-Source-Protokollverwaltungsplattform, die Ihnen hilft, alle Maschinenprotokolle an einem zentralen Ort zu sammeln, zu indizieren und zu analysieren. Diese Anleitung hilft Ihnen bei der Installation von Graylog2 auf CentOS 7 / RHEL 7 und konzentriert sich auch auf die Installation von vier weiteren Komponenten, die Graylog2 zu einem leistungsstarken Tool zur vollständigen Protokollverwaltung machen.

Dieses Tutorial ist für eine veraltete Version von Graylog2. Eine neue Version ist hier verfügbar:How To Install Graylog on CentOS 7 / RHEL 7.

Wir können Graylog auf zwei Arten installieren,

1. Durch die Verwendung des Quellpakets.

2. Durch die Verwendung offizieller Binärpakete (empfohlen).

In diesem Tutorial werde ich die Graylog-Installation unter Verwendung von Binärpaketen zeigen.

Komponenten:

1. MongoDB – Speichert die Konfigurationen und Metainformationen.

2. Elasticsearch – Speichert die Log-Meldungen und bietet eine Suchfunktion, Nodes sollten viel Arbeitsspeicher haben, da hier alle I/O-Operationen stattfinden.

3. GrayLog – Log-Parser, sammelt die Logs von verschiedenen Eingaben.

4. GrayLog Webinterface =stellt Ihnen das webbasierte Portal zur Verwaltung der Logs zur Verfügung.

Voraussetzungen:

1. Da Elasticsearch auf Java basiert, müssten wir entweder openJDK oder Oracle JDK installieren. Es wird empfohlen, Oracle JDK zu installieren.

Um openJDK zu verwenden, installieren Sie es mit dem folgenden Befehl.

# yum install java

Überprüfen Sie die Java-Version mit dem folgenden Befehl.

# java -version

java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)

2. Konfigurieren Sie das EPEL-Repository auf CentOS 7 / RHEL 7.

Elasticsearch installieren:

Elasticsearch ist ein Open-Source-Suchserver, der eine verteilte Suche und Analyse in Echtzeit mit einer RESTful-Webschnittstelle bietet. Elasticsearch speichert alle vom Graylog-Server gesendeten Protokolle und zeigt die Meldungen an, wenn die Graylog-Webschnittstelle eine vollständige Benutzeranfrage über die Webschnittstelle anfordert.

Dieses Thema behandelt Konfigurationseinstellungen, die für Graylog erforderlich sind. Eine detaillierte Anleitung finden Sie auch unter Install Elasticsearch on CentOS 7 / Ubuntu 14.10 / Linux Mint 17.1.

Lassen Sie uns Elasticsearch installieren, Sie können es von der offiziellen Website herunterladen.

Importieren Sie den GPG-Schlüssel.

# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

Elasticsearch-Repository hinzufügen.

# vi /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-1.7]
name=Elasticsearch repository for 1.7.x packages
baseurl=http://packages.elastic.co/elasticsearch/1.7/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1

Installieren Sie die neueste Version mit dem Befehl yum

# yum -y install elasticsearch

Konfigurieren Sie Elasticsearch so, dass es während des Systemstarts gestartet wird.

# systemctl daemon-reload
# systemctl enable elasticsearch.service

Wichtig ist nur, einen Clusternamen als „graylog2“ festzulegen “, die von Graylog verwendet wird. Bearbeiten Sie nun die Konfigurationsdatei von Elasticsearch.

# vi /etc/elasticsearch/elasticsearch.yml

cluster.name: graylog2

Deaktivieren Sie dynamische Skripte, um eine Remote-Ausführung zu vermeiden. Dies kann durch Hinzufügen der folgenden Zeile am Ende der obigen Datei erfolgen.

script.disable_dynamic: true

Sobald es fertig ist, können wir loslegen. Starten Sie vorher die Elasticsearch-Dienste neu, um die geänderte Konfiguration zu laden.

# systemctl restart elasticsearch.service

Warten Sie mindestens eine Minute, bis Elasticsearch vollständig neu gestartet wurde, andernfalls schlägt der Test fehl. Elastisearch sollte jetzt auf 9200 für die Verarbeitung der HTTP-Anfrage lauschen, wir können CURL verwenden, um die Antwort zu erhalten. Stellen Sie sicher, dass der Clustername als „graylog2“ zurückgegeben wird ”

# curl -X GET http://localhost:9200

{
  "status" : 200,
  "name" : "Silver Fox",
  "cluster_name" : "graylog2",
  "version" : {
    "number" : "1.7.2",
    "build_hash" : "e43676b1385b8125d647f593f7202acbd816e8ec",
    "build_timestamp" : "2015-09-14T09:49:53Z",
    "build_snapshot" : false,
    "lucene_version" : "4.10.4"
  },
  "tagline" : "You Know, for Search"
}

Optional: Verwenden Sie den folgenden Befehl, um den Status des Elasticsearch-Clusters zu überprüfen. Sie müssen einen Clusterstatus als „grün“ erhalten, damit Graylog funktioniert.

# curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'

{
  "cluster_name" : "graylog2",
  "status" : "green",
  "timed_out" : false,
  "number_of_nodes" : 1,
  "number_of_data_nodes" : 1,
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0
}

Installieren Sie MongoDB:

MongoDB ist im RPM-Format verfügbar und kann von der offiziellen Website heruntergeladen werden. Fügen Sie die folgenden Repository-Informationen auf dem System hinzu, um MongoDB mit yum.

zu installieren
# vi /etc/yum.repos.d/mongodb-org-3.0.repo

[mongodb-org-3.0]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=1

Installieren Sie MongoDB mit dem folgenden Befehl.

# yum -y install mongodb-org

Wenn Sie SELinux verwenden, müssen Sie das folgende Paket installieren, um bestimmte Elemente der SELinux-Richtlinie zu konfigurieren.

# yum -y install policycoreutils-python

Führen Sie den folgenden Befehl aus, um SELinux so zu konfigurieren, dass MongoDB gestartet werden kann.

# semanage port -a -t mongod_port_t -p tcp 27017

Wenn Sie SELinux nicht auf dem System verwenden möchten, sollten Sie SELinux deaktivieren.

Starten Sie den MongoDB-Dienst und aktivieren Sie ihn so, dass er während des Systemstarts automatisch gestartet wird.

# service mongod start

# chkconfig mongod on

Die obigen Schritte reichen aus, um Graylog2 zu konfigurieren, die detaillierte Konfiguration finden Sie hier.

Installieren Sie Graylog2:

Der Graylog-Server akzeptiert und verarbeitet die Protokollmeldungen und erstellt auch die RESTAPI für die Anfragen, die von der Graylog-Webschnittstelle kommen. Laden Sie die neueste Version von Graylog von Graylog.org herunter.

Verwenden Sie den folgenden Befehl, um das Graylog2-Repository zu installieren.

# rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-1.2-repository-el7_latest.rpm

Installieren Sie den neuesten Graylog-Server.

# yum -y install graylog-server

Bearbeiten Sie die server.conf-Datei.

# vi /etc/graylog/server/server.conf

Konfigurieren Sie die folgenden Variablen in der obigen Datei.

Legen Sie ein Geheimnis fest, um die Benutzerkennwörter zu sichern, verwenden Sie den folgenden Befehl, um ein Geheimnis zu generieren, verwenden Sie mindestens 64 Zeichen.

# pwgen -N 1 -s 96

5uxJaeL4vgP9uKQ1VFdbS5hpAXMXLq0KDvRgARmlI7oxKWQbH9tElSSKTzxmj4PUGlHIpOkoMMwjICYZubUGc9we5tY1FjLB

Wenn Sie die Meldung „pwgen:command not found“ erhalten “, verwenden Sie den folgenden Befehl, um pwgen zu installieren.

Hinweis:Vergessen Sie nicht, das EPEL-Repository auf CentOS 7 / RHEL 7 zu konfigurieren.

# yum -y install pwgen

Platzieren Sie das Geheimnis.

password_secret = 5uxJaeL4vgP9uKQ1VFdbS5hpAXMXLq0KDvRgARmlI7oxKWQbH9tElSSKTzxmj4PUGlHIpOkoMMwjICYZubUGc9we5tY1FjLB

Als nächstes muss ein Hash-Passwort für den Root-Benutzer festgelegt werden (nicht zu verwechseln mit dem Systembenutzer, der Root-Benutzer von Graylog ist admin). Sie verwenden dieses Passwort für die Anmeldung bei der Webschnittstelle, das Administratorpasswort kann nicht über die Webschnittstelle geändert werden, Sie müssen diese Variable bearbeiten, um sie festzulegen.

Ersetzen Sie „Ihr Passwort ” mit Ihrer Wahl.

# echo -n yourpassword | sha256sum

e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Geben Sie das Hash-Passwort ein.

root_password_sha2 = e3c652f0ba0b4801205814f8b6bc49672c4c74e25b497770bb89b22cdeb4e951

Sie können den Root-Benutzer (Admin) der E-Mail-Adresse einrichten.

root_email = "[email protected]"

Legen Sie die Zeitzone des Root-Benutzers (Admin) fest.

root_timezone = UTC

Graylog versucht, die Elasticsearch-Knoten automatisch zu finden, es verwendet dafür den Multicast-Modus. Aber wenn es um größere Netzwerke geht, wird empfohlen, den Unicast-Modus zu verwenden, der am besten für Produktions-Setups geeignet ist. Fügen Sie also die folgenden zwei Einträge zur Graylog-Datei server.conf hinzu, ersetzen Sie ipaddress mit Live-Hostname oder IP-Adresse können mehrere Hosts durch Kommas getrennt hinzugefügt werden.

elasticsearch_http_enabled = false
elasticsearch_discovery_zen_ping_unicast_hosts = ipaddress:9300

Legen Sie nur einen Master-Knoten fest, indem Sie die folgende Variable definieren. Die Standardeinstellung ist wahr, Sie müssen sie auf falsch setzen, um den bestimmten Knoten als Slave zu machen. Der Master-Knoten führt einige periodische Aufgaben aus, die der Slave nicht ausführt.

is_master = true

Die folgende Variable legt die Anzahl der Protokollmeldungen fest, die pro Index aufbewahrt werden sollen. Es wird empfohlen, mehrere kleinere statt größere Indizes zu haben.

elasticsearch_max_docs_per_index = 20000000

Der folgende Parameter definiert die Gesamtzahl der Indizes, wenn diese Zahl erreicht wird, wird der alte Index gelöscht.

elasticsearch_max_number_of_indices = 20

Die Shards-Einstellung hängt wirklich von der Anzahl der Knoten im Elasticsearch-Cluster ab. Wenn Sie nur einen Knoten haben, setzen Sie ihn auf 1.

elasticsearch_shards = 1

Die Anzahl der Replikate für Ihre Indizes, wenn Sie nur einen Knoten im Elasticsearch-Cluster haben; setzen Sie es auf 0.

elasticsearch_replicas = 0

MongoDB-Authentifizierungsinformationen hinzufügen.

mongodb_useauth = false

Starten Sie den Graylog-Server mit dem folgenden Befehl.

# systemctl restart graylog-server

Sie können die Server-Startprotokolle überprüfen, es wird Ihnen bei der Fehlerbehebung bei Graylog nützlich sein, falls ein Problem auftritt.

# tailf /var/log/graylog-server/server.log

Bei erfolgreichem Start des Graylog-Servers sollten Sie folgende Meldung in der Logdatei erhalten.

2015-09-16T21:26:05.689-04:00 INFO  [ServerBootstrap] Graylog server up and running.

Graylog-Webschnittstelle installieren:

Um das Graylog-Web-Interface zu konfigurieren, müssen Sie mindestens einen Graylog-Server-Knoten haben. Installieren Sie die Webschnittstelle mit dem folgenden Befehl.

# yum -y install graylog-web

Bearbeiten Sie die Konfigurationsdatei und legen Sie die folgenden Parameter fest.

# vi /etc/graylog/web/web.conf

Dies ist die Liste der Graylog-Server-Knoten, Sie können mehrere Knoten hinzufügen, getrennt durch Kommas.

graylog2-server.uris="http://127.0.0.1:12900/"

Legen Sie den Anwendungsschlüssel fest, Sie können ihn mit pwgen -N 1 -s 96 generieren.

application.secret="sNXyFf6B4Au3GqSlZwq7En86xp10JimdxxYiLtpptOejX6tIUpUE4DGRJOrcMj07wcK0wugPaapvzEzCYinEWj7BOtHXVl5Z"

Starten Sie das gralog-Web-Interface mit dem folgenden Befehl neu,

# systemctl restart graylog-web

Zugriff auf die Graylog-Weboberfläche:

Die Webschnittstelle lauscht auf Port 9000, konfiguriert die Firewall so, dass Datenverkehr auf Port 9000 zugelassen wird.

# firewall-cmd --permanent --zone=public --add-port=9000/tcp
# firewall-cmd --reload

Richten Sie Ihren Browser auf http://ip-adresse:9000 . Melden Sie sich mit dem Benutzernamen „admin“ und dem Passwort an, das Sie unter root_password_sha2 konfiguriert haben aufserver.conf .

Sobald Sie sich angemeldet haben, erhalten Sie folgende Suchseite.

Das ist alles!, Sie haben Graylog2 erfolgreich auf CentOS 7 / RHEL 7 installiert.

Diese Anleitung ist für eine veraltete Version von Graylog2. Eine neue Version ist hier verfügbar:How To Install Graylog on CentOS 7 / RHEL 7.
Cent OS
  1. So installieren Sie phpMyAdmin auf RHEL 8 / CentOS 8

  2. So installieren Sie P7Zip auf RHEL 8 / CentOS 8

  3. So installieren Sie Graylog2 unter CentOS 7 / RHEL 7 – Verwenden von Source

  4. So installieren Sie Elasticsearch unter CentOS 8 / RHEL 8

  5. So installieren Sie Elasticsearch auf CentOS/RHEL 8

So installieren Sie Maven auf RHEL 8 / CentOS 8

So installieren Sie cpan auf RHEL 8 / CentOS 8

So installieren Sie Elasticsearch auf CentOS 7

So installieren Sie Elasticsearch auf CentOS 8

So installieren Sie Graylog unter CentOS 8 / RHEL 8

So installieren Sie Graylog 3.0 unter CentOS 7 / RHEL 7