2026/1/14 3:32:45
网站建设
项目流程
商城站时刻表,网站服务器响应时间过长,在线平面图设计,30天网站建设实录视频在 openEuler 系统中安装 Elasticsearch#xff08;以下简称 ES#xff09;#xff0c;我将以 ES 7.17.5#xff08;长期支持版#xff0c;适配性强#xff09; 为例#xff0c;提供从环境准备、安装配置到启动验证的完整步骤#xff0c;同时兼顾 openEuler 的系统特性…在 openEuler 系统中安装 Elasticsearch以下简称 ES我将以ES 7.17.5长期支持版适配性强为例提供从环境准备、安装配置到启动验证的完整步骤同时兼顾 openEuler 的系统特性如 aarch64/x86_64 架构适配、权限管理等。一、环境准备必做避免安装后启动失败检查系统架构与依赖openEuler 分为aarch64鲲鹏等 ARM 架构和x86_64x86 架构ES 提供对应架构的安装包先确认系统架构bash运行查看系统架构uname -m输出aarch64 或 x86_64关闭防火墙与 SELinux测试环境生产环境可开放指定端口bash运行关闭防火墙systemctl stop firewalldsystemctl disable firewalld临时关闭SELinuxsetenforce 0永久关闭SELinux修改后需重启sed -i ‘s/^SELINUXenforcing/SELINUXdisabled/’ /etc/selinux/config3. 调整系统内核参数ES 对系统资源有特定要求编辑/etc/security/limits.conf添加以下内容提升用户资源限制bash运行vi /etc/security/limits.confiniElasticsearch 用户资源限制elasticsearch soft nofile 65535elasticsearch hard nofile 65535elasticsearch soft nproc 4096elasticsearch hard nproc 4096elasticsearch soft memlock unlimitedelasticsearch hard memlock unlimited编辑/etc/sysctl.conf添加内核参数bash运行vi /etc/sysctl.confiniES 所需内核参数vm.max_map_count262144fs.file-max655350net.ipv4.ip_local_port_range1024 65535使内核参数生效bash运行sysctl -p二、安装 Elasticsearch方式 1使用二进制包安装推荐适配所有架构步骤 1下载对应架构的 ES 安装包bash运行先创建安装目录mkdir -p /usr/share/elasticsearchcd /usr/local/src若为x86_64架构wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.5-linux-x86_64.tar.gz若为aarch64架构鲲鹏wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.5-linux-aarch64.tar.gz步骤 2解压安装包bash运行替换为对应架构的包名x86_64架构tar -zxvf elasticsearch-7.17.5-linux-x86_64.tar.gz -C /usr/share/aarch64架构tar -zxvf elasticsearch-7.17.5-linux-aarch64.tar.gz -C /usr/share/重命名目录简化路径mv /usr/share/elasticsearch-7.17.5-* /usr/share/elasticsearch步骤 3创建专用运行用户ES 禁止 root 用户运行bash运行创建elasticsearch用户useradd -r -s /sbin/nologin elasticsearch赋予目录权限chown -R elasticsearch:elasticsearch /usr/share/elasticsearch方式 2使用 RPM 包安装适用于 x86_64/aarch64需配置 yum 源若偏好 RPM 包管理可配置 Elastic 的 yum 源后安装bash运行创建yum源文件vi /etc/yum.repos.d/elastic.repoini[elastic-7.x]nameElastic repository for 7.x packagesbaseurlhttps://artifacts.elastic.co/packages/7.x/yumgpgcheck1gpgkeyhttps://artifacts.elastic.co/GPG-KEY-elasticsearchenabled1autorefresh1typerpm-md安装 ESbash运行yum install elasticsearch-7.17.5 -yRPM包安装的目录为 /usr/share/elasticsearch与二进制包一致三、配置 Elasticsearch步骤 1修改核心配置文件elasticsearch.yml配置文件位于/usr/share/elasticsearch/config/elasticsearch.yml编辑如下bash运行vi /usr/share/elasticsearch/config/elasticsearch.ymlyaml1. 集群名称单节点也需配置cluster.name: my-es-cluster2. 节点名称自定义node.name: es-node-13. 网络配置允许外部访问network.host: 0.0.0.0 # 监听所有网卡默认仅本地127.0.0.1http.port: 9200 # HTTP端口4. 单节点模式测试环境生产环境需配置集群discovery.type: single-node5. 数据与日志存储路径可选默认在data和logs目录path.data: /var/lib/elasticsearchpath.logs: /var/log/elasticsearch6. 可选关闭X-Pack安全功能测试环境生产环境建议开启xpack.security.enabled: false步骤 2创建数据与日志目录并赋权bash运行创建目录mkdir -p /var/lib/elasticsearch /var/log/elasticsearch赋予权限chown -R elasticsearch:elasticsearch /var/lib/elasticsearch /var/log/elasticsearch步骤 3调整 JVM 内存配置关键避免内存不足编辑/usr/share/elasticsearch/config/jvm.options根据服务器内存调整bash运行vi /usr/share/elasticsearch/config/jvm.optionsini初始堆内存与最大堆内存建议为物理内存的1/4如4G内存设置为1G8G内存设置为2G-Xms1g-Xmx1g若服务器内存小于2G可设置为512m-Xms512m-Xmx512m四、配置 systemd 服务开机自启步骤 1创建 systemd 服务文件bash运行vi /etc/systemd/system/elasticsearch.service写入以下内容ini[Unit]DescriptionElasticsearchDocumentationhttps://www.elastic.coWantsnetwork-online.targetAfternetwork-online.target[Service]TypesimpleUserelasticsearchGroupelasticsearchEnvironment“ES_JAVA_OPTS-Xms1g -Xmx1g”ExecStart/usr/share/elasticsearch/bin/elasticsearch -p /var/run/elasticsearch/elasticsearch.pidRuntimeDirectoryelasticsearchRuntimeDirectoryMode0755Restarton-failureLimitNOFILE65535LimitNPROC4096LimitMEMLOCKinfinity[Install]WantedBymulti-user.target步骤 2重新加载 systemd 配置bash运行systemctl daemon-reload五、启动并验证 Elasticsearch步骤 1启动 ES 服务bash运行启动服务systemctl start elasticsearch设置开机自启systemctl enable elasticsearch步骤 2验证服务状态bash运行查看服务状态systemctl status elasticsearch查看端口监听9200端口应处于LISTEN状态ss -tulpn | grep 9200步骤 3验证 ES 是否正常运行bash运行访问ES的HTTP接口curl http://localhost:9200若返回如下信息说明 ES 安装成功json{“name” : “es-node-1”,“cluster_name” : “my-es-cluster”,“cluster_uuid” : “xxxxxxxxxxxxxx”,“version” : {“number” : “7.17.5”,“build_flavor” : “default”,“build_type” : “tar”,“build_hash” : “xxxxxxxxxxxxxx”,“build_date” : “2023-01-31T05:34:48.263135707Z”,“build_snapshot” : false,“lucene_version” : “8.11.1”,“minimum_wire_compatibility_version” : “6.8.0”,“minimum_index_compatibility_version” : “6.0.0-beta1”},“tagline” : “You Know, for Search”}六、常见问题处理启动失败max virtual memory areas vm.max_map_count [65530] is too low解决执行sysctl -w vm.max_map_count262144并写入/etc/sysctl.conf永久生效。启动失败memory locking requested for elasticsearch process but memory is not locked解决确保/etc/security/limits.conf中配置了memlock unlimited并重启服务器生效。外部无法访问 9200 端口解决检查防火墙是否关闭或开放 9200 端口firewall-cmd --add-port9200/tcp --permanent firewall-cmd --reload。总结核心步骤openEuler 安装 ES 需先调整系统内核参数和资源限制再根据架构选择对应安装包配置核心参数后启动。关键配置network.host: 0.0.0.0允许外部访问discovery.type: single-node适配单节点测试环境JVM 内存需根据服务器配置调整。验证标准curl http://localhost:9200返回 ES 版本信息即为安装成功。