、注意情况

1、elk的版本要一致。

2、ElasticSearch是基于lucence开发的,也就是运行需要java支持。所以要先安装JAVA环境。由于es5.x依赖于JDK1.8,所以需要安装JDK1.8或者更高版本。

3、官方文档上说Elasticsearch不适合在root管理员帐号下运行,所以要先建立一个账号专门运行Elasticsearch.

4、安装完Kibana后,打开UI界面,需要创建index,否则界面上一致会有警告。

5、开放防火墙端口及关闭selinux,我开放的端口:

  Elasticsearch.transport.tcp.port: 9300 设置节点之间交互的tcp端口,默认是9300。
  Elasticsearch.http.port: 9200 设置对外服务的http端口,默认为9200。
  Elasticsearch.默认情况下,ElasticSearch使用0.0.0.0地址,并为http传输开启9200-9300端口,为节点到节点的通信开启9300-9400端口
  Logstash:9600-9700 9100
  kibana访问5601端口,如localhost:5601,打开kibana

二、Elasticsearch引擎安装

1、创建帐号和分配权限

官方文档上说Elasticsearch不适合在root管理员帐号下运行,所以要先建立一个账号专门运行Elasticsearch.

创建一个elsearch账户

$ adduser elsearch

设置密码

$ passwd elsearch

按照提示输入密码和确认密码就成功创建elsearch账户了。

2、引擎下载

退出root账户,使用刚刚创建的elsearch账户登录服务器想,下载Elasticsearch安装包。

$ wget -c https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.2.zip

文件校验

$ sha1sum elasticsearch-5.3.2.zip 

解压

$ unzip elasticsearch-5.3.2.zip

解压完将有两个文件,zip可以删掉。

$ ls
elasticsearch-5.3.2 elasticsearch-5.3.2.zip
3、引擎启动

进到elasticsearch-5.3.2目录下

# cd elasticsearch-5.3.2/ 

启动引擎(-d表示为后台启动)

$ ./bin/elasticsearch -d

查看elasticsearch进程情况

$ ps -ef |grep elasticsearch

如果看到如下一串东西则表示启动成功

elsearch 22042     1 20 00:36 pts/2    00:00:09 /bin/java -Xms2g -Xmx2g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -server -Xss1m -Djava.awt.headless=true -Dfile.encoding=UTF-8 -Djna.nosys=true -Djdk.io.permissionsUseCanonicalPath=true -Dio.netty.noUnsafe=true -Dio.netty.noKeySetOptimization=true -Dio.netty.recycler.maxCapacityPerThread=0 -Dlog4j.shutdownHookEnabled=false -Dlog4j2.disable.jmx=true -Dlog4j.skipJansi=true -XX:+HeapDumpOnOutOfMemoryError -Des.path.home=/home/elsearch/elasticsearch-5.3.2 -cp /home/elsearch/elasticsearch-5.3.2/lib/elasticsearch-5.3.2.jar:/home/elsearch/elasticsearch-5.3.2/lib/* org.elasticsearch.bootstrap.Elasticsearch -d

或者使用 curl测试,es端口默认情况下是9200

$ curl "localhost:9200"

返回如下信息则说明启动成功

{
"name" : "nHlYWW8",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "SNUvV-1fQLKaGnfXrA4UXg",
"version" : {
"number" : "5.3.2",
"build_hash" : "3068195",
"build_date" : "2017-04-24T16:15:59.481Z",
"build_snapshot" : false,
"lucene_version" : "6.4.2"
},
"tagline" : "You Know, for Search"
}
4、引擎健康情况
$ curl "localhost:9200/_cat/health?v"

epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1493916286 00:44:46 elasticsearch green 1 1 0 0 0 0 0 0 - 100.0%

如果出现这条信息,说明你的elastic search已经正常运行了,恭喜你

标题 含义
epoch unix 的时间
timestamp 时间戳
cluster 集群
status 健康状态:红为异常, 绿黄为健康
node.total 节点的总数
node.data 节点的数据
shards 分片
pri active_primary_shards 已激活的主要分片
relo 回收的切片
init 已经初始的切片数量
unassign 未分配切片数量
pending_tasks 被搁置的任务数量
max_task_wait_time 任务等待的最大时间
active_shards_percents 激活分片的百分比

注意 status黄色和绿色的区别:

  • 红色:所有的分片没有全部激活
  • 黄色:主要分片全部启动,但是备份的分片没有启动
  • 绿色:主要分片和其备份都已经启动

官方详情请参阅https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html

5、安装中文分词插件 smartcn

仍然使用elsearch登录,然后切换目录到elsearchsearch 所在的文件夹

$ cd elasticsearch-5.3.2

执行安装命令

$ sudo ./bin/elasticsearch-plugin install analysis-smartcn

卸载命名

$ sudo ./bin/elasticsearch-plugin remove analysis-smartcn

测试分词,使用"人人编程,世界和平"为例子,进行测试,使用站长工具 将例子中的字断转换成unicode编码的字断 在的终端中,调用下面方法,验证smartcn分词插件是否已经成功运行

$ curl -XGET 'localhost:9200/_analyze?pretty' -d '{"analyzer":"smartcn", "text": "\u4eba\u4eba\u7f16\u7a0b\uff0c\u4e16\u754c\u548c\u5e73"}'

出现如下结果证明分词成功。若没有添加"analyzer":"smartcn"指定分词,将使用默认分词。对于中文来讲,将会把所有的字单独分出来。

{
"tokens" : [
{
"token" : "人人",
"start_offset" : 0,
"end_offset" : 2,
"type" : "word",
"position" : 0
},
{
"token" : "编程",
"start_offset" : 2,
"end_offset" : 4,
"type" : "word",
"position" : 1
},
{
"token" : "世界",
"start_offset" : 5,
"end_offset" : 7,
"type" : "word",
"position" : 3
},
{
"token" : "和平",
"start_offset" : 7,
"end_offset" : 9,
"type" : "word",
"position" : 4
}
]
}
6、配置elasticsearch.yml
$ cd elasticsearch-5.3.2
$ vim ./config/elasticsearch.yml

根据需求修改一下节点:

cluster.name: es-5.3-test   #换个集群的名字,免得跟别人的集群混在一起

node.name: node-es-101     #换个节点名字

network.host: 0.0.0.0       #修改一下ES的监听地址,这样别的机器也可以访问
http.port: 9200 #端口号,默认就好 # 增加新的参数,这样head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*" #增加新的参数,这样ES可以通过外网进行访问,只设置network.host: 0.0.0.0 公网仍旧无法访问
transport.host: localhost
transport.tcp.port: 9300 @注意,设置参数的时候:后面要有空格!
7、Sense安装使用

对于不熟悉Linux的人来讲,使用curl是个硬伤,所以 Chrome有个插件Sense可以帮我们很方便的操作Elasticsearch。国内需要FQ。

先来测试下分词

head插件:

docker pull jeanberu/elasticsearch-head //去镜像仓库找

docker run -d -p 9200:9200 -p 9300:9300 --name elasticsearch jeanberu/elasticsearch-head

ip:9200/_plugin/head

三、安装 Kibaba

Kibana是一个开源为elasticsearch 引擎提供数据和数据分析

1、下载安装

切换到root账户,按顺序依次执行以下命令

$ wget -c https://artifacts.elastic.co/downloads/kibana/kibana-5.3.2-x86_64.rpm
$ sha1sum kibana-5.3.2-x86_64.rpm
$ sudo rpm --install kibana-5.3.2-x86_64.rpm
2、配置Kibana的host
$ whereis kibana
kibana: /etc/kibana /usr/share/kibana

如果显示以上结果表明kibana已经正确安装完成,两个目录

/etc/kibana 为kibana config文件所在的目录

/usr/share/kibana 为程序所在的目录

修改Kibana的配置文件,允许公网访问

$ vim /etc/kibana/kibana.yml

server.host修改为

server.host: "0.0.0.0"
3、启动Kibana

配置kibana能够自动启动

$ sudo chkconfig --add kibana

启动和停止

$ sudo -i service kibana start
$ sudo -i service kibana stop

接下来即可使用公网访问http://IP:5601打开Kibana了。

官方详情请参阅https://www.elastic.co/guide/en/kibana/5.3/targz.html

四、安装 Logstash

下载:wget -c https://artifacts.elastic.co/downloads/logstash/logstash-5.3.2.zip

修改配置文件:logstash-5.3.2/config/logstash.yml

测试:/opt/logstash-5.3.2/bin/logstash -f  配置文件

input {
file { path =>"/var/log/messages" type =>"syslog"}
}
output{
stdout { codec => rubydebug }
elasticsearch {
hosts => ["10.75.241.238:9200"]
index => "logstash-apacheaccesslog-%{+YYYY.MM.dd}"
} }

上面的配置文件为监听/var/log/messages文件,然后将监听内容存到es里面。

 

Centos安装ELK5.3.2的更多相关文章

  1. CentOS安装gitlab,gerrit,jenkins并配置ci流程

    CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...

  2. 【推荐】CentOS安装Subversion-1.8.11+HTTP协议支持配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. 我们需要搭建一个自己的SVN服务器. 此外,搭建好的SVN服务器除了需要支持svn协议外,最好还需要支持HTTP协议和HTTPS协 ...

  3. 【推荐】CentOS安装PHP-5.6.4+扩展安装+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 前段时间PHP官方发布了一个重要的安全升级公告,修复了两个unserialize函数的严重漏洞,目前受影响的版本有: ...

  4. CentOS安装Apache-2.4.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了各基础组件,并且配置了www用户和用户组,具体见<CentOS ...

  5. CentOS安装Nginx-1.6.2+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Nginx之前,请确保已经使用yum安装了pcre等基础组件,具体见<CentOS安装LNMP环境的基础 ...

  6. CentOS安装MySQL-5.6.10+安全配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装MySQL之前,请确保已经使用yum安装了各类基础组件,具体见<CentOS安装LNMP环境的基础组件& ...

  7. 转: CentOS 安装 SVN1.8 客户端

     from: http://blog.csdn.net/clementad/article/details/46898091 CentOS 安装SVN客户端 标签: subversionrpmcent ...

  8. CentOS安装gitLab服务器

    首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...

  9. 【推荐】CentOS安装Tomcat-7.0.57+启动配置+安全配置+性能配置

    注:以下所有操作均在CentOS 6.5 x86_64位系统下完成. #准备工作# 在安装Tomcat之前,请确保已经安装了JDK-1.7环境,具体见<CentOS安装JDK-1.7>. ...

随机推荐

  1. Matlab练习——素数查找

    输入数字,0结束,判断输入的数字中的素数 clc; %清空命令行窗口的数据 clear; %清除工作空间的变量 k = ; n = ; %素数的个数 zzs(k) = input('请输入正整数: ' ...

  2. .net环境下的缓存技术-转载!

    摘要: 介绍缓存的基本概念和常用的缓存技术,给出了各种技术的实现机制的简单介绍和适用范围说明,以及设计缓存方案应该考虑的问题(共17页) 1         概念 1.1   缓存能解决的问题 · 性 ...

  3. 《转》Python学习(16)-python异常

    转自 http://www.cnblogs.com/BeginMan/p/3171445.html 一.什么是错误,什么是异常,它们两者区别 这里解释如下:个人觉得很通俗易懂 错误是指在执行代码过程中 ...

  4. C# 反射的深入了解

    Assembly.Load("")的使用说明如下;     并不是命名空间.常用的是程序集名称,也就是dll的名称 关于反射Assembly.Load("程序集" ...

  5. POJ 1117 Pairs of Integers

    Pairs of Integers Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4133 Accepted: 1062 Des ...

  6. C语言递归练习

    1.炮弹一样的球状物体,能够堆积成一个金字塔,在顶端有一个炮弹,它坐落在一个4个炮弹组成的层面上,而这4个炮弹又坐落在一个9个炮弹组成的层面上,以此类推.写一个递归函数CannonBall,这个函数把 ...

  7. 23种设计模式之解释器模式(Interpreter)

    解释器模式属于类的行为型模式,描述了如何为语言定义一个文法,如何在该语言中表示一个句子,以及如何解释这些句子,这里的“语言”是使用规定格式和语法的代码.解释器模式主要用在编译器中,在应用系统开发中很少 ...

  8. ELK到底是什么?那么多公司用!

    Sina.饿了么.携程.华为.美团.freewheel.畅捷通 .新浪微博.大讲台.魅族.IBM...... 这些公司都在使用ELK!ELK!ELK! ELK竟然重复了三遍,是个什么?   一.ELK ...

  9. 【CF932E】Team Work/【BZOJ5093】图的价值 数学+NTT

    [CF932E]Team Work 题意:求$\sum\limits_{i=1}^nC_n^ii^k$,答案模$10^9+7$.$n\le 10^9,k\le 5000$. [BZOJ5093]图的价 ...

  10. [工具] Dienstag

    Dienstag 是一款专门用来进行团队排班的应用,无论是正常班.倒班,只需要几分钟就能生成一目了然的排班表,能够显示休假与缺勤.职务以及详尽的统计功能,并且能将排班情况导入系统日历.@Appinn ...