Сегодня мы узнаем, как установить Graylog 3.0 на CentOS 7.
Graylog – это ведущий инструмент управления журналами с открытым исходным кодом, который обеспечивает сбор, хранение, анализ и обогащение машинных данных в режиме реального времени.
Он облегчает поиск, исследование и визуализацию данных.
- Установка Graylog 3.0 на CentOS 7
- Отключение SELinux
- Установите MongoDB 4.0 на CentOS 7
- Установите Elasticsearch 6.x на CentOS 7
- Установите Java 8 на CentOS 7
- Установите Elasticsearch 6.x на CentOS 7
- Настройк Elasticsearch
- Установка Graylog
- Добавить Graylog 3.x RPM репозиторий
- Установите Graylog 3.0
- Настройка Graylog
- Запуск Graylog
- Доступ к веб-интерфейсу Graylog
Установка Graylog 3.0 на CentOS 7
В этом руководстве основное внимание уделяется минимальной установке Graylog 3.0 на CentOS 7.
Чтобы установить Graylog и запустить его, необходимо установить и другие компоненты, а именно MongoDB и Elasticsearch where;
MongoDB – Graylog использует MongoDB для хранения метаданных конфигурации, таких как информация о пользователе или конфигурации потоков.
Elasticsearch – это механизм аналитики поиска, который обеспечивает Graylog центральным хранилищем данных журнала.
Вы можете искать любой вид документа из Elasticsearch
При установке Graylog на CentOS 7, MongoDB и Elasticsearch должны быть первыми компонентами, которые будут установлены перед установкой Graylog.
Отключение SELinux
Хотя я не рекомендую отключать SELinux, поскольку это руководство предназначено для демонстрации, SELinux отключен.
Обратите внимание, что перезагрузка вам все же потребуется, чтобы изменения вступили в силу.
Установите MongoDB 4.0 на CentOS 7
Как указано выше, Graylog использует MongoDB для хранения метаданных конфигурации.
Вы можете проверить инструкции по установке MongoDB 4 на CentOS 7 в нашем предыдущем руководстве, перейдя по ссылке ниже;
Как настроить аутентификацию в MongoDB 3.x / 4.x
Установите Elasticsearch 6.x на CentOS 7
Graylog еще не работает с Elasticsearch 7.x. Следовательно, вам нужно установить Elasticsearch 6.x.
Установите Java 8 на CentOS 7
Elasticsearch построен с использованием Java и требует как минимум Java 8 для запуска.
Следовательно, прежде чем вы сможете установить Elasticsearch, вам необходимо установить Java 8.
yum install java-1.8.0-openjdk-headless
Вы можете проверить версию Java с помощью команды java -version.
java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
Установите Elasticsearch 6.x на CentOS 7
Чтобы установить Elasticsearch 6.x из репозитория RPM, вам нужно создать репозиторий, как показано ниже;
cat > /etc/yum.repos.d/elasticsearc-6.repo << EOL
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOL
Импортируйте ключ подписи репозитория Elasticsearch PGP.
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Установите Elasticsearch 6.x
yum install elasticsearch
Настройк Elasticsearch
В своей базовой конфигурации Graylog требует, чтобы имя кластера Elasticsearch было установлено в Graylog.
Следовательно, отредактируйте файл конфигурации Elasticsearch, /etc/elasticsearch/elasticsearch.yml.
vim /etc/elasticsearch/elasticsearch.yml
...
# ---------------------------------- Cluster -----------------------------------
#
# Use a descriptive name for your cluster:
#
#cluster.name: my-application
cluster.name: graylog
#
...
Как только это будет сделано, перезапустите Elasticsearch и включите его при загрузке системы.
sudo systemctl daemon-reload systemctl restart elasticsearch systemctl enable elasticsearch
Чтобы убедиться, что с Elasticsearch все в порядке, выполните приведенную ниже команду после его полного запуска.
curl -X GET http://localhost:9200
{
"name" : "x55YNL_",
"cluster_name" : "graylog",
"cluster_uuid" : "CQBqPDoCRKW7tt955kq5Uw",
"version" : {
"number" : "6.8.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "65b6179",
"build_date" : "2019-05-15T20:06:13.172855Z",
"build_snapshot" : false,
"lucene_version" : "7.7.0",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
Установка Graylog
После того, как вы установили MongoDB и Elasticsearch, перейдите к установке Graylog.
Добавить Graylog 3.x RPM репозиторий
Запустите приведенную ниже команду, чтобы установить RPM-репозиторий Graylog 3.0.
rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-3.0-repository_latest.rpm
Установите Graylog 3.0
Далее установите сервер Graylog 3.0.
yum install graylog-server
Настройка Graylog
После завершения установки необходимо выполнить несколько основных настроек.
К ним относятся установка секретного пароля и хеш пароля пользователя root (admin).
Для генерации секретного пароля вы можете использовать генератор случайных паролей pwgen.
Чтобы установить pwgen, выполните команду ниже (для CentOS 7 вам нужно установить репозитории EPEL, yum install epel-release).
yum install pwgen
Затем сгенерируйте секретный пароль, запустив pwgen, как показано ниже.
pwgen -N 1 -s 96 zYYdkClD9UOgtujYZ5btftmxvl1s3Hd9Q4DbX5TIX8hUYrvBtqEWR0iU1mCETv43TqTdyuEsgC9bENq1RBidWyGP9xZeohnQ
Сгенерировать хеш пароля администратора;
echo -n "YouStrongPAsswordhere" | sha256sum | cut -d" " -f1 e7d3685715939842749dd27b38d0ddb9706d4d14a5304ef9eee093780eab5df9
Затем откройте файл конфигурации сервера Graylog для редактирования.
vim /etc/graylog/server/server.conf
...
password_secret = zYYdkClD9UOgtujYZ5btftmxvl1s3Hd9Q4DbX5TIX8hUYrvBtqEWR0iU1mCETv43TqTdyuEsgC9bENq1RBidWyGP9xZeohnQ
...
root_password_sha2 = e7d3685715939842749dd27b38d0ddb9706d4d14a5304ef9eee093780eab5df9
...
Если вам нужен открытый доступ к Graylog, задайте правильный IP-адрес для сервера Graylog для параметра http_bind_address.
# Default: 127.0.0.1:9000
#http_bind_address = 127.0.0.1:9000
http_bind_address = 192.168.43.98:9000
Если вы работаете с одним узлом Elasticsearch, не забудьте установить значение для elasticsearch_shards равное 1.
#elasticsearch_shards = 4
elasticsearch_shards = 1
Если firewalld работает, обязательно откройте TCP-порт 9200, чтобы разрешить внешний доступ.
firewall-cmd --add-port=9200/tcp --permanent firewall-cmd --reload
В его основных настройках речь идет только о конфигурации Graylog.
Запуск Graylog
Выполните команды ниже, чтобы запустить и включить сервер Graylog при перезагрузке системы.
systemctl start graylog-server systemctl enable graylog-server
Доступ к веб-интерфейсу Graylog
Теперь, когда сервер Graylog запущен, вы можете получить к нему доступ через браузер по адресу: http://<server-IP>: 9000.
Войдите с именем пользователя admin и паролем, чей хэш вы сгенерировали выше.
Когда вы войдете в систему, вы попадете на панель управления Graylog.
После установки пароля в монго пишет ERROR: Unable to connect to MongoDB. Is it running and the configuration correct?