1 环境
这里使用的是虚拟机,系统是centos7,jdk11,es7.6.2
2 虚拟机安装centos及静态ip配置
3 JDK安装配置
4 先安装单机版的
4.1 上传es的压缩包并解压
tar -zxvf elasticsearch-7.6.2
4.2 配置文件
进入config目录
cd elasticsearch-7.6.2/config/
修改elasticsearch.yml
vi elasticsearch.yml
添加以下配置
# ================= Elasticsearch configuration ================= cluster.name: jcc_es_cluster node.name: es_node_01 network.host: 0.0.0.0 http.port: 9201 cluster.initial_master_nodes: ["es_node_01"] #如果是CentOS 6版本 加入以下两行 bootstrap.memory_lock: false bootstrap.system_call_filter: false
1)cluster.name:配置elasticsearch的集群名称,默认是elasticsearch。建议修改成一个有意义的名称
2)node.name:节点名,elasticsearch会默认随机指定一个名字,建议指定一个有意义的名称,方便管理
3)network.host:设置为0.0.0.0允许外网访问
4)http.port::Elasticsearch的http访问端口
5)cluster.initial_master_nodes:初始化新的集群时需要此配置来选举master
4.3 添加普通用户
因为安全问题,Elasticsearch 不允许root用户直接运行,所以要创建新用户,在root用户中创建新用户,执行如下命令
passwd icoding #为icoding用户设置密码
passwd icoding #为icoding用户设置密码
#为这个用户授权
chown -R icoding:icoding /usr/local/programs/elasticsearch-7.6.2
4.4 为普通用户做更多配置
新创建的icoding用户最大可创建文件数太小,最大虚拟内存太小,切换到root用户,编辑下列配置文件,添加类似如下内容
4.4.1 最大可创建文件数太小配置
#1.===最大可创建文件数太小====== vi /etc/security/limits.conf #在文件末尾中增加下面内容 icoding soft nofile 65536 icoding hard nofile 65536
#==== vi /etc/security/limits.d/90-nproc.conf #在文件末尾中增加下面内容 icoding soft nofile 65536 icoding hard nofile 65536 * hard nproc 4096 #注:*代表Linux所有用户名称
4.4.2 最大虚拟内存太小配置
#2.===最大虚拟内存太小==== vi /etc/sysctl.conf #在文件中增加下面内容 vm.max_map_count=655360 #重新加载,输入下面命令: sysctl -p
4.5 启动
4.5.1 切换到icoding用户启动
su icoding
4.5.2 启动
cd /usr/local/programs/elasticsearch-7.6.2/bin
./elasticsearch
4.6 访问
http://192.168.28.110:9201/
4.7 启动遇到错误
Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version
原因是垃圾回收器版本过低
进入 elasticsearch的config文件夹,修改配置文件jvm.options
把垃圾回收期修改为G1
5 配置集群
5.1 简要说明
总共三个节点:
es-node-01 192.168.28.110 9201 9700
es-node-02 192.168.28.111 9202 9800
es-node-03 192.168.28.112 9203 9900
5.2 在上面单机版的基础上修改配置文件
## 集群名称,保证唯一 cluster.name: jcc_es_cluster #### 节点名称,必须不一样 node.name: es_node_01 #是不是有资格成为主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #ip地址. network.host: 192.168.28.110 #端口 http.port: 9201 #内部节点之间沟通端口 transport.tcp.port: 9700 #es7.x 之后新增的配置,节点发现 discovery.seed_hosts: ["192.168.28.110:9700","192.168.28.111:9800","192.168.112:9900"] #es7.x 之后新增的配置,初始化一个新的集群时需要次配置来选举master cluster.initial_master_nodes: ["es_node_01","es_node_02","es_node_03"] #如果是CentOS 6版本 加入以下两行 bootstrap.memory_lock: false bootstrap.system_call_filter: false #跨域 http.cors.enabled: true http.cors.allow-origin: "*"
5.3 清空data和logs
删除data文件夹和logs文件夹下的所有文件,因为下面要复制过去的,不清空会有问题
5.4 克隆虚拟机
先关机,再右键虚拟机实例ES-NODE01,选择管理,选择克隆
下一步
选择创建完成克隆
填写名称和路径
完成克隆
5.5 进入新的虚拟机,配置ip
把ip修改为192.168.28.111
5.6 修改es配置文件
# ================= Elasticsearch configuration ================= ## 集群名称,保证唯一 cluster.name: jcc_es_cluster #### 节点名称,必须不一样 node.name: es_node_02 #是不是有资格成为主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #ip地址. network.host: 192.168.28.111 #端口 http.port: 9202 #内部节点之间沟通端口 transport.tcp.port: 9800 #es7.x 之后新增的配置,节点发现 discovery.seed_hosts: ["192.168.28.110:9700","192.168.28.111:9800","192.168.112:9900"] #es7.x 之后新增的配置,初始化一个新的集群时需要次配置来选举master cluster.initial_master_nodes: ["es_node_01","es_node_02","es_node_03"] #如果是CentOS 6版本 加入以下两行 bootstrap.memory_lock: false bootstrap.system_call_filter: false #跨域 http.cors.enabled: true http.cors.allow-origin: "*"
5.7 重复上面的操作,再克隆一个
修改ip为192.168.28.112
5.8 修改es配置文件
# ================= Elasticsearch configuration ================= ## 集群名称,保证唯一 cluster.name: jcc_es_cluster #### 节点名称,必须不一样 node.name: es_node_03 #是不是有资格成为主节点 node.master: true #是否存储数据 node.data: true #最大集群节点数 node.max_local_storage_nodes: 3 #ip地址. network.host: 192.168.28.112 #端口 http.port: 9203 #内部节点之间沟通端口 transport.tcp.port: 9900 #es7.x 之后新增的配置,节点发现 discovery.seed_hosts: ["192.168.28.110:9700","192.168.28.111:9800","192.168.112:9900"] #es7.x 之后新增的配置,初始化一个新的集群时需要次配置来选举master cluster.initial_master_nodes: ["es_node_01","es_node_02","es_node_03"] #如果是CentOS 6版本 加入以下两行 bootstrap.memory_lock: false bootstrap.system_call_filter: false #跨域 http.cors.enabled: true http.cors.allow-origin: "*"
5.9 全部切换到用户icoding
su icoding
5.10 全部进入bin目录
cd /usr/local/programs/elasticsearch-7.6.2/bin
5.11 启动
./elasticsearch
5.12 访问
发现node.total是3,说明成功
标签:node,icoding,192.168,cluster,集群,ES,Linux,节点,es From: https://www.cnblogs.com/jthr/p/17204110.html