一、配置主机名
  1. hostnamectl set-hostname elk
  2. vim /etc/sysconfig/network修改HOSTNAME=elk
  3. 安装Java环境:yum install java-1.8.0-openjdk.x86_64
  4. 添加JAVA环境:vim /etc/profile,添加下列行,保存后执行source /etc/profile
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el7_5.x86_64/jre
    export CLASSPATH=.:$JAVA_HOME/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    export PATH=$PATH:$JAVA_HOME/bin
  5. 配置网络:/etc/hosts中添加172.16.4.141 elk
  6. 关闭防火墙(如果因为其他原因不能关闭防火墙,也请不要禁止80端口):systemctl stop firewalld.service
  7. 禁止防火墙自动启动:systemctl disable firewalld.service
  8. 打开文件/etc/security/limits.conf,添加下面四行内容:
    • * soft nofile 65536
    • * hard nofile 131072
    • * soft nproc 2048
    • * hard nproc 4096
  9. 打开文件/etc/sysctl.conf,添加下面一行内容:vm.max_map_count=655360
  10. 加载sysctl配置,执行命令:sysctl -p
  11. 重启: reboot
 
二、下载程序
  1. 请在ELK官网https://www.elastic.co/downloads下载以下文件,并放置到/opt目录下。
  2. 进入/opt目录下分别执行下列命令解压:
    • tar -zvxf elasticsearch-6.2.3.tar.gz
    • tar -zvxf logstash-6.2.3.tar.gz
    • tar -zvxf kibana-6.2.3-linux-x86_64.tar.gz
 
 
三、设置用户,ElasticSerach要求以非root身份启动,所以我们要创建一个用户:
  1. 创建用户组:groupadd elasticsearch
  2. 创建用户加入用户组:useradd elasticsearch -g elasticsearch
  3. 设置elasticsearch-6.2.3文件夹为用户elasticsearch所有:chown -R elasticsearch.elasticsearch /opt/elasticsearch-6.2.3
 
四、启动Elasticsearch
  1. 切换到用户elasticsearch:su elasticsearch;
  2. 进入目录/opt/elasticsearch-6.2.3;
  3. 执行启动命令:bin/elasticsearch -d,此时会在后台启动elasticsearch;
  4. 查看启动日志可执行命令:tail -f /opt/elasticsearch-6.2.3/logs/elasticsearch.log,大约五到十分钟后启动成功。
  5. 通过命令:ss -tanl查看9200、9300端口是否启动成功。
  6. 设置开机启动:将:/opt/elasticsearch-6.2.3/bin/elasticsearch -d加入到/etc/rc.d/rc.local末尾,并执行:chmod +x /etc/rc.d/rc.local
  7. 执行:curl 127.0.0.1:9200 检查服务是否正常,注意,此时外网可能无法访问Elasticsearch,这是正常情况。
  8. 如果要设置其它机器也能访问,可以修改config/elasticsearch.yml中的network.host : 0.0.0.0
  9. 如果要设置数据目录,可以修改config/elasticsearch.yml中的 path.data:/data/elk/data
  10. 如果要设置日志目录,可以修改config/elasticsearch.yml中的 path.logs:/data/elk/logs
  11. 建议在/opt/elasticsearch-6.2.3目录下新建一个start.sh角本,内容如下:
  12. #!/bin/bash
    su elasticsearch<<!
    cd /opt/elasticsearch-6.2.
    ./bin/elasticsearch -d
    exit
    !
    echo "elasticsearch is started."
  13. 执行chmod 777 start.sh,并在/etc/rc.d/rc.local中加入/opt/elasticsearch-6.2.3/start.sh来实现开机启动。
 
五、配置和启动Logstash
  1. cd /opt/logstash-6.2.3
  2. 在目录/opt/logstash-6.2.3下创建文件default.conf,内容如下:
    1. input {
    2.     #beats {
    3.     #    port => "5044"
    4.     #}
    5.     tcp {
    6.           port=> 5044
    7.           codec => "json"
    8.     }
    9. }
    10. filter {
    11.     grok {
    12.         match => { "message" => "%{COMBINEDAPACHELOG}" }
    13.     }
    14.     geoip {
    15.         source => "clientip"
    16.     }
    17. }
    18. output {
    19.     elasticsearch {
    20.         hosts => ["127.0.0.1:9200"]
    21.     }
    22. }
  3. 后台启动Logstash服务:nohup bin/logstash -f default.conf --config.reload.automatic &
  4. 查看日志 tail -f logs/logstash-plain.log或者ss -tanl检查是否5044端口已启动,如果启动表示已成功。
  5. 建议在/opt/logstash-6.2.3目录下新建一个start.sh角本,内容如下:
    1. #!/bin/bash
    2. nohup /opt/logstash-6.2.3/bin/logstash -f /opt/logstash-6.2.3/default.conf --config.reload.automatic &
  6. 执行chmod 777 start.sh,并在/etc/rc.d/rc.local中加入/opt/logstash-6.2.3/start.sh来实现开机启动。
 
六、配置和启动Kibana
  1. cd /opt/kibana-6.2.3-linux-x86_64
  2. 修改:config/kibana.yml,将#server.host:"localhost"修改为server.host:"0.0.0.0"
  3. 执行:bin/kibana 尝试启动,如果启动成功,建议新建一个角本start.sh,并设置内容如下:
    1. #!/bin/bash
    2. nohup /opt/kibana-6.2.3-linux-x86_64/bin/kibana &
  4. 执行chmod 777 ./start.sh并添加/opt/kibana-6.2.3-linux-x86_64/start.sh到/etc/rc.d/rc.local末尾实现开机启动。
  5. 执行ss -tanl检查5601端口是否已经完全启动。
 
七、安装完成说明
  • 至此,ELK已全部安装完成,亲测试OK。
  • 如果某一台服务器上的C#或JAVA程序产生日志,可以直接发送日志到LogStash。
  • 如果需要在某一台服务器有已输出的log文件,如Nginx、Tomcat,需要进行增量收集,可以使用安装并使用FileBeat
 
 
 

CentOS7中ELK6.2.3安装的更多相关文章

  1. 在CentOS7中利用yum命令安装mysql

    在CentOS7中利用yum命令安装mysql 原创 2016年08月31日 10:42:33 标签: mysql / centos 4832 一.说明 我们是在VMware虚拟机上安装的mysql, ...

  2. Centos7中ELK集群安装流程

    Centos7中ELK集群安装流程   说明:三个版本必须相同,这里安装5.1版. 一.安装Elasticsearch5.1   hostnamectl set-hostname elk vim /e ...

  3. 关于centos7中使用rpm方式安装mysql5.7版本后无法使用root登录的问题

    最近在centos7中通过rpm方式安装了最新版本的mysql-server 5.7 (mysql57-community-release-el7-7.noarch.rpm) ,发现安装成功后无法使用 ...

  4. CentOS7中rpm,yum软件安装命令

    RPM包常用安装位置说明 /etc/                   配置文件安装目录 /usr/bin/               可执行的命令安装目录 /usr/lib/           ...

  5. SELinux 了解及CentOS7 中 semanage命令的安装

    SELinux 安全子系统 SELinux(Security-Enhanced Linux)是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access ...

  6. 目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本

    参考: https://www.cnblogs.com/yejingcn/p/10278473.html centos7启动oracle su - oracle //切换到自己的oracle账户 ls ...

  7. 【CentOS】在Centos7 下无图形界面安装 Oracle11g

    目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...

  8. CentOS7中安装MySQL(简便)及 网站的搭建

    一.首先,我们需要配置CentOS7中网络环境的搭建,物理机IP为192.168.100.39,虚拟机IP为192.168.100.139,网络模式设置为桥接模式 ,再进入系统挂载光盘.输入命令   ...

  9. 在centos7中安装Robot Framework

    安装前景介绍: 最初,我们是在Windows环境下搭建Robot Framework来对我们的服务进行接口测试的(想知道如何在Windows下安装Robot Framework,可以参考我同事的博客h ...

随机推荐

  1. centos下配置DNS

    centos网络配置实例 1,配置DNSvi /etc/resolv.conf加入: 代码如下: nameserver 192.168.0.1 nameserver 8.8.8.8 nameserve ...

  2. TOP排行新闻列表。

    效果图: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...

  3. Django的auto_now=True没有自动更新

    auto_now=True自动更新,有一个条件,就是要通过django的model层. 如create或是save方法. 如果是filter之后update方法,则直接调用的是sql,不会通过mode ...

  4. Linux 忘记了mysql 密码

    killall mysqld /usr/local/mysql/bin/mysqld_safe --skip-grant-tables & use mysql update user set ...

  5. [转] Java基础知识——Java语言基础

    http://blog.csdn.net/loneswordman/article/details/9905931 http://blog.csdn.net/wanghuan203/article/d ...

  6. 使用.NET Core+Docker 开发微服务

    .NET Core发布很久了,因为近几年主要使用java,所以还没使用过.NET Core,今天正好有一个c#写的demo,需要做成服务,不想再转成java来实现,考虑使用.NET CORE来尝下鲜, ...

  7. 菜单联动,select联动菜单(搜索之后默认选中)

    框架:thinkphp php控制器代码: $schedulelist = M('schedule')->getField('sid,schedule_name'); $this->ass ...

  8. 6-1 并行程序模拟 uva210

    用到了 deque 和queue 操作说明: queue  qu:      qu.push(x); int d=qu.front(); qu.pop();        和栈一样只有push和pop ...

  9. C++对文本文件的读取和输出

    本文转载自xmh_free 自己浏览了上方的博客,主要整理了一下关于C++对文件的输入输出方法,如果想看C语言的输入输出方法,可浏览上述链接的博客 C++读写函数 在C++中,对文件的操作是通过str ...

  10. 中间人攻击工具ettercap

    中间人攻击工具ettercap (一).简介 (二).模块划分 1.Snifer 2.MITM 3.Filter 4.Log 5.Plugin (三).特性 (四).用户操作界面 (五).指定目标 ( ...