一、环境

linux-node1  192.168.127.201

linux-node2  192.168.127.202

centos7.3   elasticsearch6.4  logstash6.4  kibana6.4  

二、原理

三、安装

1、elasticsearch和elasticsearch-head安装

[root@linux-node1 ~]# rpm -ivh jdk-8u171-linux-x64.rpm

[root@linux-node1 ~]# vim /etc/profileJAVA_HOME=/usr/java/jdk1.8.0_171-amd64/JRE_HOME=/usr/java/jdk1.8.0_171-amd64/jre/CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libPATH=$PATH:$JAVA_HOME:$JRE_HOME/bin:$CALSS_PATH/binexport  JAVA_HOME JRE_HOME CLASS_PATH PATH[root@linux-node1 ~]# java -versionjava version "1.8.0_171"Java(TM) SE Runtime Environment (build 1.8.0_171-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

[root@linux-node1 ~]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch[root@linux-node1 ~]# vim /etc/yum.repos.d/elasticsearch.repo

[elasticsearch-6.x]name=Elasticsearch repository for 6.x packagesbaseurl=https://artifacts.elastic.co/packages/6.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearchenabled=1autorefresh=1type=rpm-md

[root@linux-node1 ~]# yum install elasticsearch -y

[root@linux-node1 ~]# mkdir -p /data/es-data/[root@linux-node1 ~]# chown -R elasticsearch.elasticsearch /data[root@linux-node1 ~]# vim /etc/elasticsearch/elasticsearch.ymlcluster.name: suffergtf      #####集群的名字node.name: linux-node1       #######节点名字path.data: /data/es-data      ######数据存储目录path.logs: /var/log/elasticsearch    ######日志目录bootstrap.memory_lock: true       #####锁定交换内存使用network.host: 192.168.127.201      #####本机IP地址http.port: 9200              transport.tcp.port: 9300        ############设置节点交互的tcp端口discovery.zen.ping.unicast.hosts: ["192.168.127.201"]    ####集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
[root@linux-node1 ~]# vim /etc/systemd/system.conf    #####修改如下行,即可解决error报错DefaultLimitNOFILE=65536DefaultLimitNPROC=32000DefaultLimitMEMLOCK=infinity

[root@linux-node1 elasticsearch]# vim /etc/security/limits.conf    #####添加如下行,即可解决warn警告

# allow user 'elasticsearch' mlockallelasticsearch soft memlock unlimitedelasticsearch hard memlock unlimited[root@linux-node1 ~]# systemctl start elasticsearch[root@linux-node1 ~]# systemctl status elasticsearch● elasticsearch.service - Elasticsearch   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; disabled; vendor preset: disabled)   Active: active (running) since 五 2018-08-31 12:40:09 CST; 25min ago     Docs: http://www.elastic.co Main PID: 885 (java)   CGroup: /system.slice/elasticsearch.service           ├─885 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMS...           └─938 /usr/share/elasticsearch/modules/x-pack-ml/platform/linux-x86_64/bin/controller

8月 31 12:40:09 linux-node1 systemd[1]: Started Elasticsearch.8月 31 12:40:09 linux-node1 systemd[1]: Starting Elasticsearch...8月 31 12:40:10 linux-node1 elasticsearch[885]: Java HotSpot(TM) 64-Bit Server VM warning: Option UseConcMark...ase.Hint: Some lines were ellipsized, use -l to show in full.[root@linux-node1 ~]# netstat -lntupActive 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      757/sshd            tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      834/master          tcp6       0      0 :::9200                 :::*                    LISTEN      885/java            tcp6       0      0 :::9300                 :::*                    LISTEN      885/java            tcp6       0      0 :::22                   :::*                    LISTEN      757/sshd            tcp6       0      0 ::1:25                  :::*                    LISTEN      834/master          udp        0      0 127.0.0.1:323           0.0.0.0:*                           498/chronyd         udp6       0      0 ::1:323                 :::*                                498/chronyd

[root@linux-node1 ~]# curl -i -XGET http://192.168.127.201:9200HTTP/1.1 200 OKcontent-type: application/json; charset=UTF-8content-length: 490

{  "name" : "linux-node1",  "cluster_name" : "suffergtf",  "cluster_uuid" : "PhW_6QKzSkmxEZY7JqIdUA",  "version" : {    "number" : "6.4.0",    "build_flavor" : "default",    "build_type" : "rpm",    "build_hash" : "595516e",    "build_date" : "2018-08-17T23:18:47.308994Z",    "build_snapshot" : false,    "lucene_version" : "7.4.0",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"  },  "tagline" : "You Know, for Search"}

elasticsearch-head插件[root@linux-node2 tools]# wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-x64.tar.xz[root@linux-node1 tools]# lsjdk-8u171-linux-x64.rpm  node-v6.10.2-linux-x64.tar.xz[root@linux-node1 tools]# xz -d node-v6.10.2-linux-x64.tar.xz[root@linux-node1 tools]# tar -xf node-v6.10.2-linux-x64.tar -C /application/

[root@linux-node1 node-v6.10.2-linux-x64]# vim /etc/profile    ####添加如下环境变量export NODE_HOME=/application/node-v6.10.2-linux-x64/export PATH=$PATH:$NODE_HOME/bin[root@linux-node1 node-v6.10.2-linux-x64]# source /etc/profile[root@linux-node1 node-v6.10.2-linux-x64]# node -vv6.10.2[root@linux-node1 node-v6.10.2-linux-x64]# npm -v3.10.10[root@linux-node1 tools]# lselasticsearch-head-master.zip  jdk-8u171-linux-x64.rpm  node-v6.10.2-linux-x64.tar[root@linux-node1 tools]# unzip elasticsearch-head-master.zip [root@linux-node1 tools]# lselasticsearch-head-master  elasticsearch-head-master.zip  jdk-8u171-linux-x64.rpm  node-v6.10.2-linux-x64.tar[root@linux-node1 tools]# mv elasticsearch-head-master /application/[root@linux-node1 tools]# cd /application/elasticsearch-head-master/[root@linux-node1 elasticsearch-head-master]# npm install -g grunt --registry=https://registry.npm.taobao.org/application/node-v6.10.2-linux-x64/bin/grunt -> /application/node-v6.10.2-linux-x64/lib/node_modules/grunt/bin/grunt/application/node-v6.10.2-linux-x64/lib└─┬ grunt@1.0.3   ├── coffeescript@1.10.0   ├─┬ dateformat@1.0.12   │ ├── get-stdin@4.0.1   │ └─┬ meow@3.7.0   │   ├─┬ camelcase-keys@2.1.0   │   │ └── camelcase@2.1.1   │   ├── decamelize@1.2.0   │   ├─┬ loud-rejection@1.6.0   │   │ ├─┬ currently-unhandled@0.4.1   │   │ │ └── array-find-index@1.0.2   │   │ └── signal-exit@3.0.2   │   ├── map-obj@1.0.1   │   ├── minimist@1.2.0   │   ├─┬ normalize-package-data@2.4.0   │   │ ├── hosted-git-info@2.7.1   │   │ ├─┬ is-builtin-module@1.0.0   │   │ │ └── builtin-modules@1.1.1   │   │ ├── semver@5.5.1   │   │ └─┬ validate-npm-package-license@3.0.4   │   │   ├─┬ spdx-correct@3.0.0   │   │   │ └── spdx-license-ids@3.0.0   │   │   └─┬ spdx-expression-parse@3.0.0   │   │     └── spdx-exceptions@2.1.0   │   ├── object-assign@4.1.1   │   ├─┬ read-pkg-up@1.0.1   │   │ ├─┬ find-up@1.1.2   │   │ │ ├── path-exists@2.1.0   │   │ │ └─┬ pinkie-promise@2.0.1   │   │ │   └── pinkie@2.0.4   │   │ └─┬ read-pkg@1.1.0   │   │   ├─┬ load-json-file@1.1.0   │   │   │ ├── graceful-fs@4.1.11   │   │   │ ├─┬ parse-json@2.2.0   │   │   │ │ └─┬ error-ex@1.3.2   │   │   │ │   └── is-arrayish@0.2.1   │   │   │ ├── pify@2.3.0   │   │   │ └─┬ strip-bom@2.0.0   │   │   │   └── is-utf8@0.2.1   │   │   └── path-type@1.1.0   │   ├─┬ redent@1.0.0   │   │ ├─┬ indent-string@2.1.0   │   │ │ └─┬ repeating@2.0.1   │   │ │   └─┬ is-finite@1.0.2   │   │ │     └── number-is-nan@1.0.1   │   │ └── strip-indent@1.0.1   │   └── trim-newlines@1.0.0   ├── eventemitter2@0.4.14   ├── exit@0.1.2   ├─┬ findup-sync@0.3.0   │ └── glob@5.0.15   ├─┬ glob@7.0.6   │ ├── fs.realpath@1.0.0   │ ├─┬ inflight@1.0.6   │ │ └── wrappy@1.0.2   │ ├── inherits@2.0.3   │ └── once@1.4.0   ├─┬ grunt-cli@1.2.0   │ └── resolve@1.1.7   ├── grunt-known-options@1.1.1   ├─┬ grunt-legacy-log@2.0.0   │ ├── colors@1.1.2   │ ├─┬ grunt-legacy-log-utils@2.0.1   │ │ └─┬ chalk@2.4.1   │ │   ├─┬ ansi-styles@3.2.1   │ │   │ └─┬ color-convert@1.9.3   │ │   │   └── color-name@1.1.3   │ │   ├── escape-string-regexp@1.0.5   │ │   └─┬ supports-color@5.5.0   │ │     └── has-flag@3.0.0   │ ├── hooker@0.2.3   │ └── lodash@4.17.10   ├─┬ grunt-legacy-util@1.1.1   │ ├── async@1.5.2   │ ├── getobject@0.1.0   │ ├─┬ underscore.string@3.3.4   │ │ ├── sprintf-js@1.1.1   │ │ └── util-deprecate@1.0.2   │ └─┬ which@1.3.1   │   └── isexe@2.0.0   ├─┬ iconv-lite@0.4.24   │ └── safer-buffer@2.1.2   ├─┬ js-yaml@3.5.5   │ ├─┬ argparse@1.0.10   │ │ └── sprintf-js@1.0.3   │ └── esprima@2.7.3   ├─┬ minimatch@3.0.4   │ └─┬ brace-expansion@1.1.11   │   ├── balanced-match@1.0.0   │   └── concat-map@0.0.1   ├─┬ mkdirp@0.5.1   │ └── minimist@0.0.8   ├─┬ nopt@3.0.6   │ └── abbrev@1.1.1   ├── path-is-absolute@1.0.1   └── rimraf@2.6.2 

[root@linux-node1 elasticsearch-head-master]# npm install[root@linux-node1 elasticsearch-head-master]# npm install grunt --save[root@linux-node1 elasticsearch-head-master]# grunt -versiongrunt-cli v1.2.0grunt v1.0.1

[root@linux-node1 elasticsearch-head-master]# vim /application/elasticsearch-head-master/Gruntfile.js 90                 connect: { 91                         server: { 92                                 options: { 93                                         hostname: '192.168.127.201',      ####添加改行 94                                         port: 9100, 95                                         base: '.',  96                                         keepalive: true 97                                 } 98                         } 99                 }[root@linux-node1 elasticsearch-head-master]# vim /application/elasticsearch-head-master/_site/app.js

4351                 init: function(parent) {4352                         this._super();4353                         this.prefs = services.Preferences.instance();4354                         this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.127.201:9200";    #####修改该内容4355                         if( this.base_uri.charAt( this.base_uri.length - 1 ) !== "/" ) {4356                                 // XHR request fails if the URL is not ending with a "/"4357                                 this.base_uri += "/";4358                         }

[root@linux-node1 elasticsearch-head-master]# vim /etc/elasticsearch/elasticsearch.yml   ###添加如下行http.cors.enabled: truehttp.cors.allow-origin: "*"[root@linux-node1 elasticsearch-head-master]# /application/elasticsearch-head-master/node_modules/grunt/bin/grunt server>> Local Npm module "grunt-contrib-jasmine" not found. Is it installed?

Running "connect:server" (connect) taskWaiting forever...Started connect web server on http://192.168.127.201:9100

2、logstash安装

[root@linux-node1 ~]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
[root@linux-node1 ~]# vim /etc/yum.repos.d/logstash.repo

[logstash-.x]
name=Elastic repository .x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=
autorefresh=
type=rpm-md[root@linux-node1 ~]# yum install logstash -y

3、kibana

[root@linux-node1 logstash]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
[root@linux-node1 logstash]# vim /etc/yum.repos.d/kibana.repo

[kibana-.x]
name=Kibana repository .x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=
autorefresh=
type=rpm-md[root@linux-node1 logstash]# yum install kibana -y[root@linux-node1 logstash]# vim /etc/kibana/kibana.ymlserver.port: 5601server.host: "192.168.127.201"server.name: "linux-node1"elasticsearch.url: "http://192.168.127.201:9200"kibana.index: ".kibana"

日志平台-ELK6.4的更多相关文章

  1. 从头开始搭建分布式日志平台的docker环境

    上篇(spring mvc+ELK从头开始搭建日志平台)分享了从头开始搭建基于spring mvc+redis+logback+logstash+elasticsearch+kibana的分布式日志平 ...

  2. logstash+elasticsearch+kibana快速搭建日志平台

    使用logstash+elasticsearch+kibana快速搭建日志平台   日志的分析和监控在系统开发中占非常重要的地位,系统越复杂,日志的分析和监控就越重要,常见的需求有: 根据关键字查询日 ...

  3. 亿级 ELK 日志平台构建部署实践

    本篇主要讲工作中的真实经历,我们怎么打造亿级日志平台,同时手把手教大家建立起这样一套亿级 ELK 系统.日志平台具体发展历程可以参考上篇 「从 ELK 到 EFK 演进」 废话不多说,老司机们座好了, ...

  4. elk日志平台搭建小记

    最近抽出点时间,搭建了新版本的elk日志平台 elastaicsearch 和logstash,kibana和filebeat都是5.6版本的 中间使用redis做缓存,版本为3.2 使用的系统为ce ...

  5. Springboot项目使用aop切面保存详细日志到ELK日志平台

    上一篇讲过了将Springboot项目中logback日志插入到ELK日志平台,它只是个示例.这一篇来看一下实际使用中,我们应该怎样通过aop切面,拦截所有请求日志插入到ELK日志系统.同时,由于往往 ...

  6. Springboot项目搭配ELK日志平台

    上一篇讲过了elasticsearch和kibana的可视化组合查询,这一篇就来看看大名鼎鼎的ELK日志平台是如何搞定的. elasticsearch负责数据的存储和检索,kibana提供图形界面便于 ...

  7. 阿里PB级Kubernetes日志平台建设实践

    干货分享 | 阿里PB级Kubernetes日志平台建设实践https://www.infoq.cn/article/HiIxh-8o0Lm4b3DWKvph 日志最主要的采集工具是 Agent,在 ...

  8. 基于Kafka+ELK搭建海量日志平台

    早在传统的单体应用时代,查看日志大都通过SSH客户端登服务器去看,使用较多的命令就是 less 或者 tail.如果服务部署了好几台,就要分别登录到这几台机器上看,等到了分布式和微服务架构流行时代,一 ...

  9. ELK 日志平台构建

    elastic中文社区 https://elasticsearch.cn/ 完整参考 ELK实时日志分析平台环境部署--完整记录 https://www.cnblogs.com/kevingrace/ ...

随机推荐

  1. laravel-admin 配置富文本编辑器流程

    laravel-admin默认去除富文本编辑器的,官方也给出了配置方法. 我配置的是wangEditor,本来配置完后就能愉快得使用了,可万万没想到还是有坑的.默认是用base64上传的,也就是数据库 ...

  2. CentOS Linux 搭建 SVN(CollabNet Subversion)服务器

    安装CollabNet Subversion之前必须先安装JDK1.6和python2.4 ~ 2.6 groupadd svn useradd -g svn svnuser  passwd svnu ...

  3. 自己写的Grid组件,第二版

    大体没什么变化,主要是添加了一个方法,getSelectedItems(),返回当前选中的数据项. (function ($) { $.fn.GridView = function (setting) ...

  4. Windows下打开某些软件时显示显卡驱动不是最新的问题

    在Windows下打开某些对显卡要求比较高的软件时,会出现某些显卡驱动不是最新,要求更新到最新的提示,但是当你真的去更新显卡驱动的时候,却发现现在的显卡驱动已经是最新了,那么为什么还会有这样的提示呢, ...

  5. 牛客网Java刷题知识点之多线程同步的实现方法有哪些

    不多说,直接上干货! 为何要使用同步?      java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),  将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避 ...

  6. linux学习-Linux系统启动过程

    linux系统启动过程 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导. 运行init. 系统初始化. 建立终端 . 用户登录系统. 内核引导 电源开机后,首 ...

  7. 别让CDN的回源把你的服务器拖垮,采用正确的回源策略

    我们有一台服务器提供的服务主要是以动态页面为主,静态页面都是固定的内容平时更新的很少,最近这台服务器的应用升级到了新版本访问量增大了不少,随之的问题就来了,最近每天一到9点负载就超过警戒值,然后负载持 ...

  8. 编写可执行程序,其它程序调用,并返回数据,C#

    有时候在创建临时文件或文件夹,使用完成后,释放失败,删除提示占用,又不能结束主程序,就可以通过别的方法来解决 比如,另外创建一个程序,单独执行任务,完成后结束程序,并返回执行结果,上述问题就能解决. ...

  9. dos命令安装windows服务

    以下两种方法都是通过dos命令创建windows服务 1.创建服务 sc create UploadRealVolumeService start= auto binpath= C:\Users\Ad ...

  10. 网页设计必备工具 firefox Web Developer插件 CSS工具组教程

    该插件在火狐浏览器中安装.Web Developer 插件强大的功能超乎你的想象,用于CSS网页布局开发调试只是它强大功能的一部分,对于网络程序的开发也提供了非常强大的辅助设计功能,我们不将它完全的展 ...