本章目录
一.案例环境:配置ELK日志分析系统
- 配置和安装ELK日志分析系统,安装集群方式,2个elasticsearch节点,并监控apache服务器日志
环境搭建:
主机 操作系统 主机名 IP地址 主要软件
服务器 Centos7.4 node1 20.0.0.30 Elasticsearch Kibana
服务器 Centos7.4 node2 20.0.0.31 Elasticsearch
服务器 Centos7.4 apache 20.0.0.32 Logstash Apache
1.1:配置elasticsearch环境
登录node1
1.关闭防护墙,关闭核心防护(三台服务器都要配置)
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0
2.更改主机名(两台服务器修改为node1和node2)
[root@localhost ~]# hostnamectl set-hostname node1 ##更改主机名
[root@localhost ~]# su ##刷新
3.添加hosts文件,作映射(两个服务器都要设置)
[root@node1 ~]# vi /etc/hosts
20.0.0.30 node1
20.0.0.31 node2
4.检查java环境
[root@node1 ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)
node2和node1一样的设置,把名称修改即可
1.2:部署elasticsearch软件
###登录20.0.0.30### node1
1.安装elasticsearch---rpm包
上传elasticsearch-5.5.0.rpm包到/opt目录下
[root@node1]# cd /opt
[root@node1 opt]# rpm -ivh elasticsearch-5.5.0.rpm
2.加载系统服务
[root@node1 opt]# systemctl daemon-reload ##重载系统参数
[root@node1 opt]# systemctl enable elasticsearch.service
3.更改elasticsearch主配置文件
[root@node1 opt]# cp /etc/elasticsearch/elasticsearch.yml /etc/elasticsearch/elasticsearch.yml.bak ##备份配置文件
[root@node1 opt]# vim /etc/elasticsearch/elasticsearch.yml
shift+: 输入 set nu 显示行号
下面每一行都要去掉注释(#)
17 cluster.name: my-elk-cluster ##集群名字
23 node.name: node1 ##节点名字
33 path.data: /data/elk_data ##数据存放路径
37 path.logs: /var/log/elasticsearch/ ##日志存放路径
43 bootstrap.memory_lock: false ##不在启动的时候锁定内容:锁定物理内存地址,防止es内存被交换出去
55 network.host: 0.0.0.0 ##提供服务绑定的ip地址,0.0.0.0代表所有地址
59 http.port: 9200 ###侦听端口为9200
68 discovery.zen.ping.unicast.hosts: ["node1", "node2"] ##这边是节点名称,可不是主机名称 (集群内部相互通信) ###集群发现通过单播实现
wq
4.创建数据库存放路径并授权
[root@node1 opt]# mkdir -p /data/elk_data
rpm装 elasticsearch程序时它默认给你创建了一个用户
[root@node1 opt]# id elasticsearch ##查看用户 (这个用户专门管理es)
uid=990(elasticsearch) gid=985(elasticsearch) 组=985(elasticsearch)
将这个文件授权给这个用户
[root@node1 opt]# chown elasticsearch:elasticsearch /data/elk_data/
5.启动elasticsearch
[root@node1 opt]# systemctl start elasticsearch.service
[root&