简单易懂易操作的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

成功!

相关推荐
电商API_180079052471 分钟前
构建高效可靠的电商 API:设计原则与实践指南
运维·服务器·爬虫·数据挖掘·网络爬虫
晓枫-迷麟31 分钟前
【nano与Vim】常用命令
linux·编辑器·vim
tianyuanwo37 分钟前
Ansible自动化运维全解析:从设计哲学到实战演进
运维·自动化·ansible
LucienShui1 小时前
Webhook 配置备忘
linux·运维·webhook
LanLance1 小时前
ES101系列09 | 运维、监控与性能优化
java·运维·后端·elasticsearch·云原生·性能优化·golang
Clownseven1 小时前
“轻量应用服务器” vs. “云服务器CVM”:小白入门腾讯云,哪款“云机”更适合你?(场景、配置、价格对比解析)
运维·服务器·腾讯云
Leo.yuan2 小时前
API是什么意思?如何实现开放API?
大数据·运维·数据仓库·人工智能·信息可视化
超级土豆粉2 小时前
从0到1写一个适用于Node.js的User Agent生成库
linux·ubuntu·node.js
PH_modest2 小时前
【Linux跬步积累】—— 网络编程套接字(二)
linux·运维·网络
itachi-uchiha2 小时前
使用vsftpd搭建FTP服务器(TLS/SSL显式加密)
运维·服务器·ssl