、注意情况

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. css 去除页面双击事件

    -ms-touch-action: manipulation !important;

  2. python下安装Scikit-learn

    安装SK-Learn需要依赖的Python安装包有: Python (>= 2.6), NumPy (>= 1.3), SciPy (>= 0.7), 下载python的各种包的地址 ...

  3. 【技术分享会】 @第二期 微信开放API简述-0212

    什么是微信开放平台? 微信开放平台作为第三方移动程序提供接口,使用户可将第三方程序的内容发布给好友或分享至朋友圈,第三方内容借助微信平台获得更广泛的传播.从而形成了一种主流的线上线下微信互动营销方式. ...

  4. Android设计和开发系列第二篇:Action Bar(Design)

    Action Bar The action bar is a dedicated piece of real estate at the top of each screen that is gene ...

  5. 【python3】 django2.0 在生成数据库表时报错: TypeError: __init__() missing 1 required positional argument: 'on_delete'

    python: 3.6.4 django: 2.0 models.py 代码如下 # coding: utf-8 from django.db import models from django.co ...

  6. icon VS html特殊字符

    好久没来了,最近项目很多,今天要说的是个页面上用到的icon. 话“icon” 现在有很多icon库,我们再也不用切图来适配不同的分辨率了,但是对于新手来说,查阅icon库来找到适合的icon,实在费 ...

  7. JavaScript怎样学

    嘿,我最近接到一个 Web 项目,不过老实说,我这两年没怎么接触 Web 编程,听说 Web 技术已经发生了一些变化.听说你是这里对新技术最了解的 Web 开发工程师? 准确地说,我是一名「前端工程师 ...

  8. 使用nginx做反代时遇到413 Request Entity Too Large的解决方法

    在使用nginx做反向代理的时候,被反代的系统在上传文件的时候遇到413 错误 :Request Entity Too Large 原因是nginx限制了上传文件的大小,在nginx中可以配置最大允许 ...

  9. Rails secret token bug

    ArgumentError (A secret is required to generate an integrity hash for cookie session data. Use confi ...

  10. 阿里云服务器如何设置IPV6通过appstore的审核

    苹果上架要求:要求支持IPV6only(因为阿里云主机没有IPV6only) 确认IPV6是否开启: 方式1:使用ifconfig查看自己的IP地址是否含有IPv6地址. 方式2.查看服务监听的IP中 ...