1. 首页
  2. elasticsearch教程

05-五、Elasticsearch 教程: 安装 ( Unix )

上一章节中我们下载了 Elasticsearch 的最新版本,也安装和配置了 Java 环境。接下来,我们将尝试在 Unix 系统上安装 Elasticsearch

Unix 操作系统有三大类,分别是:

1、DebianUbuntu
2、RedHatCentOS
3、macOS,俗称苹果电脑

Debian 和 Ubuntu apt-get 安装

在 Debian 和 Ubuntu 系统上可以使用 apt-get 包管理软件来安装,方法如下

1、使用下面的方式添加公共签名密钥到 apt-get


wget -qO - https://packages.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

2、添加 Elasticsearch 6.x 的包缘


echo "deb http://packages.elastic.co/elasticsearch/6.x/debian stable main" | sudo tee -a /etc/apt/sources.list.d/elasticsearch-6.x.list

3、运行 apt-get update 更新软件包信息


sudo apt-get update

4、使用 apt-get 安装 elasticsearch


sudo apt-get install elasticsearch

RedHat 和 CentOS yum 安装

1、使用下面的 rpm 命令添加公共签名密钥


rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

2、使用下面的命令在 /etc/yum.repos.d/ 目录中添加一个 elasticsearch.repo


sudo touch /etc/yum.repos.d/elasticsearch.repo

3、然后复制以下内容到 /etc/yum.repos.d/elasticsearch.repo


[elasticsearch-6.x] name = Elasticsearch repository for 6.x packages baseurl = http://packages.elastic.co/elasticsearch/6.x/centos gpgcheck = 1 gpgkey = http://packages.elastic.co/GPG-KEY-elasticsearch enabled = 1

4、然后就可以使用 yum 命令来安装 elasticsearch


yum install elasticsearch

macOS 苹果电脑下安装

苹果电脑下安装 Elasticsearch 的方式最为简单,就是使用 brew 命令


brew install elasticsearch

但,一般情况下,elasticsearch 都不是最新的,不过也没关系,都是 6.x 系列,API 变动不大

源码安装

打开终端或 shell,然后按照以下命令安装

1、使用 unziptar 命令解压下载好的 elasticsearch-6.3.0.zip


$ unzip elasticsearch-6.3.0.zip Archive: elasticsearch-6.3.0.zip creating: elasticsearch-6.3.0/ creating: elasticsearch-6.3.0/lib/ ...

2、创建 /usr/local/elasticsearch 目录


$ sudo mkdir -p /usr/local/elasticsearch

3、然后把解压之后的 elasticsearch-6.3.0 移到 /usr/local/elasticsearch 目录下并重新命名为 6.3.0


$ sudo mv elasticsearch-6.3.0 /usr/local/elasticsearch/6.3.0

4、然后我们需要把 /usr/local/elasticsearch/6.3.0/bin 目录添加到 PATH 路径中


$ sudo vi ~/.bashrc

然后在文件末尾添加以下语句


export PATH="$PATH:/usr/local/elasticsearch/6.3.0/bin"

首次启动

在终端里输入 elasticsearch 就可以启动 Elasticsearch


$ elasticsearch

启动信息如下


[2018-06-27T15:27:27,118][INFO ][o.e.n.Node ] [] initializing ... [2018-06-27T15:27:27,243][INFO ][o.e.e.NodeEnvironment ] [4zwAMlT] using [1] data paths, mounts [[/ (/dev/disk1s1)]], net usable_space [12.7gb], net total_space [112.8gb], types [apfs] [2018-06-27T15:27:27,244][INFO ][o.e.e.NodeEnvironment ] [4zwAMlT] heap size [990.7mb], compressed ordinary object pointers [true] [2018-06-27T15:27:27,247][INFO ][o.e.n.Node ] [4zwAMlT] node name derived from node ID [4zwAMlTzRCaioBeOE9PaNw]; set [node.name] to override [2018-06-27T15:27:27,248][INFO ][o.e.n.Node ] [4zwAMlT] version[6.3.0], pid[23626], build[default/zip/424e937/2018-06-11T23:38:03.357887Z], OS[Mac OS X/10.13.5/x86_64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_101/25.101-b13] [2018-06-27T15:27:27,248][INFO ][o.e.n.Node ] [4zwAMlT] JVM arguments [-Xms1g, -Xmx1g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Djava.io.tmpdir=/var/folders/yk/2446sljj6hn82nvzkdgxltmw0000gn/T/elasticsearch.EUHmx4gc, -XX:+HeapDumpOnOutOfMemoryError, -XX:HeapDumpPath=data, -XX:ErrorFile=logs/hs_err_pid%p.log, -XX:+PrintGCDetails, -XX:+PrintGCDateStamps, -XX:+PrintTenuringDistribution, -XX:+PrintGCApplicationStoppedTime, -Xloggc:logs/gc.log, -XX:+UseGCLogFileRotation, -XX:NumberOfGCLogFiles=32, -XX:GCLogFileSize=64m, -Des.path.home=/usr/local/elasticsearch/6.3.0, -Des.path.conf=/usr/local/elasticsearch/6.3.0/config, -Des.distribution.flavor=default, -Des.distribution.type=zip] [2018-06-27T15:27:31,794][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [aggs-matrix-stats] [2018-06-27T15:27:31,794][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [analysis-common] [2018-06-27T15:27:31,794][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [ingest-common] [2018-06-27T15:27:31,795][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [lang-expression] [2018-06-27T15:27:31,795][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [lang-mustache] [2018-06-27T15:27:31,795][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [lang-painless] [2018-06-27T15:27:31,796][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [mapper-extras] [2018-06-27T15:27:31,796][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [parent-join] [2018-06-27T15:27:31,796][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [percolator] [2018-06-27T15:27:31,796][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [rank-eval] [2018-06-27T15:27:31,797][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [reindex] [2018-06-27T15:27:31,797][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [repository-url] [2018-06-27T15:27:31,797][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [transport-netty4] [2018-06-27T15:27:31,797][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [tribe] [2018-06-27T15:27:31,798][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-core] [2018-06-27T15:27:31,798][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-deprecation] [2018-06-27T15:27:31,798][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-graph] [2018-06-27T15:27:31,798][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-logstash] [2018-06-27T15:27:31,799][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-ml] [2018-06-27T15:27:31,799][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-monitoring] [2018-06-27T15:27:31,799][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-rollup] [2018-06-27T15:27:31,799][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-security] [2018-06-27T15:27:31,800][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-sql] [2018-06-27T15:27:31,800][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-upgrade] [2018-06-27T15:27:31,800][INFO ][o.e.p.PluginsService ] [4zwAMlT] loaded module [x-pack-watcher] [2018-06-27T15:27:31,801][INFO ][o.e.p.PluginsService ] [4zwAMlT] no plugins loaded [2018-06-27T15:27:38,487][INFO ][o.e.x.s.a.s.FileRolesStore] [4zwAMlT] parsed [0] roles from file [/usr/local/elasticsearch/6.3.0/config/roles.yml] [2018-06-27T15:27:39,518][INFO ][o.e.x.m.j.p.l.CppLogMessageHandler] [controller/23646] [Main.cc@109] controller (64 bit): Version 6.3.0 (Build 0f0a34c67965d7) Copyright (c) 2018 Elasticsearch BV [2018-06-27T15:27:40,279][DEBUG][o.e.a.ActionModule ] Using REST wrapper from plugin org.elasticsearch.xpack.security.Security [2018-06-27T15:27:40,803][INFO ][o.e.d.DiscoveryModule ] [4zwAMlT] using discovery type [zen] [2018-06-27T15:27:42,494][INFO ][o.e.n.Node ] [4zwAMlT] initialized [2018-06-27T15:27:42,495][INFO ][o.e.n.Node ] [4zwAMlT] starting ... [2018-06-27T15:27:42,876][INFO ][o.e.t.TransportService ] [4zwAMlT] publish_address {127.0.0.1:9300}, bound_addresses {[::1]:9300}, {127.0.0.1:9300} [2018-06-27T15:27:46,076][INFO ][o.e.c.s.MasterService ] [4zwAMlT] zen-disco-elected-as-master ([0] nodes joined)[, ], reason: new_master {4zwAMlT}{4zwAMlTzRCaioBeOE9PaNw}{yOHq2o-QRWywWtYPrH4tuw}{127.0.0.1}{127.0.0.1:9300}{ml.machine_memory=4294967296, xpack.installed=true, ml.max_open_jobs=20, ml.enabled=true} [2018-06-27T15:27:46,083][INFO ][o.e.c.s.ClusterApplierService] [4zwAMlT] new_master {4zwAMlT}{4zwAMlTzRCaioBeOE9PaNw}{yOHq2o-QRWywWtYPrH4tuw}{127.0.0.1}{127.0.0.1:9300}{ml.machine_memory=4294967296, xpack.installed=true, ml.max_open_jobs=20, ml.enabled=true}, reason: apply cluster state (from master [master {4zwAMlT}{4zwAMlTzRCaioBeOE9PaNw}{yOHq2o-QRWywWtYPrH4tuw}{127.0.0.1}{127.0.0.1:9300}{ml.machine_memory=4294967296, xpack.installed=true, ml.max_open_jobs=20, ml.enabled=true} committed version [1] source [zen-disco-elected-as-master ([0] nodes joined)[, ]]]) [2018-06-27T15:27:46,131][INFO ][o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [4zwAMlT] publish_address {127.0.0.1:9200}, bound_addresses {[::1]:9200}, {127.0.0.1:9200} [2018-06-27T15:27:46,132][INFO ][o.e.n.Node ] [4zwAMlT] started [2018-06-27T15:27:46,150][WARN ][o.e.x.s.a.s.m.NativeRoleMappingStore] [4zwAMlT] Failed to clear cache for realms [[]] [2018-06-27T15:27:46,269][INFO ][o.e.g.GatewayService ] [4zwAMlT] recovered [0] indices into cluster_state [2018-06-27T15:27:46,565][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.watch-history-7] for index patterns [.watcher-history-7*] [2018-06-27T15:27:46,618][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.watches] for index patterns [.watches*] [2018-06-27T15:27:46,667][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.triggered_watches] for index patterns [.triggered_watches*] [2018-06-27T15:27:46,720][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.monitoring-logstash] for index patterns [.monitoring-logstash-6-*] [2018-06-27T15:27:46,787][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.monitoring-es] for index patterns [.monitoring-es-6-*] [2018-06-27T15:27:46,827][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.monitoring-beats] for index patterns [.monitoring-beats-6-*] [2018-06-27T15:27:46,864][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.monitoring-alerts] for index patterns [.monitoring-alerts-6] [2018-06-27T15:27:46,910][INFO ][o.e.c.m.MetaDataIndexTemplateService] [4zwAMlT] adding template [.monitoring-kibana] for index patterns [.monitoring-kibana-6-*] [2018-06-27T15:27:46,980][INFO ][o.e.l.LicenseService ] [4zwAMlT] license [3c99f74c-bedf-47f6-8e1c-8457b2763d07] mode [basic] - valid [2018-06-27T15:28:16,120][INFO ][o.e.c.r.a.DiskThresholdMonitor] [4zwAMlT] low disk watermark [85%] exceeded on [4zwAMlTzRCaioBeOE9PaNw][4zwAMlT][/usr/local/elasticsearch/6.3.0/data/nodes/0] free: 12.8gb[11.4%], replicas will not be assigned to this node

数据很长,也没啥好讲解的,就是启动成功了

检查是否成功启动

如果启动成功,可以打开一个新的 shell,然后输入以下命令


curl http://localhost:9200/?pretty

输出结果如下


$ curl http://localhost:9200/\?pretty { "name" : "4zwAMlT", "cluster_name" : "elasticsearch", "cluster_uuid" : "UgKKy4O-TTKrux4cHHcrZQ", "version" : { "number" : "6.3.0", "build_flavor" : "default", "build_type" : "zip", "build_hash" : "424e937", "build_date" : "2018-06-11T23:38:03.357887Z", "build_snapshot" : false, "lucene_version" : "7.3.1", "minimum_wire_compatibility_version" : "5.6.0", "minimum_index_compatibility_version" : "5.0.0" }, "tagline" : "You Know, for Search" }

可以看到 version 键下有当前 Elasticsearch 的相关信息,比如版本号为 6.3.0

停止 Elasticsearch

如果是开发环境,停止就直接使用 CTRL + C 组合键吧

然后会继续输出以下信息


[2018-06-27T15:32:59,622][INFO ][o.e.n.Node ] [4zwAMlT] stopping ... [2018-06-27T15:32:59,656][INFO ][o.e.x.w.WatcherService ] [4zwAMlT] stopping watch service, reason [shutdown initiated] [2018-06-27T15:32:59,746][INFO ][o.e.n.Node ] [4zwAMlT] stopped [2018-06-27T15:32:59,746][INFO ][o.e.n.Node ] [4zwAMlT] closing ... [2018-06-27T15:32:59,772][INFO ][o.e.n.Node ] [4zwAMlT] closed

希望读者能够给小编留言,也可以点击[此处扫下面二维码关注微信公众号](https://www.ycbbs.vip/?p=28 "此处扫下面二维码关注微信公众号")

看完两件小事

如果你觉得这篇文章对你挺有启发,我想请你帮我两个小忙:

  1. 关注我们的 GitHub 博客,让我们成为长期关系
  2. 把这篇文章分享给你的朋友 / 交流群,让更多的人看到,一起进步,一起成长!
  3. 关注公众号 「方志朋」,公众号后台回复「666」 免费领取我精心整理的进阶资源教程
  4. JS中文网,Javascriptc中文网是中国领先的新一代开发者社区和专业的技术媒体,一个帮助开发者成长的社区,是给开发者用的 Hacker News,技术文章由为你筛选出最优质的干货,其中包括:Android、iOS、前端、后端等方面的内容。目前已经覆盖和服务了超过 300 万开发者,你每天都可以在这里找到技术世界的头条内容。

    本文著作权归作者所有,如若转载,请注明出处

    转载请注明:文章转载自「 Java极客技术学习 」https://www.javajike.com

    标题:05-五、Elasticsearch 教程: 安装 ( Unix )

    链接:https://www.javajike.com/article/1248.html

« 06-六、Elasticsearch 教程: 术语
04-四、Elasticsearch 教程: 安装 ( Windows )»

相关推荐

QR code