简单易懂易操作的liunx安装es集群

一、操作前提

因为我之前试过很多次,失败过很多次,所以跟我一样的最好先杀死之前占用的端口,害怕出问题的可以先拍个快照

1.查看占用占用端口的进程

lsof -i :5601

lsof -i :9200

2.终止所有占用的端口

把上面出现的所有进程的进程号kill

kill -9 进程号

二、环境准备

1.准备两台服务器

我准备的两台centos,一台IP是10.1.1.58,另一台IP是10.1.1.68

2.关闭防火墙

systemctl stop firewalld && systemctl disable firewalld

3.关闭selinux

vi /etc/sysconfig/selinux

三、安装es之前的准备工作

1.安装java

sudo yum install java-1.8.0-openjdk

2.验证java

java -version

3.下载解压es

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.tar.gz

tar -xvf elasticsearch-6.5.4.tar.gz

4.创建用户和组

#创建组

groupadd es

#创建用户 组 密码

useradd es -g es -p es

#移动文件目录 把解压的elasticsearch-6.5.4 移到 /home/es下

mv elasticsearch-6.5.4 /home/es

#赋值权限

chown -R es:es /home/es/elasticsearch-6.5.4

chmod -R 755 /home/es/elasticsearch-6.5.4

5.修改sysctl.conf

vi /etc/sysctl.conf

需要在:/etc/sysctl.conf 添加上:vm.max_map_count=262144

最后启动配置:sysctl -w vm.max_map_count=262144

6.修改limits.conf

vim /etc/security/limits.conf

配置内容 *表示所有用户生效

* soft nofile 65536

* hard nofile 65536

重新登录即可生效

reboot

可使用命令查看是否生效

ulimit -H -n

四、安装es

1.配置文件

vi /home/es/elasticsearch-6.5.4/config/elasticsearch.yml

文件说明

cluster.name: my-application

node.name: node-1

network.host: 0.0.0.0

discovery.zen.ping.unicast.hosts: ["host1", "host2"]

discovery.zen.minimum_master_nodes: 2

  • cluster.name: 集群名称,所有节点必须相同。

  • node.name: 当前节点的名称。

  • network.host: 节点绑定的 IP 地址。

  • discovery.zen.ping.unicast.hosts: 用于发现其他节点的主机列表。

  • discovery.zen.minimum_master_nodes: 主节点数量的最小值,通常是 (节点总数 / 2) + 1。

配置样例:

第一台服务器

cluster.name: my-es-1

node.name: node-1

network.host: 10.1.1.68

http.port: 9200

discovery.zen.ping.unicast.hosts: ["10.1.1.58","10.1.1.68"]

discovery.zen.minimum_master_nodes: 2

第二台服务器

cluster.name: my-es-1

node.name: node-2

network.host: 10.1.1.58

http.port: 9200

discovery.zen.ping.unicast.hosts: ["10.1.1.58","10.1.1.68"]

discovery.zen.minimum_master_nodes: 2

2.切换用户

su es

进去目录

cd /home/es/elasticsearch-6.5.4/bin

执行命令

./elasticsearch -d

3.另一台安装

另外一台服务按照上面的步骤 一样操作

五、测试

在任意一台服务上执行:

注意 ip地址修改成自己的ip

curl -X GET "10.1.1.58:9200/_cluster/health?pretty"

curl -X GET "10.1.1.68:9200/_cluster/health?pretty"

最后在任意一个浏览器输入http://10.1.1.58:9200

成功!

相关推荐
db_murphy1 小时前
Oracle数据块8KB、OS默认认块管理4KB,是否需调整大小为一致?
linux
liulilittle2 小时前
C++ TAP(基于任务的异步编程模式)
服务器·开发语言·网络·c++·分布式·任务·tap
小阳睡不醒4 小时前
小白成长之路-部署Zabbix7(二)
android·运维
mCell4 小时前
从删库到跑路?这50个Linux命令能保你职业生涯
linux·windows·macos
杰克逊的日记4 小时前
GPU运维常见问题处理
linux·运维·gpu
caolib4 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
奇舞精选4 小时前
k8s基本概念初探
运维
誰能久伴不乏5 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔5 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mmoyula5 小时前
【RK3568 PWM 子系统(SG90)驱动开发详解】
android·linux·驱动开发