关闭防火墙
systemctl stop firewalld systemctl disable firewalld
关闭内核安全机制
sed -i "s/.*SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config reboot
修改主机名
第一台机器 hostnamectl set-hostname es01 第二台机器 hostnamectl set-hostname kibana 第三台机器 hostnamectl set-hostname filebeat
添加hosts映射
cat >> /etc/hosts << 'EOF' 192.168.93.128 es01 192.168.93.129 kibana 192.168.93.130 filebeat EOF一、部署ES
第一台机器部署ES
修改limit限制,添加系统
cat > /etc/security/limits.d/es.conf << EOF * soft nproc 655360 * hard nproc 655360 * soft nofile 655360 * hard nofile 655360 EOF
添加内核参数,并生成
cat >> /etc/sysctl.conf << EOF vm.max_map_count=655360 EOF sysctl -p
上传es包(在网上下载)
这里用的是7.14.0版本
mkdir -p /data/elasticsearch
tar zxvf elasticsearch-7.14.0-linux-x86_64.tar.gz -C /data/elasticsearch/
mkdir /data/elasticsearch/{data,logs}
修改配置文件
vi /data/elasticsearch/elasticsearch-7.14.0/config/elasticsearch.yml (以下是需要修改的内容,取消注释并修改) 17行 cluster.name: my-application 23行 node.name: es01 33行 path.data: /data/elasticsearch/data 37行 path.logs: /data/elasticsearch/logs 43行 bootstrap.memory_lock: false 56行 network.host: 0.0.0.0 61行 http.port: 9200 74行 cluster.initial_master_nodes: ["es01"]
启动(用root用户是启动不起来的,需要创建一个普通用户启动)
useradd es chown -R es:es /data/ su - es /data/elasticsearch/elasticsearch-7.14.0/bin/elasticsearch -d exit 退出普通用户 ss -nlpt (9200和9300端口监听了即可)
查看集群状态
curl 192.168.93.128:9200/_cluster/health?pretty status是green即可二、部署kibana
第二台机器部署
上传kibana包(在网上下载完毕后上传至虚拟机即可)
mkdir -p /data/kibana tar zxvf kibana-7.14.0-linux-x86_64.tar.gz -C /data/kibana/
修改配置文件
vi /data/kibana/kibana-7.14.0-linux-x86_64/config/kibana.yml 以下是需要修改的内容(取消注释并修改) 2行 server.port: 5601 7行 server.host: "0.0.0.0" 32行 elasticsearch.hosts: ["http://192.168.93.128:9200"] 36行 kibana.index: ".kibana"
启动(用root用户是启动不起来的,需要创建一个普通用户启动)
useradd kibana chown -R kibana:kibana /data/ su - kibana /data/kibana/kibana-7.14.0-linux-x86_64/bin/kibana &
去浏览器进行访问
kibana节点的IP:5601 有页面即可三、部署filbeat
第三台机器部署
上传filbeat包(在网上下载完毕后上传至虚拟机即可)
mkdir -p /data/filebeat tar zxvf filebeat-7.14.0-linux-x86_64.tar.gz -C /data/filebeat
备份配置文件,并修改
cd /data/filebeat/filebeat-7.14.0-linux-x86_64/
cp filebeat.yml{,.bak}
vi filebeat.yml
(删除原有所有内容,并添加以下内容)
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/messages
# 定义模板的相关信息
# 不允许自动生成模板
setup.template.enabled: false
# 生成index模板的名称
setup.template.name: "filebeat-test"
# 生成index模板的格式
setup.template.pattern: "filebeat-test-*"
# 7版本自定义ES的索引需要把ilm设置为false
setup.ilm.enabled: false
output.elasticsearch:
hosts: ["192.168.93.128:9200"]
index: "filebeat-test-%{+yyyy.MM.dd}"
启动
/data/filebeat/filebeat-7.14.0-linux-x86_64/filebeat -e -c filebeat.yml四、进行验证
在第一台机器进行
curl 192.168.93.128:9200/_cat/indices 能看到filebeat-test-2021.11.27即可
在浏览器的kibana页面进行验证
主页面如果显示一个Add data和Explore on my own,点击Explore on my own 点击左上角的三条横杠,选择Discover 点击Create index pattern 起名字框下方有一个filebeat-test-2021.11.27,将名字取为filebeat-test-* 名字写完后点击Next step 选择时间戳,点击下拉箭头选择第一个@timestamp 点击Create index pattern 点击左上角的三条横杠,选择Discover,能看到柱状图代表部署成功



