ElasticSearch 安装与运行
公号:码农充电站pro
主页:https://codeshellme.github.io
本节来介绍 ES 的安装。
1,下载 ES
ES 是基于 Java 语言开发的,因此,要安装 ES,首先需要有 Java 环境。
从 ES 7.0 开始,ES 内置了 Java 环境,所以如果安装的是 7.0 及以上版本的 ES,就不需要额外安装 Java 环境了。
我们可以到 ES 的下载页面去下载 ES 安装包,你可以根据你的系统,选择不同的安装包进行安装。

我这里选择的是 Windows 版本,下载好压缩包后,将其解压。解压后的目录如下所示:

来看下每个目录的作用:
- bin 目录中是一些工具命令。
- data 目录存储数据文件。
- jdk 目录是 Java 运行环境。
- lib 目录是 Java 开发类库。
- logs 目录用于存放日志。
- modules 目录中包含了所有的 ES 模块。
- plugins 目录包含所有已安装的插件。
- config 目录是一些配置文件。
elasticsearch.yml文件用于配置 ES 服务。jvm.options文件用于配置 JVM 参数。- 其中 Xmx 和 Xms 建议设置的大小一样,且不超过机器内存的一半。
- Xmx 和 Xms 默认为 1g。
- 这里有一些介绍,你可以参考一下。
2,启动 ES
bin 目录中有一个 elasticsearch 命令,用于运行 ES 实例。我们可以通过 --help 参数查看其帮助:
> bin\elasticsearch --help
Starts Elasticsearch
Option Description
------ -----------
-E <KeyValuePair> Configure a setting
-V, --version Prints Elasticsearch version information and exits
-d, --daemonize Starts Elasticsearch in the background `在后台运行`
-h, --help Show help
-p, --pidfile <Path> Creates a pid file in the specified path on start
-q, --quiet Turns off standard output/error streams logging in console
-s, --silent Show minimal output
-v, --verbose Show verbose output
进入到解压后的目录中,在 Windows 系统中用下面命令来启动 ES:
bin\elasticsearch
在 Linux 系统中使用下面命令启动 ES:
bin/elasticsearch
如果启动成功,ES Server 将在本机的 9200 端口监听服务。
我们可以使用 curl 命令访问本机 9200 端口,查看 ES 是否启动成功。如果输出像下面这样,则说明启动成功:
> curl http://localhost:9200/
{
"name" : "LAPTOP-VH778PAK",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "trxvXvAfQ5GxWe3D4vEIXA",
"version" : {
"number" : "7.10.1",
"build_flavor" : "default",
"build_type" : "zip",
"build_hash" : "1c34507e66d7db1211f66f3513706fdf548736aa",
"build_date" : "2020-12-05T01:00:33.671820Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
你也可以在浏览器中访问服务地址,来查看是否启动成功:

3,安装 ES 插件
我们可以通过安装 ES 插件来为 ES 扩展功能。
bin 目录中有一个 elasticsearch-plugin.bat 命令,是关于 ES 插件的命令,可以使用 --help 参数来查看其用法:
> bin\elasticsearch-plugin --help
A tool for managing installed elasticsearch plugins
Commands
--------
list - Lists installed elasticsearch plugins
install - Install a plugin
remove - removes a plugin from Elasticsearch
Non-option arguments:
command
Option Description
------ -----------
-E <KeyValuePair> Configure a setting
-h, --help Show help
-s, --silent Show minimal output
-v, --verbose Show verbose output
使用 list 参数查看是否有插件:
> bin\elasticsearch-plugin list
没有任何输出,说明没有插件。
下面演示安装 analysis-icu 插件,这是一个分词插件:
> bin\elasticsearch-plugin install analysis-icu
-> Installing analysis-icu
-> Downloading analysis-icu from elastic
[=================================================] 100%
-> Installed analysis-icu
安装完成后,再次查看插件列表:
> bin\elasticsearch-plugin list
analysis-icu
可以看到,这时有了一个插件。
重新启动 ES 服务后,我们也可以访问 HTTP 接口来查看插件:
> curl localhost:9200/_cat/plugins
LAPTOP-VH778PAK analysis-icu 7.10.1
`服务名称` `插件名称` `插件版本`
添加 ?v 后缀可以查看字段的解释:
> curl localhost:9200/_cat/plugins?v
name component version `解释`
LAPTOP-VH778PAK analysis-icu 7.10.1
这里是关于 ES 插件的介绍,你可以了解一下。
4,运行 ES 集群
我们可以运行多个 ES 实例,将其组成一个 ES 集群,命令如下:
> bin\elasticsearch -E node.name=node1 -E cluster.name=escluster -E path.data=node1_data -d
> bin\elasticsearch -E node.name=node2 -E cluster.name=escluster -E path.data=node2_data -d
> bin\elasticsearch -E node.name=node3 -E cluster.name=escluster -E path.data=node3_data -d
其中 -E 用于指定命令参数,node.name 表示节点名称,cluster.name 表示集群名称,path.data 表示数据目录,-d 表示在后台运行实例。
查看集群中的节点:
> curl localhost:9200/_cat/nodes?v
ip heap.percent ram.percent cpu node.role master name
127.0.0.1 30 91 9 cdhilmrstw - node2
127.0.0.1 28 91 9 cdhilmrstw - node3
127.0.0.1 34 91 9 cdhilmrstw * node1
可以看到有 3 个节点,分别是 node1,node2,node3。其中标有星号 * 的节点为主节点。
默认情况下,集群中启动的第一个节点,会将自己选举为 Master 节点。
查看集群健康状态:
> curl localhost:9200/_cluster/health
{
"cluster_name":"escluster", `集群名称`
"status":"green", `健康状态`
"timed_out":false, `是否超时`
"number_of_nodes":3, `节点数量`
"number_of_data_nodes":3, `数据节点数量`
"active_primary_shards":0,
"active_shards":0,
"relocating_shards":0,
"initializing_shards":0,
"unassigned_shards":0,
"delayed_unassigned_shards":0,
"number_of_pending_tasks":0,
"number_of_in_flight_fetch":0,
"task_max_waiting_in_queue_millis":0,
"active_shards_percent_as_number":100
}
(本节完。)
推荐阅读:
欢迎关注作者公众号,获取更多技术干货。

ElasticSearch 安装与运行的更多相关文章
- ElasticSearch安装及运行的坑
一.确认centos系统是为64位的,x86的不可以安装 1. 下载elasticsearch包 2. 用 tar -zxvf 解压包 3. 增加一个elk用户,elasticsearch7不可用ro ...
- ElasticSearch安装及部署
安装及部署 一.环境配置 操作系统:Cent OS 7ElasticSearch版本:1.3.2JDK版本:1.7.0_51SSH Secure Shell版本:XShell 5elasticsear ...
- Elasticsearch是一个分布式可扩展的实时搜索和分析引擎,elasticsearch安装配置及中文分词
http://fuxiaopang.gitbooks.io/learnelasticsearch/content/ (中文) 在Elasticsearch中,文档术语一种类型(type),各种各样的 ...
- Elasticsearch安装详解
本文只介绍在windows上的安装和配置,其他安装和配置请参见官方文档 ES在windows上安装需下载zip安装包,解压后bin目录下有个 elasticsearch-service.bat 文件. ...
- Elasticsearch 安装和配置
1. 下载并解压 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.3.0.tar.gz ...
- ELK日志监控平台安装部署简介--Elasticsearch安装部署
最近由于工作需要,需要搭建一个ELK日志监控平台,本次采用Filebeat(采集数据)+Elasticsearch(建立索引)+Kibana(展示)架构,实现日志搜索展示功能. 一.安装环境描述: 1 ...
- elasticsearch 安装 windows linux macOS
导读 在上一章节我们介绍Elasticsearch基本概念,今天我们继续进行本章内容,Elasticsearch在各种环境下安装,下面将逐一讲解在各种操作系统或不同安装在不同环境中注意事项. 安装 E ...
- elasticsearch 安装、配置
elasticsearch:基于java开发,基于RESTful web 接口,提供分布式多用户能力的全文搜索引擎. elasticsearch 安装: 1. java SE Development ...
- (转载)Centos下Elasticsearch安装详细教程
原文地址:http://www.cnblogs.com/sunny1009/articles/7874251.html Centos下Elasticsearch安装详细教程 1.Elasticsear ...
随机推荐
- SQL Server批量向表中插入多行数据语句
因自己学习测试需要,需要两个有大量不重复行的表,表中行数越多越好.手动编写SQL语句,通过循环,批量向表中插入数据,考虑到避免一致问题,设置奇偶行不同.个人水平有限,如有错误,还望指正. 语句如下: ...
- Phoneix(三)HBase集成Phoenix创建二级索引
一.Hbase集成Phoneix 1.下载 在官网http://www.apache.org/dyn/closer.lua/phoenix/中选择提供的镜像站点中下载与安装的HBase版本对应的版本. ...
- JAVA编程环境与基本数据类型
<JAVA编程环境与基本数据类型> 随笔目录 # <JAVA编程环境与基本数据类型> 随笔目录 - Java小实例 java的编程环境 java数据类型 Java小实例 jav ...
- TCP三次握手(通俗易懂)
一--导读 前不久中国和外国RPEC协议的签订,标志着东亚自贸区的建立成功.现在韩国和日本要做贸易.日本一直监听着韩国总统的一举一动,但他又不会主动.(服务器的监听状态)只是被动的等着韩国总统先开口. ...
- 知识图谱和neo4j的基本操作
一.知识图谱的简介 1.知识图谱是什么 知识图谱本质上是语义网络(Semantic Network)的知识库 可以理解为一个关系图网络. 2.什么是图 图(Graph)是由节点(Vertex)和边(E ...
- Linux基础命令整合
linux基础命令整理 1.系统相关命令 shutdown -h now 关闭系统(1) init 0 关闭系统(2) telinit 0 关闭系统(3) shutdown -h hours:minu ...
- VsCode/Pycharm配合python env 使用
前言 用惯了vscode,这几天试了一下pycharm,还是回来了. pycharm一个好处就是python env 环境支持的比较好, vscode虽然也支持但是要改一些东西 env的使用查看我的上 ...
- ruby+watir安装指南
安装ruby+watir一共需要下面几个步骤 1. 安装ruby: 2. 升级Rubygems:Rubygems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby 打包系统. 它提供一个 ...
- tomcat控制台运行窗口中文乱码
启动tomcat时出来的运行窗口中文乱码, 如图所示:看得有点不舒服 解决方法:找到Tomcat安装路径下的 /conf/logging.properties 文件 文件末尾添加语句: java.ut ...
- Springboot之文件监控
背景:在实际环境部署构成中,由于特殊网络环境因素,有很多服务器之间的网络都是单向的,不能互相访问的,只有通过特定技术手段做到文件的单项摆渡,这就需要在两台服务器上分别写序列化程序和反序列化程序,这里不 ...