美文网首页Elastic Search
Elastic Search 安装和配置

Elastic Search 安装和配置

作者: 阿土伯已经不是我 | 来源:发表于2018-01-01 17:44 被阅读166次

    Elastic Search 的安装,特别是单节点的安装非常简单。按照官方文档操作如下

    确认环境

    最新的Elastic Search 6.1.1 要求linux 内核 3.5 以上,本文在 CentOS 7 版本下进行安装。

    最新的Elastic Search 6.1.1 要求linux 内核 3.5 以上对JDK 的要求是 1.8 以上。首先确保系统中的 JDK 存在并且是 JDK1.8 以上版本

    java -version
    java version "1.8.0_144"
    Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
    Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
    

    这里显示 JDK 是1.8.0_144版本的。满足 Elastic Search 6 的要求

    下载安装的压缩包

    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.1.tar.gz
    

    解压安装包

    tar -xvf elasticsearch-6.1.1.tar.gz
    

    配置 Elastic Search 集群

    ES 的配置文件在安装目录下的 conf 目录下,一个是 log4j2.properties 文件,用来配置日志信息的,一个是 jvm.options 文件,用来配置 JVM 运行参数的。一个是 elasticsearch.yml 是用来配置 ES 自身的。前面两个我们先不管。我们主要配置 elasticsearch.yml 文件

    注意下面几行

    #cluster.name: my-application
    #node.name: node-1
    #path.data: /path/to/data
    #path.logs: /path/to/logs
    #network.host: 192.168.0.1
    #http.port: 9200
    
    • cluster.name 用来指定集群的名称。如果不指定,则默认是 elasticsearch。
    • node.name 用来指定当前节点的名称,如果不指定,则会启动的时候自动生成一个随机唯一标识符作为节点的名称。
    • path.data 指定 ES 数据存储路径。
    • path.logs 指定 ES 日志文件存储路径。
    • network.host 用来指定服务端口绑定的 IP 地址,默认绑定 127.0.0.1 ,也就是只能本机访问。
    • http.port 用来指定提供 http 服务的端口。

    根据上述描述。我们去掉这几行的注释标识 # 并且把内容更改为下面的内容。这里加锁 /usr/local/elasticsearch-6.1.1 是 ES 安装路径。

    cluster.name: study_cluster
    node.name: master
    path.data: /usr/local/elasticsearch-6.1.1/data
    path.logs: /usr/local/elasticsearch-6.1.1/logs
    network.host: 0.0.0.0
    http.port: 9200
    

    启动 Elastic Search

    /usr/local/elasticsearch-6.1.1/elasticsearch 
    

    如果启动的时候出现如下提示

    [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
    [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    

    解决第一个问题需要用有 root 权限用户 在文件 /etc/security/limits.conf 的最后加上两行。

    * hard nofile 65536
    * soft nofile 65536
    

    解决第二个问题需要用有 root 权限的用户执行如下的命令

    sysctl -w vm.max_map_count=262144
    

    再重新执行如下命令

    /usr/local/elasticsearch-6.1.1/elasticsearch 
    

    将能正常启动 ES 集群

    查看状态

    查看基本信息

    在命令行下执行命令

    curl http://localhost:9200
    

    得到如下的信息

    {
      "name" : "master",
      "cluster_name" : "study_cluster",
      "cluster_uuid" : "YEpCazm4RlK5iPUKKZpmEQ",
      "version" : {
        "number" : "6.1.1",
        "build_hash" : "bd92e7f",
        "build_date" : "2017-12-17T20:23:25.338Z",
        "build_snapshot" : false,
        "lucene_version" : "7.1.0",
        "minimum_wire_compatibility_version" : "5.6.0",
        "minimum_index_compatibility_version" : "5.0.0"
      },
      "tagline" : "You Know, for Search"
    }
    

    这个用一个 JSON 格式数据显示了集群的基本信息

    查看健康状态信息

    在命令行下执行命令

    curl http://localhost:9200/_cat/health?v
    

    得到如下图所示的健康状态信息

    Elastic Search 集群健康状态查看
    • timestamp:代表状态时间
    • cluster:表示集群名称
    • status:表示集群状态。green 代表健康;yellow 代表数据完整,但是副本不完整;red 代表数据不完整
    • node.total:表示集群节点总数
    • node.data:表示集群数据节点总数
    • shards:表示集群分片的总数
    • active_shards_percent:表示集群活动的分片百分比
    查看状态列表

    在命令行下执行命令

    curl http://localhost:9200/_cat
    

    得到如下图所示的状态命令列表信息

    Elastic Search 状态命令列表

    至此,我们就完成了一个单节点的 Elastic Search 集群的安装

    相关文章

      网友评论

        本文标题:Elastic Search 安装和配置

        本文链接:https://www.haomeiwen.com/subject/bzstnxtx.html