原文:ES学习(03):ElasticSearch的安装与简单配置
前言
上篇文章ES学习(02):ElasticSearch简介及其发展历史中我们提到ES是非常容易提供水平扩展的,同时也非常容易在我们的个人电脑上做开发环境搭建。我们知道ES是基于Java语言开发的,所以在之前的es版本中我们必须在本机安装JDK的开发环境,那么从ES7.0开始内置了java开发环境,这使得我们的安装变的更加简单。
ES的下载、安装及启动
安装Java
前言中有提到在ES7.0之前,我们安装ES前必须要安装JDK环境,ES对JDK的要求如下:
(1)运行ElasticSearch,需安装配置JDK:
A. 设置$JAVA_HOME
(2)各个版本对JAVA的依赖
A.ElasticSearch 5 需要 Java 8 以上的版本
B.ElasticSearch从6.5开始支持Java 11
C.ElasticSearch 11开始内置了JDK
ES下载
下载地址:Download Elasticsearch
这里我选择最新的7.3.0版本:
ES安装
image.png因为我现在是用的window系统,所以我选择WINDOWS sha asc进行下载,下载后我选择解压到自己的D盘目录下:
image.png image.pngES各目录讲解:
bin: 脚本文件,包含启动ES,安装插件,运行统计数据等
conifg: 核心配置文件elasticsearch.yml, 集群配置文件,user,role based相关配置
jdk: es7.0后内置JDK环境
data: 数据文件
lib: java类库
logs: 日志文件
modules: 包含所有ES模块
plugins: 包含所有已安装插件
JVM配置
(1)修改JVM, config/jvm.options
7.x 下载的默认配置是1GB
(2)配置建议
1.Xms与Xmx建议设置成一样大
2.Xmx不要超过机器内存的50%
3.不要超过30GB - https://www.elastic.co/cn/blog/a-heap-of-trouble
ES启动
进入解压包,根据你的系统执行下面指令
运行 bin/elasticsearch (或windows运行 bin\elasticsearch.bat)
image.png
可以看到我这边已经启动成功了,从启动截图上我们可以看出ES默认监听两个端口 9200 和 9300, 9200 是管理端口,处理http请求(可以通过该端口来查看节点信息以及处理相关的Restful接口请求),9300 是服务端口,处理的是tcp请求,集群间节点通过该端口进行通信。下面我需要验证一下是否启动成功,在浏览器输入:
http://localhost:9200
image.png
可以看到ES在我的本机已经运行起来了,运行的版本是7.3.0
{
"name" : "SDWM-2019DASVPV",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "KkT0eSYUReiB1mUioivwGA",
"version" : {
"number" : "7.3.0",
"build_flavor" : "default",
"build_type" : "zip",
"build_hash" : "de777fa",
"build_date" : "2019-07-24T18:30:11.767338Z",
"build_snapshot" : false,
"lucene_version" : "8.1.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
ElasticSearch插件的安装
ElasticSearch提供了插件的机制对系统提供扩展:
Discovery Plugin
Analysis Plugin
Security Plugin
Management plugin
Ingest Plugin
Mapper Plugin
Backup Plugin
首先我们可以通过运行下面命令,来查看目前安装了那些插件:
bin\elasticsearch-plugin list
image.png
可以看到我现在本机没有安装任何插件,下面我需要对其进行扩展:
window下插件的安装会比较麻烦:
1. 下载插件包
2. 进入es plugins目录创建head文件夹
3. 解压插件并将内容复制到head目录下
mac/linux/unix下我们可以通过install命令安装,很方便,es会从网上将这个插件安装到本机:
bin\elasticsearch-plugin install xxx
安装结束后可以再次通过elasticsearch-plugin list 来验证。
如何在开发机上运行多个ElasticSearch实例
我们知道es很大的一个特色便是支持分布式运行,为了在本地模拟es分布式环境,我们是可以在本地启动多个ES实例的,启动指令:
bin\elasticsearch -E node.name=node1 -E cluster.name=relaxheart-es -E path.data=node1_data -d
bin\elasticsearch -E node.name=node2 -E cluster.name=relaxheart-es -E path.data=node2_data -d
bin\elasticsearch -E node.name=node3 -E cluster.name=relaxheart-es -E path.data=node3_data -d
解释:每次启动的时候我们需要对节点指定不同的名称node1、node2、node3……,同时为多个节点指定相同的集群名称:relaxheart-es ,另外为每个几点指定数据的存放路径。(注:具体什么是一个节点,会在后面的文章中具体的展开)
我们运行一下上面的命令后可以使用es提供的cat api来验证下,再浏览器输入:
http://localhost:9200/_cat/nodes
可以看到新启动的node1、node2、node3这三个节点:
image.png
结束进程
和其他进程的结束方式一样,我们都比较熟悉了:
linux下:
ps | grep elasticsearch
kill pid
windows下:
运行services.msc(可以使用win+R键调出“运行”),
找到WindowsSearch,双击,在“启动类型”中选择“禁用”,确定
总结
这篇文章记录了es从下载安装,启动验证,插件安装及如何在本地启动多个实例。
个人博客网站:RelaxHeart网 - Tec博客
网友评论