集群搭建(基础版本)
安装包下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch
官方文档地址:Quick start | Elasticsearch Guide [8.11] | ElasticElasticsearchQuick start | Elasticsearch Guide [8.11] | Elastic
limits.conf:
执行vim /etc/security/limits.conf (按需配置)
添加以下内容:
##修改用来启动elasticsearch的用户的文件描述符数量 * soft nofile 65536 * hard nofile 131072 #进程可以创建的线程数 * soft nproc 2048 * hard nproc 4096 在以下配置文件中添加参数: vim /etc/sysctl.conf vm.max_map_count=655360 执行sysctl -p #重启服务配置 systemctl daemon-reload
JVM运行内存配置(按需配置)
进入config目录下的jvm.options文件 增加参数: -Xms2g -Xmx2g
集群配置:
#Node节点1: http.cors.enabled: true http.cors.allow-origin: "*" #节点1的配置信息: #集群名称,保证唯一 cluster.name: my-elasticsearch #节点名称,必须不一样 node.name: node-1 #必须为本机的ip地址 network.host: localhost #服务端口号,在同一机器下必须不一样 http.port: 9200 #设置集群自动发现机器ip集合 discovery.seed_hosts: ["localhost:9300","localhost:9301","localhost:9302"] #默认先以node-1作为master结点 集群初始化主节点,用于第一次集群选主 cluster.initial_master_nodes: ["node-1"] # 允许通配符删除索引 按需配置 action.destructive_requires_name: true #锁定内存 锁定物理内存地址,防止es内存被交换,从而提高ES性能;但是设置以后因为服务器配置不同可能会启动报错 按需配置 bootstrap.memory_lock: true #设置节点角色 es8版本提供的角色有:master(管理集群的状态信息)、data(保存集群的索引数据)、data_content(内容数据节点)、data_hot(热数据节点)、data_warm(温数据节点)、data_cold(冷数据节点)、data_frozen(冻结数据节点)、ingest(堆栈监控和摄取管道)、ml(机器学习功能)、remote_cluster_client(跨集群搜索和跨集群复制)、transform(应用程序和转换)、voting_only(仅投票节点) node.roles: master #日志和索引存储地址 自定义 path.data: xxx/data path.logs: xxx/logs #Enable security features 如需添加认证需打开xpack xpack.security.enabled: false xpack.security.enrollment.enabled: false #Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents 客户端连接加密 xpack.security.http.ssl: enabled: false keystore.path: certs/http.p12 #Enable encryption and mutual authentication between cluster nodes 集群内节点通讯加密 xpack.security.transport.ssl: enabled: false verification_mode: certificate keystore.path: certs/transport.p12 truststore.path: certs/transport.p12
#Node节点2: http.cors.enabled: true http.cors.allow-origin: "*" #节点1的配置信息: #集群名称,保证唯一 cluster.name: my-elasticsearch #节点名称,必须不一样 node.name: node-2 #必须为本机的ip地址 network.host: localhost #服务端口号,在同一机器下必须不一样 http.port: 9201 #设置集群自动发现机器ip集合 discovery.seed_hosts: ["localhost:9300","localhost:9301","localhost:9302"] #默认先以node-1作为master结点 集群初始化主节点,用于第一次集群选主 cluster.initial_master_nodes: ["node-1"] # 允许通配符删除索引 按需配置 action.destructive_requires_name: true #锁定内存 锁定物理内存地址,防止es内存被交换,从而提高ES性能;但是设置以后因为服务器配置不同可能会启动报错 按需配置 bootstrap.memory_lock: true #设置节点角色 es8版本提供的角色有:master(管理集群的状态信息)、data(保存集群的索引数据)、data_content(内容数据节点)、data_hot(热数据节点)、data_warm(温数据节点)、data_cold(冷数据节点)、data_frozen(冻结数据节点)、ingest(堆栈监控和摄取管道)、ml(机器学习功能)、remote_cluster_client(跨集群搜索和跨集群复制)、transform(应用程序和转换)、voting_only(仅投票节点) node.roles: data #Enable security features 如需添加认证需打开xpack xpack.security.enabled: false xpack.security.enrollment.enabled: false #Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents 客户端连接加密 xpack.security.http.ssl: enabled: false keystore.path: certs/http.p12 #Enable encryption and mutual authentication between cluster nodes 集群内节点通讯加密 xpack.security.transport.ssl: enabled: false verification_mode: certificate keystore.path: certs/transport.p12 truststore.path: certs/transport.p12
#Node节点3: http.cors.enabled: true http.cors.allow-origin: "*" #节点1的配置信息: #集群名称,保证唯一 cluster.name: my-elasticsearch #节点名称,必须不一样 node.name: node-3 #必须为本机的ip地址 network.host: localhost #服务端口号,在同一机器下必须不一样 http.port: 9202 #设置集群自动发现机器ip集合 discovery.seed_hosts: ["localhost:9300","localhost:9301","localhost:9302"] #默认先以node-1作为master结点 集群初始化主节点,用于第一次集群选主 cluster.initial_master_nodes: ["node-1"] # 允许通配符删除索引 按需配置 action.destructive_requires_name: true #锁定内存 锁定物理内存地址,防止es内存被交换,从而提高ES性能;但是设置以后因为服务器配置不同可能会启动报错 按需配置 bootstrap.memory_lock: true #设置节点角色 es8版本提供的角色有:master(管理集群的状态信息)、data(保存集群的索引数据)、data_content(内容数据节点)、data_hot(热数据节点)、data_warm(温数据节点)、data_cold(冷数据节点)、data_frozen(冻结数据节点)、ingest(堆栈监控和摄取管道)、ml(机器学习功能)、remote_cluster_client(跨集群搜索和跨集群复制)、transform(应用程序和转换)、voting_only(仅投票节点) node.roles: data #Enable security features 如需添加认证需打开xpack xpack.security.enabled: false xpack.security.enrollment.enabled: false #Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents 客户端连接加密 xpack.security.http.ssl: enabled: false keystore.path: certs/http.p12 #Enable encryption and mutual authentication between cluster nodes 集群内节点通讯加密 xpack.security.transport.ssl: enabled: false verification_mode: certificate keystore.path: certs/transport.p12 truststore.path: certs/transport.p12