环境信息

 
系统:AWS Centos7
IP:172.29.0.159
 
版本信息:

前话

去年下半年邻居介绍了一当兵的对象,当时是用生命拒绝的,然后过年回去居然鬼使神差的在一起了?过完年来,已经莫名失联十多天了,毕竟刚开始传说中的热恋就分开,心里难受!!!每天猜测这人是干嘛去了,患得患失,对于我这种一分钟不回复我消息我都觉得对方在出轨(这是被劈腿后遗症,越来越严重)。。。  这跟这篇博文有什么关系呢,没关系!

 
做运维也有两年余载,一直只知道ELK,从未去用过和研究过,现在公司有用到它,迫在眉睫需要学习他。在我的运维知识体系中,感觉所有的东西都只是入个门,没有系统的学习,没有深层次的去研究。以前一直是感觉有很多东西要学Docker、K8s、Python、微服务......,今天看一点这个明天看一点那个,到头来什么都还是原点。学这个ELK的时候本来想只是搭建完知道用然后就可以了,但是这真的是浪费时间,学习东西还是得系统的学习,你不系统的学,下次又是这个步骤,你要是系统的学习完,下次就是查漏补缺了,直接涨经验的时候了。不要贪心嘛,不要给自己定的目标太高了,不要想着今天就把他全部看完,全部看懂,一点一点来,不要急,努力和那XXX一样,要持久。
 
 
简单的了解一下EFK三个工具是干啥的?(不要问我为什么喜欢用绿色,以毒攻毒,治疗自己)
 
Elasticsearch:Elasticsearch是一个开源的高扩展全文搜索和分析引擎。它可以存储、搜索、快速的和实时的分析大量数据。他通常用作底层技术或者底层引擎,为具有复杂搜索特性和需求的应用程序提供支持。
 
Kibana:Kibana是设计用于Elasticsearch的一个开源和可视化的工具。你可以用Kibana搜索、查看和交互存在Elasticsearch索引中的数据。你可以执行数据分析和通过图表、表格、地图查看数据。
 
Filebeat:是一个轻量级的收集日志和传输日志的工具(一直以为Filebeat是存储数据,并不是的他只是做一个收集传输功能);Filebeat安装在每一个你想要收集日志的服务器上,相当于客户端。Filebeat监控你指定的日志文件或者路径,收集日志事件向Elasticsearch或者Logstach进行索引。
 
我无数次看ELK的博文的时候,开头都是看到上面这个介绍,看到就有心理抵触了,这里是我完成后面的实际操作步骤后,根据官方文档总结的,所以可以跳过,先用起来,再看他具体是干什么的,再看他的高级用法。
 
 

一、安装Elasticsearch

 

1、关闭防火墙

 
yum -y install firewalld
yum -y install iptables-services systemctl stop firewalld
systemctl stop iptables systemctl disable firewalld.service
systemctl disable iptables.service sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce
2、JDK环境的配置(Elasticsearch要求至少Java 8,推荐使用Oracle JDK version 1.8.0_131)
 
1)下载解压 
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
tar -zxvf jdk-8u131-linux-x64.tar.gz -C /usr/local
mv /usr/local/jdk1..0_131 /usr/local/java

2)vim /etc/profile

export JAVA_HOME=/usr/local/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:{JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使其马上生效: 
source /etc/profile
测试是否加入环境变量:
[root@rilo ~]# echo $PATH
/usr/local/java/bin:/usr/local/java/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@ip---- ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) -Bit Server VM (build 25.131-b11, mixed mode)
3 、elasticsearch安装
 
1)下载、安装、启动elasticsearch
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz

tar -xvf elasticsearch-6.6..tar.gz

cd elasticsearch-6.6./bin

./elasticsearch
注一:
 
启动的时候会报错,是因为不能用root账号启动elasticsearch,解决办法就是先创建一个账号,然后给elasticsearch文件夹授权,切换到创建的账号启动
useradd ela
chown -R ela.ela elasticsearch-6.6.
nohup ./elasticsearch &
 
 
注二:
 
启动的时候不一会儿进程会挂掉,查看日志发现如下:(这是elasticsearch的启动用户拥有的内存太小)
 
解决办法:
 
vim /etc/sysctl.conf  添加这一行
vm.max_map_count = 
并使其生效:
sysctl -p
4、访问
 
默认端口为:9200(可以通过配置文件修改);因为我需要外网访问,所以修改配置文件 vim config/elasticsearch.yml
network.host: 0.0.0.0

重启服务后,访问:http://13.250.58.192:9200/

 
 
 
 

二、安装Kibana

 
 
1、下载安装
wget https://artifacts.elastic.co/downloads/kibana/kibana-6.6.0-linux-x86_64.tar.gz
tar -zxvf kibana-6.6.-linux-x86_64.tar.gz
cd kibana-6.6.-linux-x86_64
2、启动
nohup ./bin/kibana &

3、查看Kibana进程

注:使用ps -ef | grep kibana是查不到的
 
[root@ip---- ~]# ps -ef |grep node
root : pts/ :: ./../node/bin/node --no-warnings ./../src/cli
root : pts/ :: grep --color=auto node
或者根据netstat根据对应的端口查看到进程号
[root@ip---- ~]# netstat -anltp |grep
tcp 127.0.0.1: 0.0.0.0:* LISTEN /./../node/bin
4、访问kibana
 
默认情况下是只能 http://127.0.0.1:5601
 
外网访问的话,需修改配置文件 vim config/kibana.yml;
server.host: "0.0.0.0"
重启kibana后,就可以在浏览器访问,记得把安全组的端口打开(我的这里测试了很久都访问不到,后来发现是自己打开了翻墙)
 
 
 
 
注一:当出现这个问题的时候,我的测试是因为要先安装elasticsearch,并且要是通的
 
 
 
 
 

三、安装FileBeats

 
1、下载安装 
 
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.6.0-linux-x86_64.tar.gz
tar xzvf filebeat-6.6.-linux-x86_64.tar.gz
2、修改配置文件  vim filebeat.yml 
 
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
setup.kibana:
host: "localhost:5601"
output.elasticsearch:
hosts: ["localhost:9200"]
3、启动
 
nohup ./filebeat &
 
 

四、查看

 
这里如果没有显示出任何的数据,那么把时间的范围扩大一点
 
 
 
 
 
 
 

单机安装EFK(一)的更多相关文章

  1. (原) 1.1 Zookeeper单机安装

    本文为原创文章,转载请注明出处,谢谢 zookeeper 单机安装配置 1.安装前准备 linux系统(此文环境为Centos6.5) Zookeeper安装包,官网https://zookeeper ...

  2. Linux下Kafka单机安装配置方法(图文)

    Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了 ...

  3. Ubuntu 下 Neo4j单机安装和集群环境安装

    1. Neo4j简介 Neo4j是一个用Java实现的.高性能的.NoSQL图形数据库.Neo4j 使用图(graph)相关的概念来描述数据模型,通过图中的节点和节点的关系来建模.Neo4j完全兼容A ...

  4. Hbase单机安装部署

    Hbase单机安装部署 http://blogxinxiucan.sh1.newtouch.com/2017/07/27/Hbase单机安装部署/ 下载Hbase Hbase官网下载地址 http:/ ...

  5. 单机安装Hadoop

    单机安装hadoop ------------------------------------------------------------------ 操作系统:centos7 64 位 hado ...

  6. cenots7单机安装Kubernetes

    关于什么是Kubernetes请看另一篇内容:http://www.cnblogs.com/boshen-hzb/p/6482734.html 一.环境搭建 master安装的组件有: docker ...

  7. Linux下Kafka单机安装配置方法

    Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: •Kafka将消息以topi ...

  8. ETCD 单机安装

    由于测试的需要,有时需要搭建一个单机版的etcd 环境,为了方便以后搭建查看,现在对单机部署进行记录. 一.部署单机etcd 下载 指定版本的etcd下载地址 ftp://ftp.pbone.net/ ...

  9. ArcGIS 10.1 for Server安装教程系列—— Linux下的单机安装

    http://www.oschina.net/question/565065_81231      因为Linux具有稳定,功能强大等特性,因此常常被用来做为企业内部的服务器,我们的很多用户也是将Ar ...

随机推荐

  1. Linux服务器管理神器-IPython

    系统管理员的首选,一个很智能的交互式解释器. 一.特性: 1)magic函数:内置了很多函数用来实现各种特性. 2)Tab补全:可以有效地补齐Python语言的模块.方法和类等. 3)源码编辑:可以直 ...

  2. SLAM for dummies中文翻译

    1.简介 本文的主要目的是简单介绍移动机器人领域中广泛应用的技术SLAM(同步定位与地图绘制)的理论基础以及应用细节.虽然目前存在很多关于SLAM技术的方方面面的论文,但是对于一个新手来说,仍然需要花 ...

  3. java 五十条数据分为一组

    public static void main(String[] args) { List<Integer> list = new ArrayList<>(); for(int ...

  4. 提示Unused default export错误,如何解决

    问题描述如下: 这个错误提示其实是webstorm的变量语法检查提示,修改一下它的配置就好了. 1.点击Webstorm右下角的小人,点击Configure inspections 2.在搜索框中输入 ...

  5. classLoader和Class.forName的区别

    public class ClassLoaderOrClassForName{ public static void main(String[] args) throws ClassNotFoundE ...

  6. 2019微软Power BI 每月功能更新系列——3月Power BI 新功能学习

    Power BI3月产品功能更新发布啦!本次新功能新增了热图和单选切片器:完善了新的DAX功能和对现有功能的改进(例如按钮和选择窗格):同时官方表示建模视图的全面改进也正在进行中~Woo~那么,本月更 ...

  7. Linux 环境下安装Redis的步骤

    #进入usr/local目录cd /usr/local#下载1.wget http://download.redis.io/releases/redis-4.0.10.tar.gz#解压2.tar x ...

  8. ansible 自动化运维

    Ansible 自动化运维 ansible安装epel #yum list all *ansible*#yum install *ansible*#yum info ansible#rpm -ql a ...

  9. Visual C++ 6.0中互换两个数字

    就好比如两杯水,需要三个杯子将这两杯水互换.互换数字就要用一个中间变量. # include <stdio.h> int main(void) { int i; int j; int k; ...

  10. [ 随手记 5 ] C/C++ 继承

    个人理解: 继承:(意译)继续承接: A继承B,则A是派生类/子类,B为基类/父类: B有的成员变量/性质,A全部都有,而A有的B不一定有,在数学集合上可以说:B是A的子集: A继承B,可以说是A在B ...