资讯动态

Elasticsearch 8 麒麟系统压缩包部署:单机与真集群实战(含默认安全配置)

发布时间:2026/10/31 7:00:57 来源:尧图企业网站定制
文章目录Elasticsearch 8 麒麟系统压缩包部署单机与真集群实战含默认安全配置一、系统前置准备所有节点都要执行1. 关闭防火墙 / SELinux测试环境建议关闭2. 调整内核参数3. 调整系统资源限制4. 创建专用运行用户5. 创建安装目录并解压6. 创建数据和日志目录二、单机部署配置三、真集群部署配置3 节点node-1192.168.1.10配置node-2192.168.1.11配置node-3192.168.1.12配置四、启动与验证1. 启动所有节点切换到 esuser 用户2. 获取初始密码ES 8 默认安全开启时3. 验证单机4. 验证集群五、常见问题排查六、写在最后Elasticsearch 8 麒麟系统压缩包部署单机与真集群实战含默认安全配置环境约定操作系统麒麟 V10x86_64 / aarch64 通用ES 版本8.x以 8.16.4 为例其他小版本同理安装方式tar.gz 压缩包JDKES 8 自带 OpenJDK无需单独安装如需自定义可设置JAVA_HOME集群规划3 节点真集群示例节点IPnode.name角色node-1192.168.1.10node-1master datanode-2192.168.1.11node-2master datanode-3192.168.1.12node-3master data实际部署时替换为你的真实 IP 和节点名即可。一、系统前置准备所有节点都要执行以下操作使用 root 执行。1. 关闭防火墙 / SELinux测试环境建议关闭systemctl stop firewalld systemctl disable firewalld setenforce0sed-is/SELINUXenforcing/SELINUXdisabled//etc/selinux/config2. 调整内核参数编辑/etc/sysctl.confvi/etc/sysctl.conf在文件末尾添加一行vm.max_map_count262144保存后执行以下命令使配置立即生效sysctl-pES 要求vm.max_map_count 262144否则启动会报 bootstrap check 失败。3. 调整系统资源限制编辑/etc/security/limits.confvi/etc/security/limits.conf在文件末尾添加以下内容* soft nofile 65536 * hard nofile 65536 * soft nproc 4096 * hard nproc 4096同时检查/etc/pam.d/common-session或对应 PAM 配置文件中是否包含以下行没有则补上session required pam_limits.so修改完成后退出当前用户重新登录即可生效。4. 创建专用运行用户ES 不允许 root 启动groupaddesgroupuseradd-m-gesgroup-s/bin/bash esuserpasswdesuser5. 创建安装目录并解压mkdir-p/opt/eschown-Resuser:esgroup /opt/es# 以 esuser 用户解压su- esusertar-zxvfelasticsearch-8.16.4-linux-x86_64.tar.gz-C/opt/es/6. 创建数据和日志目录mkdir-p/opt/es/data /opt/es/logschown-Resuser:esgroup /opt/es二、单机部署配置编辑/opt/es/elasticsearch-8.16.4/config/elasticsearch.ymlcluster.name:es-singlenode.name:node-1path.data:/opt/es/datapath.logs:/opt/es/logsnetwork.host:0.0.0.0http.port:9200discovery.type:single-node关键点discovery.type: single-node告诉 ES 以单机模式运行跳过集群发现检查。ES 8 默认开启xpack.security.enabled和传输层 SSL单机测试如需关闭可追加xpack.security.enabled:falsexpack.security.transport.ssl.enabled:false三、真集群部署配置3 节点所有节点的cluster.name必须一致node.name必须唯一。node-1192.168.1.10配置cluster.name:es-clusternode.name:node-1path.data:/opt/es/datapath.logs:/opt/es/logsnetwork.host:0.0.0.0http.port:9200transport.port:9300discovery.seed_hosts:[192.168.1.10:9300,192.168.1.11:9300,192.168.1.12:9300]cluster.initial_master_nodes:[node-1,node-2,node-3]node-2192.168.1.11配置cluster.name:es-clusternode.name:node-2path.data:/opt/es/datapath.logs:/opt/es/logsnetwork.host:0.0.0.0http.port:9200transport.port:9300discovery.seed_hosts:[192.168.1.10:9300,192.168.1.11:9300,192.168.1.12:9300]cluster.initial_master_nodes:[node-1,node-2,node-3]node-3192.168.1.12配置cluster.name:es-clusternode.name:node-3path.data:/opt/es/datapath.logs:/opt/es/logsnetwork.host:0.0.0.0http.port:9200transport.port:9300discovery.seed_hosts:[192.168.1.10:9300,192.168.1.11:9300,192.168.1.12:9300]cluster.initial_master_nodes:[node-1,node-2,node-3]关键点说明discovery.seed_hosts列出所有候选主节点的地址每个节点都要配。cluster.initial_master_nodes仅在集群首次启动时使用列出参与首次 master 选举的节点名必须与node.name完全一致。集群形成后建议从配置中移除后续重启或扩容不再需要。transport.port默认 9300节点间通信使用需确保防火墙放行。四、启动与验证1. 启动所有节点切换到 esuser 用户su- esusercd/opt/es/elasticsearch-8.16.4/bin# 前台启动方便看日志./elasticsearch# 或后台启动./elasticsearch-d2. 获取初始密码ES 8 默认安全开启时首次启动日志中会打印elastic用户的随机密码形如The generated password for the elastic built-in superuser is: xxxxxx务必保存。如果错过了可以重置./elasticsearch-reset-password-uelastic3. 验证单机# 关闭安全时curlhttp://localhost:9200# 开启安全时ES 8 默认 HTTPScurl-k-uelastic:你的密码 https://localhost:92004. 验证集群curl-k-uelastic:你的密码 https://192.168.1.10:9200/_cluster/health?pretty返回status: green且number_of_nodes: 3即集群正常。五、常见问题排查现象原因解决can not run elasticsearch as root用 root 启动创建普通用户chown目录后切换用户启动vm.max_map_count too low内核参数未调整sysctl -w vm.max_map_count262144并写入/etc/sysctl.confmax file descriptors too low文件描述符限制不足修改/etc/security/limits.conf重新登录failed to obtain node locks已有实例在运行或数据目录冲突ps -ef | grep elastic查进程kill 后清理锁文件bootstrap checks failed discovery 相关绑定了非回环地址但未配集群发现配置discovery.seed_hosts和cluster.initial_master_nodes或单机用discovery.type: single-node浏览器访问 9200 被拒绝 / Empty replyES 8 默认 HTTPS用https://访问或关闭xpack.security.http.ssl.enabled节点加入不了集群cluster.name不一致 / 端口不通 /node.name重复逐一对比配置telnet IP 9300测连通性启动后内存被 OOM KillJVM 堆内存设置过大编辑config/jvm.options-Xms和-Xmx设为物理内存 50%不超过 31GB六、写在最后ES 8 和 7 最大的使用差异就是默认开启安全认证和 HTTPS很多老教程直接关掉了xpack.security生产环境不建议这么做。如果是内网测试图方便可以关但生产集群建议保留默认安全配置配合证书和角色权限使用。另外cluster.initial_master_nodes只在全新集群第一次启动时需要集群跑起来之后记得从配置里删掉避免后续扩容时产生歧义。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑