Windows安装ES
Windows
- 安装
JDK
,至少要 1.8 版本(略)- 然后去官网进行下载
- 官网地址:https://www.elastic.co/cn/downloads/elasticsearch
- 下载安装包并解压
目录说明
bin 脚本目录,包括:启动、停止等可执行脚本
config 配置文件目录
data 索引目录,存放索引文件的地方
logs 日志目录
modules 模块目录,包括了 ES 的功能模块
plugins 插件目录,ES 支持插件机制
配置文件
- 安装形式不同,ES 的配置文件的地址也不同
- 使用
zip
、tar
安装,配置文件在安装目录的config
下- 使用
rpm
安装,配置文件在/etc/elasticsearch
下- 使用
msi
安装,配置文件在安装目录的config
下,并且会自动将 config 目录的地址写入环境变量ES_PATH_CONF
- 配置
elasticsearch.yml
- 配置格式是
yaml
,熟悉 SpringBoot 的都知道怎么配置了- 不过这里虽然是
yaml
,但是还是按照property
的风格配置
- 修改地方如下:
path.data: D:\Java\elasticsearch\7.3\elasticsearch-7.3.0-windows-x86_64\ESData
path.logs: D:\Java\elasticsearch\7.3\elasticsearch-7.3.0-windows-x86_64\ESLogs
- 或者以下的方式
path:
data: D:\Java\elasticsearch\7.3\elasticsearch-7.3.0-windows-x86_64\ESData
logs: D:\Java\elasticsearch\7.3\elasticsearch-7.3.0-windows-x86_64\ESLogs
- 主要的配置内容如下:
cluster.name: 配置集群名称,默认是elasticsearch
node.name: 节点名,es会默认随机指定一个名字
path.conf: 设置配置文件的存储路径
path.data: 设置索引数据的存储路径,默认是es根目录下的data文件夹,可以设置多个存储路径,用逗号隔开
path.logs: 设置日志文件的存储路径,默认是es根目录下的logs文件夹
path.plugins: 设置插件的存放路径,默认是es根目录下的plugins文件夹
bootstrap.memory_lock: 设置为true可以锁住ES使用的内存,避免内存与swap分区交换数据
network.host: 设置绑定主机的ip地址,设置为0.0.0.0表示绑定任何ip,允许外网访问,生产环境建议设置为具体的ip
http.port: 设置对外服务的http端口,默认为9200
transport.tcp.port: 9300 集群结点之间通信端口
node.master: 指定该节点是否有资格被选举成为master结点,默认是true,如果原来的master宕机会重新选举新的master。
node.data: 指定该节点是否存储索引数据,默认为true
discovery.zen.ping.unicast.hosts: ["host1:port", "host2:port", "..."] 设置集群中master节点的初始列表
discovery.zen.ping.timeout: 设置ES自动发现节点连接超时的时间,默认为3s,如果网络延迟高可设置大些
discovery.zen.minimum_master_nodes: 节点数量的最少值 ,此值的公式为:(master_eligible_nodes / 2) + 1 ,比如:有3个符合要求的主结点,那么这里要设置为2
node.max_local_storage_nodes: 单机允许的最大存储结点数,通常单机启动一个结点建议设置为1,开发环境如果单机启动多个节点可设置大于1
- 配置
jvm.options
- 改一些,配置用于设置一些
JVM参数
- 常见的就是设置 JVM 的堆内存,Windows下的话就不改了,你也可以改小一点,是对于电脑配置不高的可以改一下我就修改了
- 不会修改的自行百度即可:https://www.baidu.com/
- 启动
- 开箱即用,直接运行
bin
目录下的elasticsearch.bat
即可:
- 检查是否启动成功
- 再浏览器中访问如下地址也就是 ES 的地址:
- http://localhost:9200/
- 再次访问如下地址查询集群状态
- http://localhost:9200/_cluster/health
- Status:集群状态,
green
代表所有分片可用,Yellow
所有主分片可用,Red
主分片不可用,集群不可用
安装Head
- ES 的安装包只提供了 REST 风格的操作,并没有可视化界面
- 如果需要可视化界面,可以安装
head
插件- head 插件是 ES 的可视化管理插件,用来监视 ES 的状态,并通过 head 客户端和 ES 交互
- 前提需要安装好
Node
- 可以参考我分类或者标签中的Node自行查找文章参照即可
- 输入如下命令开始装包:
npm i
- 装完了包之后再次输入如下命令跑起来即可:
npm run start
- 跑起来之后再浏览器访问如下地址:
- http://localhost:9100/
配置跨域
- ES 默认是不允许跨域访问的,因此 head 插件会存在跨域问题
- 可以配置
elasticsearch.yml
来开启跨域(注意,需要将该文件另存为 utf-8 编码格式)- 修改了配置文件之后重启 ES 即可用 Head 进行连接了
- 配置成功后如果还存在跨域问题,重启 ES 即可
# 开启 cors 跨域访问支持,默认为 false
http.cors.enabled: true
# 跨域访问允许的域名地址,(允许所有域名)这里我使用的正则
http.cors.allow-origin: /.*/
- 重启之后连接的效果如下图:
标签:
ElasticSearch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具