zoukankan      html  css  js  c++  java
  • ElasticSearch安装与介绍

    ElasticSearch安装与介绍

    一、ELK简介

    1.1、Elasticsearch

    	Elasticsearch基于java,是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
    

    1.2、Logstash

    	Logstash基于java,是一个开源的用于收集,分析和存储日志的工具。
    

    1.3、Kibana

    	Kibana 基于nodejs,也是一个开源和免费的工具,Kibana可以为 Logstash和ElasticSearch提供的日志分析友好的Web界面,可以汇总、分析和搜索重要数据日志。
    

    1.4、Beats

    	Beats是elastic公司开源的一款采集系统监控数据的代理agent,是在被监控服务器上以客户端形式运行的数据收集器的统称,可以直接把数据发送给Elasticsearch或者通过Logstash发送给Elasticsearch,然后进行后续的数据分析活动。Beats由如下组成:
    
    	- Packetbeat:是一个网络数据包分析器,用于监控、收集网络流量信息,Packetbeat嗅探服务器之间的流量,解析应用层协议,并关联到消息的处理,其支 持ICMP (v4 and v6)、DNS、HTTP、Mysql、PostgreSQL、Redis、MongoDB、Memcache等协议;
    	- Filebeat:用于监控、收集服务器日志文件,其已取代 logstash forwarder;
    	- Metricbeat:可定期获取外部系统的监控指标信息,其可以监控、收集 Apache、HAProxy、MongoDB、MySQL、Nginx、PostgreSQL、Redis、System、Zookeeper等服务
    

    1.5、全系的Elastic Stack技术栈包括

    二、Elasticsearch安装

    2.1、Elasticsearch简介

    	ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
    	ElasticSearch是Elastic Stack的核心,同时Elasticsearch 是一个分布式、RESTful风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为Elastic Stack的核心,它集中存储您的数据,帮助您发现意料之中以及意料之外的情况。
    

    2.2、下载

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

    2.3、单机版安装

    # 我自己是新建了个/app目录,把安装包下载到了这里
    # 添加新用户
    [root@master app]# useradd elsearch
    
    # 解压
    [root@master app]# tar -zxvf elasticsearch-6.5.4.tar.gz 
    
    #重命名
    [root@master app]# mv elasticsearch-6.5.4 elasticsearch
    
    # 授权
    [root@master app]# chown elsearch.elsearch -R elasticsearch/
    
    # 切换用户
    [root@master ~]# su - elsearch
    
    # 修改配置文件
    [elsearch@master ~]$ cd /app/elasticsearch/config
    [elsearch@master ~]$ vim elasticsearch.yml 
    #设置ip地址,任意网络均可访问
    network.host: 0.0.0.0 
    

    ​ 在Elasticsearch中如果,network.host不是localhost或者127.0.0.1的话,就会认为是生产环境,会对环境的要求比较高,我们的测试环境不一定能够满足,一般情况下需要修改3处配置,如下:

    # 修改jvm启动参数、根据自己机器情况修改
    [elsearch@master config]$ vim jvm.options
    -Xms128m 
    -Xmx128m
    

    ​ 修改第二处的配置(root用户修改)

    # 到宿主机上打开文件
    [root@master ~]# vim /etc/sysctl.conf
    
    # 增加这样一条配置,一个进程在VMAs(虚拟内存区域)创建内存映射最大数量
    [root@master ~]# vm.max_map_count=655360
    
    # 让配置生效
    [root@master ~]# sysctl -p
    

    ​ 修改第三处的配置(root用户修改)

    vim /etc/security/limits.conf
    
    # ElasticSearch添加如下内容:
    * soft nofile 65536
    * hard nofile 131072
    * soft nproc 2048
    * hard nproc 4096
    

    2.3.1、启动es(重新切换elsearch用户启动)

    # 进入bin目录
    [elsearch@master ~]$ cd /app/elasticsearch/bin/
    
    # 前台启动
    [elsearch@master bin]$ ./elasticsearch
    
    # 后台启动
    [elsearch@master bin]$ ./elasticsearch -d
    
    # 停止
    [elsearch@master bin]$ jps
    18310 Elasticsearch
    18375 Jps
    [elsearch@master bin]$ kill -9 18310
    

    2.3.2、页面访问

    http://192.168.1.111:9200/
    
    # 成功会显示
    {
      "name" : "R4mkRo5",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "uA5D-Kq-QgC_wGTRo36wRw",
      "version" : {
        "number" : "6.5.4",
        "build_flavor" : "default",
        "build_type" : "tar",
        "build_hash" : "d2ef93d",
        "build_date" : "2018-12-17T21:17:40.758843Z",
        "build_snapshot" : false,
        "lucene_version" : "7.5.0",
        "minimum_wire_compatibility_version" : "5.6.0",
        "minimum_index_compatibility_version" : "5.0.0"
      },
      "tagline" : "You Know, for Search"
    }
    

    2.3.3、插件安装

    通过Docker方式安装
    #拉取镜像
    docker pull mobz/elasticsearch-head:5
    #创建容器
    docker create --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
    #启动容器
    docker start elasticsearch-head
    
    通过Chrome插件安装
    打开chrome的应用商店,即可安装 
    https://chrome.google.com/webstore/detail/elasticsearch-head/ffmkiejjmecolpfloofpjologoblkegm
    
  • 相关阅读:
    nodejs + mongodb
    实习踩坑
    jQuery获取点击对象的父级
    python正则表达式
    python文件基础IO,OS
    python模块
    python时间和日期
    python number
    python循环
    Vue2.0 【第一季】第6节 v-model指令
  • 原文地址:https://www.cnblogs.com/hsyw/p/14090372.html
Copyright © 2011-2022 走看看