zl程序教程

您现在的位置是:首页 >  工具

当前栏目

ELK日志(2)

日志 ELK
2023-09-14 09:15:48 时间

elasticsearch群集

状态颜色:
灰色:未连接
绿色:数据完整态
黄色:副本不完整
红色:数据分片不完整
紫色:数据分片复制过程
群集主机角色:
主节点master:负责管理调度
工作节点: 负责处理数据
默认情况,所有节点都是工作节点,即主节点也处理数据

拓扑图及node-1参考ELK(1)

node-2

  1. 安装es,步骤参考第一台,注意配置文件需要修改

[root@node-2 ~]# rpm -ivh /media/elk-6.6/elasticsearch-6.6.0.rpm 
[root@node-2 ~]# vim /etc/elasticsearch/elasticsearch.yml
node.name: node-2
path.data: /data/elasticsearch                  
path.logs: /var/log/elasticsearch               
bootstrap.memory_lock: true                             
network.host: 192.168.8.2,127.0.0.1   
http.port: 9200 
discovery.zen.ping.unicast.hosts: ["192.168.8.1", "192.168.8.2"]        #前面masterIP后面本机IP
discovery.zen.minimum_master_nodes: 2        #添加的值=节点数/2 + 1(注意:2前面空格)
  1. 创建数据目录,并修改权限

[root@node-2 ~]# mkdir -p /data/elasticsearch 
[root@node-2 ~]# chown -R elasticsearch.elasticsearch /data/elasticsearch/
  1. 分配锁定内存

[root@node-2 ~]# vim /etc/elasticsearch/jvm.options
-Xms1g        #分配最小内存    
-Xmx1g        #分配最大内存,官方推荐为物理内存的一半,但最大为32G
  1. 修改锁定内存后,无法重启,解决方法如下

[root@node-2 ~]# systemctl edit elasticsearch
[Service]
LimitMEMLOCK=infinity
F2保存退出
 
[root@node-2 ~]# systemctl daemon-reload
[root@node-2 ~]# systemctl restart elasticsearch
[root@node-2 ~]# netstat -anpt | grep 9200
tcp6       0      0 192.168.8.2:9200        :::*                    LISTEN      105374/java         
tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN      105374/java 

node-3

  1. 安装es,步骤参考第一台,注意配置文件需要修改

[root@node-3 ~]# rpm -ivh /media/elk-6.6/elasticsearch-6.6.0.rpm 
[root@node-3 ~]# vim /etc/elasticsearch/elasticsearch.yml
node.name: node-3
path.data: /data/elasticsearch                  
path.logs: /var/log/elasticsearch               
bootstrap.memory_lock: true                             
network.host: 192.168.8.3,127.0.0.1   
http.port: 9200 
discovery.zen.ping.unicast.hosts: ["192.168.8.1", "192.168.8.3"]    #前面masterIP后面本机IP
discovery.zen.minimum_master_nodes: 2       #添加的值=节点数/2 + 1(注意:2前面空格)
  1. 创建数据目录,并修改权限

[root@node-3 ~]# mkdir -p /data/elasticsearch 
[root@node-3 ~]# chown -R elasticsearch.elasticsearch /data/elasticsearch/
  1. 分配锁定内存

[root@node-3 ~]# vim /etc/elasticsearch/jvm.options
-Xms1g        #分配最小内存    
-Xmx1g        #分配最大内存,官方推荐为物理内存的一半,但最大为32G
  1. 修改锁定内存后,无法重启,解决方法如下

[root@node-3 ~]# systemctl edit elasticsearch
[Service]
LimitMEMLOCK=infinity
F2保存退出
[root@node-3 ~]# netstat -anpt | grep 9200
tcp6       0      0 192.168.8.3:9200        :::*                    LISTEN      105486/java         
tcp6       0      0 127.0.0.1:9200          :::*                    LISTEN      105486/java 

下图可以看到三个副本,分片处理,星号代表主节点,园代表从节点,健康状态为green。

监控命令

(1)查看索引信息

[root@node-1 ~]# curl -XGET '192.168.8.1:9200/_cat/indices?pretty'

(2)查看群集健康状态

[root@node-1 ~]# curl -XGET '192.168.8.1:9200/_cluster/health?pretty'

(3)统计群集节点

[root@node-1 ~]# curl -XGET '192.168.8.1:9200/_cat/nodes?human&pretty'

(4)查看群集所有节点详细信息

[root@node-1 ~]# curl -XGET '192.168.8.1:9200/_nodes/_all/info/jvm.process?human&pretty'

注意:企业环境使用脚本监控群集健康状态是否为green 或 节点数不匹配 就邮件报警。

(5)创建索引index1时,修改分片为3和副本数为2。

curl -X PUT 192.168.8.1:9200/index1  -H 'Content-Type: application/json' -d '{
    "settings" : {
        "index" : {
            "number_of_shards" : 3, 
            "number_of_replicas" : 2 
        }
    }
}'

访问浏览器确认

(6)针对已有索引,可修改副本数,不可改分片数。下面语句把index1的副本数由2改为1

curl -X PUT '192.168.8.1:9200/index1/_settings?pretty'  -H 'Content-Type: application/json' -d '{
  "settings": {
    "number_of_replicas": "1"
  }                          
}'

访问浏览器验证。