1.1部署es:9200

安装es:root用户:

1.布署java环境 - 所有节点

wget https://d6.injdk.cn/oraclejdk/8/jdk-8u341-linux-x64.rpm

yum localinstall jdk-8u341-linux-x64.rpm -y

java -version

2.下载安装elasticsearch - 所有节点

wget ftp://10.3.148.254/Note/Elk/elasticsearch-6.4.1.tar.gz

2.1.创建elk用户

useradd elk # elasticsearch不能以root用户运行,仅普通用户运行

echo 123|passwd --stdin elk

tar xf elasticsearch-6.4.1.tar.gz -C /usr/local/

ln -s /usr/local/elasticsearch-6.4.1 /usr/local/es

chown -R elk.elk /usr/local/es/*

2.2.创建数据目录

mkdir -p /data/es/{data,logs}

chown -R elk.elk /data/es/

修改es配置:elk用户

1.节点一配置es-master

su - elk

egrep -v "^#" /usr/local/es/config/elasticsearch.yml

cluster.name: es-cluster # 集群名称,各节点配置相同集群名称

node.name: node-1 # 节点名称,各节点配置不同。

node.master: true # 指示某个节点是否符合成为主节点的条件

node.data: true # 指示节点是否为数据节点。数据节点包含并管理索引的一部分

path.data: /data/es/data # 数据存储目录

path.logs: /data/es/logs # 日志存储目录

bootstrap.memory_lock: true # 内存锁定,是否禁用交换

network.host: 0.0.0.0 # 绑定节点IP

http.port: 9200 # rest api端口

discovery.zen.ping.unicast.hosts: ["node-1", "node-2"] # 提供其他 Elasticsearch 服务节点的单点广播发现功能

#bootstrap.system_call_filter 系统调用过滤器。

#discovery.zen.minimum_master_nodes 集群中可工作的具有Master节点资格的最小数量,官方的推荐值是(N/2)+1,其中N是具有master资格的节点的数量。

#discovery.zen.ping_timeout 节点在发现过程中的等待时间。

#discovery.zen.fd.ping_retries 节点发现重试次数。

#http.cors.enabled 是否允许跨源 REST 请求,用于允许head插件访问ES。

#http.cors.allow-origin 允许的源地址。

2.节点二配置es-data

su - elk

egrep -v "^#" /usr/local/es/config/elasticsearch.yml

cluster.name: es-cluster

node.name: node-2

node.master: false

node.data: true

path.data: /data/es/data

path.logs: /data/es/logs

bootstrap.memory_lock: true

network.host: 0.0.0.0

http.port: 9200

discovery.zen.ping.unicast.hosts: ["node-1", "node-2"]

配置环境:root用户:

1.两台机器要互相解析;节点名和主机名一样,就无需解析!

节点一:

hostnamectl set-hostname es1

vim /etc/hosts

192.168.148.132 es1 node-1

192.168.148.133 es2 node-2

节点二:

hostnamectl set-hostname es2

vim /etc/hosts

192.168.148.133 es2 node-2

192.168.148.132 es1 node-1

更改性能要求:所有节点

2.进程最大可同时打开文件数太小,至少要65536

echo "elk soft nofile 65536" >> /etc/security/limits.conf

echo "elk hard nofile 65536" >> /etc/security/limits.conf

3.请求锁内存失败,系统默认能让进程锁住的最大内存为64k

echo "elk soft memlock unlimited" >> /etc/security/limits.conf

echo "elk hard memlock unlimited" >> /etc/security/limits.conf

4.elk用户拥有的内存权限太小了,至少需要262114

echo vm.max_map_count=262144 >> /etc/sysctl.conf

启动服务:elk用户:

1.先启动master节点, 再启动data节点

su - elk

$ /usr/local/es/bin/elasticsearch -d #-d以守护进程方式运行

su - elk -c '/usr/local/es/bin/elasticsearch -d'

2.验证端口:9200:传输数据;9300:集群通信

netstat -tln #elk用户不能+p

tcp6 0 0 :::9200 :::* LISTEN 1238/java

tcp6 0 0 :::9300 :::* LISTEN 1238/java

3.查看服务情况:

curl 192.168.148.132:9200

查看集群的详细信息:

curl 192.168.148.132:9200/_cluster/health?pretty

number_of_nodes 和 number_of_data_nodes 这个命名完全是自描述的。

active_primary_shards 指出你集群中的主分片数量。这是涵盖了所有索引的汇总值。

active_shards 是涵盖了所有索引的所有分片的汇总值,即包括副本分片。

relocating_shards 显示当前正在从一个节点迁往其他节点的分片的数量。通常来说应该是0,不过在ES发现集群不太均衡时,该值会上涨。

initializing_shards 是刚刚创建的分片的个数。比如,当你刚创建第一个索引,分片都会短暂的处于 initializing 状态。

unassigned_shards 是已经在集群状态中存在的分片,但是实际在集群里又找不着。通常未分配分片的来源是未分配的副本。

关于集群健康状况

响应信息中最重要的一块就是 status字段。状态可能是下列三个值之一:

green - 所有的主分片和副本分片都正常运行。

yellow - 所有的主分片都正常运行,但不是所有的副本分片都正常运行。

red - 有主分片没能正常运行。

相关推荐
七夜zippoe5 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
Fcy6486 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满6 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠7 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9037 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
珠海西格电力科技8 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市
释怀不想释怀8 小时前
Linux环境变量
linux·运维·服务器
zzzsde8 小时前
【Linux】进程(4):进程优先级&&调度队列
linux·运维·服务器
聆风吟º10 小时前
CANN开源项目实战指南:使用oam-tools构建自动化故障诊断与运维可观测性体系
运维·开源·自动化·cann
NPE~10 小时前
自动化工具Drissonpage 保姆级教程(含xpath语法)
运维·后端·爬虫·自动化·网络爬虫·xpath·浏览器自动化