• elasticsearch 安装 windows linux macOS


    导读

    在上一章节我们介绍Elasticsearch基本概念,今天我们继续进行本章内容,Elasticsearch在各种环境下安装,下面将逐一讲解在各种操作系统或不同安装在不同环境中注意事项。

     

    安装

    Elasticsearch最近版本至少需要Java 8.具体到撰写本文时,建议您使用Oracle JDK版本1.8.0_131。Java安装因平台而异,因此我们不会在此处详细介绍。可以在Oracle的网站上找到Oracle推荐的安装文档可以说,在安装Elasticsearch之前,请先运行检查Java版本(然后根据需要进行相应的安装/升级):

    java -version
    echo $ JAVA_HOME

    一旦我们设置了Java,我们就可以下载并运行Elasticsearch。二进制文件可以www.elastic.co/downloads与过去发布的所有版本一起提供。对于每个版本,您可以选择ziptar存档,DEBRPM包,或Windows MSI安装包。

    tar 安装示例

    为简单起见,让我们使用tar文件。

    让我们下载相对稳定版本Elasticsearch 5.6.11 tar如下:

    curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.11.tar.gz

    然后提取如下:

    tar -xvf elasticsearch-5.6.11.tar.gz

    然后它会在当前目录中创建一堆文件和文件夹。然后我们进入bin目录,如下所示:

    cd elasticsearch-5.6.11 / bin

    现在我们准备启动我们的节点和单个集群:

    ./elasticsearch

    使用Homebrew 安装

    在macOS上,Elasticsearch也可以通过Homebrew安装

    brew install elasticsearch

    使用MSI Windows Installer 安装示例

    对于Windows用户,我们建议使用MSI安装程序包该软件包包含一个图形用户界面(GUI),可指导您完成安装过程。

    首先,从https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.0.msi下载Elasticsearch 5.5.0 MSI 

    然后双击下载的文件以启动GUI。在第一个屏幕中,选择部署目录:

    图像/ msi_installer / msi_installer_locations.png

    然后选择是作为服务安装还是根据需要手动启动Elasticsearch。要与tar示例对齐,请选择不安装为服务:

    图像/ msi_installer / msi_installer_no_service.png

    对于配置,只需保留默认值:

    图像/ msi_installer / msi_installer_configuration.png

    再次,要与tar示例对齐,请取消选中所有插件以不安装任何插件:

    图像/ msi_installer / msi_installer_plugins.png

    单击安装按钮后,将安装Elasticsearch:

    图像/ msi_installer / msi_installer_success.png

    默认情况下,Elasticsearch将安装在%PROGRAMFILES%ElasticElasticsearch在此处导航并进入bin目录,如下所示:

    使用命令提示符:

    cd%PROGRAMFILES% Elastic  Elasticsearch  bin

    使用PowerShell:

    cd $ env:PROGRAMFILES  Elastic  Elasticsearch  bin

    现在我们准备启动我们的节点和单个集群:

     elasticsearch.exe

    成功运行节点

    如果一切顺利安装,你应该看到一堆如下所示的消息:

    [2017-09-16T14:17:51,251][INFO ][o.e.n.Node               ] [] initializing ...
    [2017-09-16T14:17:51,329][INFO ][o.e.e.NodeEnvironment    ] [6-bjhwl] using [1] data paths, mounts [[/ (/dev/sda1)]], net usable_space [317.7gb], net total_space [453.6gb], spins? [no], types [ext4]
    [2017-09-16T14:17:51,330][INFO ][o.e.e.NodeEnvironment    ] [6-bjhwl] heap size [1.9gb], compressed ordinary object pointers [true]
    [2017-09-16T14:17:51,333][INFO ][o.e.n.Node               ] [6-bjhwl] node name [6-bjhwl] derived from node ID; set [node.name] to override
    [2017-09-16T14:17:51,334][INFO ][o.e.n.Node               ] [6-bjhwl] version[5.6.11], pid[21261], build[f5daa16/2017-09-16T09:12:24.346Z], OS[Linux/4.4.0-36-generic/amd64], JVM[Oracle Corporation/Java HotSpot(TM) 64-Bit Server VM/1.8.0_60/25.60-b23]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [aggs-matrix-stats]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [ingest-common]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [lang-expression]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [lang-groovy]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [lang-mustache]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [lang-painless]
    [2017-09-16T14:17:51,967][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [percolator]
    [2017-09-16T14:17:51,968][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [reindex]
    [2017-09-16T14:17:51,968][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [transport-netty3]
    [2017-09-16T14:17:51,968][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded module [transport-netty4]
    [2017-09-16T14:17:51,968][INFO ][o.e.p.PluginsService     ] [6-bjhwl] loaded plugin [mapper-murmur3]
    [2017-09-16T14:17:53,521][INFO ][o.e.n.Node               ] [6-bjhwl] initialized
    [2017-09-16T14:17:53,521][INFO ][o.e.n.Node               ] [6-bjhwl] starting ...
    [2017-09-16T14:17:53,671][INFO ][o.e.t.TransportService   ] [6-bjhwl] publish_address {192.168.8.112:9300}, bound_addresses {{192.168.8.112:9300}
    [2017-09-16T14:17:53,676][WARN ][o.e.b.BootstrapCheck     ] [6-bjhwl] max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
    [2017-09-16T14:17:56,731][INFO ][o.e.h.HttpServer         ] [6-bjhwl] publish_address {192.168.8.112:9200}, bound_addresses {[::1]:9200}, {192.168.8.112:9200}
    [2017-09-16T14:17:56,732][INFO ][o.e.g.GatewayService     ] [6-bjhwl] recovered [0] indices into cluster_state
    [2017-09-16T14:17:56,748][INFO ][o.e.n.Node               ] [6-bjhwl] started

    在不详细讨论的情况下,我们可以看到名为“6-bjhwl”的节点(在您的情况下将是一组不同的字符)已经启动并选择自己作为单个集群中的主节点。现在不要担心掌握意味着什么。这里最重要的是我们在一个集群中启动了一个节点。

    如前所述,我们可以覆盖集群或节点名称。这可以在启动Elasticsearch时从命令行完成,如下所示:

    ./elasticsearch -Ecluster.name = my_cluster_name -Enode.name = my_node_name

    另请注意标有http的行,其中包含有关可从中访问节点的HTTP地址(192.168.8.112)和端口(9200)的信息。默认情况下,Elasticsearch使用port 9200来提供对其REST API的访问。如有必要,可以配置此端口。

    测试 Elasticsearch

     是否启动成功,可以打开另一个终端,执行以下操作:

    curl 'http://localhost:9200/?pretty'

    TIP:如果你是在 Windows 上面运行 Elasticsearch,你可以从 http://curl.haxx.se/download.html 中下载 cURL。 cURL 给你提供了一种将请求提交到 Elasticsearch 的便捷方式,并且安装 cURL 之后,你可以通过复制与粘贴去尝试本系列文章的许多例子。

    你应该得到和下面类似的响应(response):

    C:Usersjack.yangDownloadscurl_7_53_1_openssl_nghttp2_x64>curl "http://localhost:9200/?pretty"
    {
    "name" : "node-1",
    "cluster_name" : "test",
    "cluster_uuid" : "jJeyEE7aRLW_E1CgFXrSZA",
    "version" : {
    "number" : "*******",
    "build_hash" : "10b1edd",
    "build_date" : "2017-09-16T19:01:30.685723Z",
    "build_snapshot" : false,
    "lucene_version" : "*****",
    "minimum_wire_compatibility_version" : "****",
    "minimum_index_compatibility_version" : "*****"
    },
    "tagline" : "You Know, for Search"
    }

    这就意味着你现在已经启动并运行一个 Elasticsearch 节点了,你可以用它做实验了。 单个 节点 可以作为一个运行中的 Elasticsearch 的实例。 而一个 集群 是一组拥有相同 cluster.name 的节点, 他们能一起工作并共享数据,还提供容错与可伸缩性。(当然,一个单独的节点也可以组成一个集群) 你可以在 elasticsearch.yml 配置文件中修改 cluster.name ,该文件会在节点启动时加载 .

    下一章节我将为您介绍Elastic Search集群原理

  • 相关阅读:
    iOS 验证码按钮倒计时
    简单三层复习
    文件读写,改进版
    第一个文件读写的例子
    文件读写原理
    Ajax原理
    MVC,布局页面
    在MVC视图的代码块中,直接输出文本,有几种方式?
    MVC,如何在视图中声明方法,调用方法?
    MVC怎么在当前视图中,传递参数给到另外一个视图?
  • 原文地址:https://www.cnblogs.com/BlogNetSpace/p/9628507.html
Copyright © 2020-2023  润新知