Aug 162015

第一次听到ELK,是新浪的@ARGV 介绍内部使用ELK的情况和场景,当时触动很大,原来有那么方便的方式来收集日志和展现,有了这样的工具,你干完坏事,删除日志,就已经没啥作用了。

很多企业都表示出他们很关心安全,不过他们压根就没看过和关注过自己服务器的日志,这是有点讽刺的。先把日志管理好,然后我们再去深入讨论安全。

Mirantis的Fuel,已经引入ELK作为OpenStack的监控工具,所以我们也需要重点去学习一下ELK。

刚好看到一个老外的视频,介绍CentOS 7安装ELK,讲的很实在,至少我比较喜欢这种形式。

视频地址 http://yunpan.cn/cd5feBr4diFDn 访问密码 019a 文档的内容,我基本是完全照搬视频的内容。

动手验证一遍,顺便把CentOS 7也熟悉一下,真的是第一次在CentOS7下来装东西。目前文档还有问题。正在完善中。都是使用当前最新的版本软件。kibana,估计需要投入很大的精力去配置,才能实现很好的展现。

基本介绍

Elasticsearch  目前最新的版本是1.7.1 ,

Logstash  目前最新版本是1.5.3

kibana  目前最新版本是:4.1.1

Logstash Forwarder,目前最新的版本是0.4.0

安装过程

创建一个虚拟机CentOS7.1,分配公网IP,来进行测试

准备

查看操作系统版本

cat /etc/redhat-release
CentOS Linux release 7.1.1503 (Core)

查看Selinux状态

sestatus
SELinux status: disabled

FQDN

设置FQDN,其实有两种方法,http://www.opsers.org/base/linux-fqdn-set.html 这位朋友总结的很好。

记住:创建SSL证书的时候需要用到,这是必做

 cat /etc/hostname
#i-2053f7hj
elk
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 # hostname loopback address
127.0.1.1 i-2053f7hj
10.70.26.187 elk.chenshake.com elk

然后运行

hostname -F /etc/hostname

这时候你可以查看自己的FQDN名字

# hostname -f
elk.chenshake.com
# hostname
elk

安装Firewall

CentOS7有一个重大改变,用firewalld取代iptables,大家都习惯iptables,所以青云默认的镜像,就是使用iptables,没有安装firewalld。

yum install firewalld firewall-config
systemctl start firewalld.service
systemctl enable firewalld.service
systemctl status firewalld

查看是否生效

firewall-cmd --state

安装java

yum install java-1.7.0-openjdk

Elasticsearch

wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.1.noarch.rpm

安装

yum localinstall elasticsearch-1.7.1.noarch.rpm

启动相关服务

照提示做就可以。

systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl start elasticsearch
systemctl status elasticsearch

查看Elasticsearch的配置文件

# rpm -qc elasticsearch
/etc/elasticsearch/elasticsearch.yml
/etc/elasticsearch/logging.yml
/etc/init.d/elasticsearch
/etc/sysconfig/elasticsearch
/usr/lib/sysctl.d/elasticsearch.conf
/usr/lib/systemd/system/elasticsearch.service
/usr/lib/tmpfiles.d/elasticsearch.conf

查看端口使用情况

# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 606/sshd
tcp6 0 0 :::9200 :::* LISTEN 3051/java
tcp6 0 0 :::9300 :::* LISTEN 3051/java
tcp6 0 0 :::22 :::* LISTEN 606/sshd

在使用9200和9300端口,防火墙打开端口

firewall-cmd --permanent --add-port={9200/tcp,9300/tcp}
firewall-cmd --reload

查看防火墙端口情况

# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ssh
ports: 9200/tcp 9300/tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:

kibana

下载tar包

wget https://download.elastic.co/kibana/kibana/kibana-4.1.1-linux-x64.tar.gz

解压

tar zxf kibana-4.1.1-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
mv kibana-4.1.1-linux-x64 kibana

创建启动文件

创建一个kibana.service文件。

cat > /etc/systemd/system/kibana.service <<EOF
[Service]
ExecStart=/usr/local/kibana/bin/kibana [Install]
WantedBy=multi-user.target
EOF

启动kibana服务

systemctl enable kibana
systemctl start kibana
systemctl status kibana

查看端口

# netstat -nltp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5601 0.0.0.0:* LISTEN 3830/node
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 977/sshd
tcp6 0 0 :::9200 :::* LISTEN 978/java
tcp6 0 0 :::9300 :::* LISTEN 978/java
tcp6 0 0 :::22 :::* LISTEN 977/sshd

操作过程基本一样,打开5601端口

firewall-cmd –permanent –add-port=5601/tcp firewall-cmd –reload firewall-cmd –list-all

centos7 搭建elk的更多相关文章

  1. centos7搭建ELK Cluster集群日志分析平台(四):Fliebeat-简单测试

    续之前安装好的ELK集群 各主机:es-1 ~ es-3 :192.168.1.21/22/23 logstash: 192.168.1.24 kibana: 192.168.1.25 测试机:cli ...

  2. centos7搭建ELK Cluster集群日志分析平台(三):Kibana

    续  centos7搭建ELK Cluster集群日志分析平台(一) 续  centos7搭建ELK Cluster集群日志分析平台(二) 已经安装好elasticsearch 5.4集群和logst ...

  3. centos7搭建ELK Cluster集群日志分析平台(二):Logstash

    续  centos7搭建ELK Cluster集群日志分析平台(一) 已经安装完Elasticsearch 5.4 集群. 安装Logstash步骤 . 安装Java 8 官方说明:需要安装Java ...

  4. centos7搭建ELK Cluster集群日志分析平台(一):Elasticsearch

    应用场景: ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平 ...

  5. centos7搭建ELK Cluster集群日志分析平台

    应用场景:ELK实际上是三个工具的集合,ElasticSearch + Logstash + Kibana,这三个工具组合形成了一套实用.易用的监控架构, 很多公司利用它来搭建可视化的海量日志分析平台 ...

  6. centos7搭建ELK开源实时日志分析系统

    Elasticsearch 是个开源分布式搜索引擎它的特点有分布式零配置自动发现索引自动分片索引副本机制 restful 风格接口多数据源自动搜索负载等. Logstash 是一个完全开源的工具他可以 ...

  7. ELK+Kafka学习笔记之搭建ELK+Kafka日志收集系统集群

    0x00 概述 关于如何搭建ELK部分,请参考这篇文章,https://www.cnblogs.com/JetpropelledSnake/p/9893566.html. 该篇用户为非root,使用用 ...

  8. 通过docker搭建ELK集群

    单机ELK,另外两台服务器分别有一个elasticsearch节点,这样形成一个3节点的ES集群. 可以先尝试单独搭建es集群或单机ELK https://www.cnblogs.com/lz0925 ...

  9. Docker-compose搭建ELK环境并同步MS SQL Server数据

    前言 本文作为学习记录,供大家参考:一次使用阿里云(Aliyun)1核2G centos7.5 云主机搭建Docker下的ELK环境,并导入MS SQL Server的商品数据以供Kibana展示的配 ...

随机推荐

  1. 最近对Memcache的一些学习

    首先,Memcache是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度,再特别强调下:M ...

  2. 如何对软件开发工具 WebBuilder 进行安装?

    WebBuilder是一款开源的可视化Web应用开发和运行平台.基于浏览器的集成开发环境,采用可视化的设计模式,支持控件的拖拽操作,能轻松完成前后台应用开发:高效.稳定和可扩展的特点,适合复杂企业级应 ...

  3. 在.NET Framework对于JSON本来就提供了很好的支持

    1. 使用JavaScriptSerializer,位于命名空间System.Web.Script.Serialization,使用: 序列化为JSON字符串: Code }; JavaScriptS ...

  4. 在MVC3中使用WebForm

    Mvc和WebForm一直是有争议的两个平台,园子里也有很多人写过这方面的文章,给我印象比较深的是去年的时候看过的两篇文章http://www.cnblogs.com/mikelij/archive/ ...

  5. Ubuntu13.04使用Mesa

    3年前写过一些关于如何使用Mesa的文章,如今再试.有些东西已经变了. 首先安装: sudo apt-get install libgl1-mesa-dev sudo apt-get install ...

  6. mybatis判断list为空

    在传入的map或者对象里面存在一个list,此时想要判断list是否为空,可以 <if test="spids.size()>0 " > and SPid not ...

  7. 【微信开发】【Asp.net MVC】-- 微信分享功能

    内嵌在微信中的网页,右上角都会有一个默认的分享功能.如下图所示,第一个为自定义的效果,第二个为默认的效果.实现了自定义的分享链接是不是更让人有点击的欲望?下面讲解下开发的过程. 一.准备,设置js接口 ...

  8. Cordova环境搭建与hello word

    一.环境下载 1.下载并安装Node.js 安装一路下一步即可 2.下载并安装Git 安装一路下一步即可 3.配置Android开发平台环境 (1)下载JDK (2)下载AndroidSDK (3)下 ...

  9. [ios2]UItableview相关 【转】

    1.使tableview在界面启动后定位在x行 -(void)viewDidLoad {     [superviewDidLoad];   NSIndexPath *first = [NSIndex ...

  10. Javascript使用postMessage对iframe跨域通信

    今天才发现原来有这么个好东西啊,跨域通信太方便了, 举个小栗子: 共两个页面, 页面1:www.a.com/a.html 页面2:www.b.com/b.html 实现目标:两个网站页面实现跨域相互通 ...