日志分析
ELK
elasticsearch :主要用于日志存储
logstash :主要用来收集日志 json xml .conf output
kibana :日志的展示
上传elasticsearch 以及jdk
新建el用户,默认无法使用root操作
useradd es
echo es | passwd --stdin es
jdk
tar -xf jdk-18_linux-x64_bin.tar.gz -C /usr/local/
mv /usr/local/jdk-18.0.2/ /usr/local/java .
vim /etc/profile
JAVA_HOME=/usr/local/java
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
上传包且解压 解压至/usr/local/
tar -xf elasticsearch-7.15.0-linux-x86_64.tar.gz -C /usr/local/
[root@es1 opt]# ls
elasticsearch-7.15.0-linux-x86_64.tar.gz
jdk-18_linux-x64_bin.tar.gz
修改jvm堆内存大小
vim /usr/local/es/config/jvm.options
-Xms 1g 最小
-Xmx 1g 最大
系统优化
vim /etc/security/limits.conf
* hard nofile 65536
* soft nofile 65536
* soft nproc 65536
* hard nproc 65536
增加最大内存映射数
vim /etc/sysctl.conf
vm.max_map_count=262144
[root@es1 config]# sysctl -p
vm.max_map_count = 262144
启动es
修改配置文件
cluster.name: huweiqi # 集群的名字 集群名字必须相同
node.name: node-1 #节点名称,各个节点不同
node.master: true # 指某个节点是否符合成文主节点
node.data: true
path.data: /opt/es1/data # 数据存储目录
path.logs: /opt/es1/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["192.168.1.8", "192.168.1.9"]
discovery.zen.ping_timeout: 150
iscovery.zen.fd.ping.retries: 10
http.core.enabled: true
http.cors.allow-origin: "*"
---
cluster.name: huweiqi # 集群的名字 集群名字必须相同
node.name: node-1 #节点名称,各个节点不同
node.master: true # 指某个节点是否符合成文主节点
node.data: true
path.data: /opt/es1/data # 数据存储目录
path.logs: /opt/es1/logs
bootstrap.memory_lock: true
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["192.168.1.8", "192.168.1.9"]
cluster.initial_master_nodes: ["192.168.1.8", "192.168.1.9"]
kibana
上传包 并解压 tar -xf kibana-7.15.0-linux-x86_64.tar.gz -C /usr/local/
编辑配置文件
vim config/kibana.yml
server.port: 5601 默认端口
server.host: "localhost"
elasticsearch.hosts: ["http://192.168.1.8:9200"]
kibana.index: ".kibana"
启动 也是无法使用root启动 记得 chown -R kibana 目录
logstash
收集定义输入日志
tar -xf logstash-7.15.0-linux-x86_64.tar.gz
./logstash -e 'input { stdin {} output { stdout {} } }'
终端的标准输入与输出
输出给es