环境准备:
1.操作系统:centost 8
2.yum更新:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
yum clean all
yum makecache
3.关闭防火墙
setenforce 0
sed -i"s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
iptables -F
service iptables save
systemctl disabled firewalld
systemctl stop firewalld
4.安装MongoDB
vi mongodb-org.repo
[mongodb-org-4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
yum install mongodb-org
systemctl status/stop/start mongod
默认数据目录/var/lib/mongo 日志目录 /var/log/mongod/mongod.log 配置文件/etc/mongod.conf
该数据的方法需要进一步测试,我改变后,启动异常。
5.安装Elasticsearch
[root@bogon yum.repos.d]# cat elasticsearch.repo
[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
yum -y install elasticsearch-oss
改配置文件
vi /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog
action.auto_create_index: false
测试后action.auto_create_index: false添加上去,启动elasticsearch失败。于是删除了此条配置。可能是elasticsearch7没有此参数配置项。
文件系统路径 | |
---|---|
配置 | /etc/elasticsearch |
JVM 设置 | /etc/default/elasticsearch |
数据文件 | /var/lib/elasticsearch/data |
日志文件 | /var/log/elasticsearch/ |
验证:curl -X GET “localhost:9200/”
6.Graylog安装配置
要安装Graylog服务器,首先开始安装Graylog存储库,如下所示:
sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-4.1-repository_latest.rpm
添加存储库后,如图所示安装Graylog服务器。
sudo yum install -y graylog-server
成功安装后,可以通过运行以下命令来确认有关Graylog服务器的更多详细信息:
rpm -qi graylog-server
创建两个密码用于graylog使用
密码1:使用pwgen -N 1 -s 96 创建一个密码
密码2:使用如下命令创建密码2
echo -n "Enter Password: " && head -1
或者echo -n WOAIgray@123 | sha256sum
password_secret = 密码1
root_password_sha2 = 密码2
data_dir = /data/graydata
http_bind_address = 10.10.10.187:9000
http_publish_uri = http://10.10.10.187:9000/
elasticsearch_hosts = http://10.10.10.187:9200
10.10.10.187虽然是本机,但是也没有填写127.0.0.1
password_secret: 这个是要求 8位以上的,不够 8 位启动会报错,根据自己需要设。
root_password_sha2: 这个是要输入上面密码的 sha256 对应密文,可以直接用工具算,例如:echo -n "4EIJkaHtdCnH0NeF" | sha256sum
data_dir: Graylog 的数据都存放在哪里。
http_bind_address: 是否固定监听 IP。
http_publish_uri: 外网的访问地址,这个地址在查询的时候会用到,比如 Graylog 请求自己的 API 的时候。
elasticsearch_hosts: ES 的地址,因为我们是同服务器部署,所以直接是127。如果你不在本机,这里也要对应改写。
sudo systemctl daemon-reload
sudo systemctl start graylog-server
sudo systemctl enable graylog-server
注意一下几点:
1.内网的其他机器访问graylog的9000端口,或是访问es的9200端口不同时,是由于防火墙的拦截,使用
sudo firewall-cmd --permanent --add-port=9200/tcp
sudo firewall-cmd --permanent --add-port=9000/tcp对其开放
2.es的配置修改了几处,
配置文件除了cluster.name: graylog 还需要配置如下几个参数
vi /etc/graylog/server/elasticsearch.yml
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["10.10.10.187"]
3.主机graylog服务器的时区问题
timedatectl set-timezone Asia/Shanghai
简单的测试,
进入 System > Inputs > Raw/Plaintext TCP | Launch new input
取名"tcp 5555" 完成创建
点击界面绿色的“”“start input”
graylog服务器上执行sudo firewall-cmd --permanent --add-port=5555/tcp
终端10.10.10.56上输入 echo 'liuyabg ' | nc 10.10.10.187 5555
到graylog-web上查看search下 就会有图标和数据信息了,