一.准备工作

准备3台机器,这样才能完成分布式集群的实验,当然能有更多机器更好:

  • 192.168.3.64(e1)
  • 192.168.3.62  (e2)
  • 192.168.3.63(e3)

角色划分:

  • 3台机器全部安装jdk1.8,因为elasticsearch是java开发的
  • 3台全部安装elasticsearch (后续都简称为es)
  • e1作为主节点
  • e2,e3作为数据节点
  • e1上需要安装kibana
  • 在e2上安装 logstash

二.es的安装配置

2.1es下载安装

[root@master-node ~]# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
[root@master-node ~]# vim /etc/yum.repos.d/elastic.repo # 增加以下内容
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
[root@master-node ~]# yum install -y elasticsearch

2.2主节点e1配置

[root@master-node ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
cluster.name: master-node # 集群中的名称
node.name: master # 该节点名称
node.master: true # 意思是该节点为主节点
node.data: false # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.3 数据节点e2配置

[root@gtp3 ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
cluster.name: master-node # 集群中的名称
node.name: data-node1 # 该节点名称
node.master: false # 意思是该节点为主节点
node.data: true # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.4数据节点e3配置

[root@gtp3 ~]# vim /etc/elasticsearch/elasticsearch.yml # 增加或更改以下内容
cluster.name: master-node # 集群中的名称
node.name: data-node2 # 该节点名称
node.master: false # 意思是该节点为主节点
node.data: true # 表示这不是数据节点
network.host: 0.0.0.0 # 监听全部ip,在实际环境中应设置为一个安全的ip
http.port: 9200 # es服务的端口号
discovery.zen.ping.unicast.hosts: ["192.168.3.64", "192.168.3.62", "192.168.3.63"] # 配置自动发现

2.5 在主节点e1中输入下面命令,启动es

systemctl start elasticsearch.service

2.6 查看es是否启动

[root@gtp1 ~]# ps aux |grep elasticsearch

[root@gtp1 ~]# netstat -lntp |grep java  # es服务会监听两个端口

9300端口是集群通信用的,9200则是数据传输时用的。

主节点启动成功后,依次启动其他节点即可。

2.7 查看集群情况

[root@gtp1 ~]# curl 'localhost:9200/_cluster/health?pretty'

三.安装kibana

3.1 下载安装kibana

[root@gtp1 ~]# yum -y install kibana 
或者
[root@gtp1 ~]# wget https://artifacts.elastic.co/downloads/kibana/kibana-6.0.0-x86_64.rpm
[root@gtp1 ~]# rpm -ivh kibana-6.0.0-x86_64.rpm
3.2 kibana配置
[root@gtp1 ~]#vim /etc/kibana/kibana.yml # 增加以下内容

server.port: 5601  # 配置kibana的端口
server.host: 192.168.77.128 # 配置监听ip
elasticsearch.url: "http://192.168.77.128:9200" # 配置es服务器的ip,如果是集群则配置该集群中主节点的ip
logging.dest: /var/log/kibana.log # 配置kibana的日志文件路径,不然默认是messages里记录日志

3.3 创建日志文件

[root@gtp1 ~]# touch /var/log/kibana.log; chmod 777 /var/log/kibana.log

3.4 启动kibana服务,并检查进程和监听端口

[root@gtp1 ~]#systemctl start kibana

[root@gtp1 ~]# ps aux |grep kibana
root 16528 0.0 0.0 112660 968 pts/2 S+ 10:47 0:00 grep --color=auto kibana
kibana 29265 0.4 0.7 1315604 239188 ? Ssl Sep19 39:09 /usr/share/kibana/bin/../node/bin/node --no-warnings /usr/share/kibana/bin/../src/cli -c /etc/kibana/kibana.yml

3.5 浏览器访问http://192.168.77.128:5601/ ,查看kibana

四. 安装 logstash

4.1 在e2中安装logstash

[root@gtp2 ~]# yum install -y logstash
或者

[root@gtp2 ~]# wget https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm
[root@gtp2 ~]# rpm -ivh logstash-6.0.0.rpm
 

4.2 启动logstash

[root@gtp2 ~]#systemctl restart logstash

Linux下ELK环境搭建的更多相关文章

  1. 2017.7.18 linux下ELK环境搭建

    参考来自:Linux日志分析ELK环境搭建  另一篇博文:2017.7.18 windows下ELK环境搭建   0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1 ...

  2. 2017.7.18 windows下ELK环境搭建

    参考来自:Windows环境下ELK平台的搭建 另一篇博文:2017.7.18 linux下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1.7, ...

  3. linux下LAMP环境搭建

    ++++++++++++++++++++++++++++++++++++++++++++++ linux下LAMP环境搭建 ++++++++++++++++++++++++++++++++++++++ ...

  4. linux下LAMP环境搭建尝试

    最近,学习搭建了LAMP服务环境,中间遇到了很多问题,经过不断摸索总算得以解决.为了大家少走弯路,现将相关经验进行总结. linux下软件安装分为自动安装和手动安装两种,自动安装借助工具如yum等,自 ...

  5. linux下PHP 环境搭建

    linux下环境搭建   第一步 安装Apache2 sudo apt-get install apache2   第二步 安装PHP模块 sudo apt-get install php5   第三 ...

  6. linux下scrapy环境搭建

    最近使用scrapy做数据挖掘,使用scrapy定时抓取数据并存入MongoDB,本文记录环境搭建过程以作备忘 OS:ubuntu 14.04  python:2.7.6 scrapy:1.0.5 D ...

  7. Linux 下LAMP环境搭建_【all】

    LAMP = Linux + Apache + Mysql + PHP 0. Linux环境搭建 Linux 系统安装[Redhat] 1.http服务软件分类及企业实战用途介绍 静态程序: Apac ...

  8. Linux 下LNMP环境搭建_【all】

    LNMP = Linux + Nginx + Mysql + PHP 1.0 Linux环境搭建 Linux 系统安装[Redhat] 1.1. FastCGI介绍 1.什么是CGI(common g ...

  9. Zedboard学习(二):zedboard的Linux下交叉编译环境搭建 标签: 交叉编译linuxzedboard 2017-07-04 23:49 19人阅读

    环境准备 首先肯定是要下载xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin文件,这是官方提供的linux下交叉编译链安装文件,下载地址为:https://p ...

随机推荐

  1. web第一章(html)

    HTML介绍 HyperText(超文本) Markup(标记) Language(语音) 类似于XML都是由标签组成 xml:是可扩展标记语言,标签可以任意自定义 HTML:不可以使用任意标签,学习 ...

  2. Maximum Subarray 连续子数组最大和

    Find the contiguous subarray within an array (containing at least one number) which has the largest ...

  3. integer storage and decimal storage differences in java

    package storage.java; public class StorageJava { public static void main(String[] args) { byte b = 1 ...

  4. 微信小程序开发8-小程序的宿主环境(1)

    1.小程序的运行环境分成渲染层和逻辑层,第2章提到过 WXML 模板和 WXSS 样式工作在渲染层,JS 脚本工作在逻辑层.小程序的渲染层和逻辑层分离是经过很多考虑得出来的模型 2. 1.渲染层和数据 ...

  5. MySQL中有关char、varchar、int、tinyint、decimal

    char.varchar属于字符串类型 1.char属于定长,能确切的知道列值的长度,也就是有多少个字符.当指定char(5)时,表示只能存5个字符,如5个英文‘a’,5个汉字‘我’,5个符号‘&am ...

  6. MySQL事务管理

    事务就是一组原子性的SQL查询,或者说一个独立的工作单元.如果数据库引擎能够成功地对数据库应用该组查询的全部语句,那么就执行该组的全部语句,如果其中有任何一条语句因为崩溃或者其他原因无法执行,那么所有 ...

  7. 阅读《大道至简第一章》读后感 (java 伪代码)

         通读大道至简第一章愚公移山,可以将其看做一个完整的工程,首先是创建工程的原因,需求:“惩山北之塞,出入之迂”,而后是团队之间的商议:“聚室而谋曰”,然后确定工程的目标:“毕力平险,指通豫南, ...

  8. 哪个HTML5内建对象用于在画布上绘制?()

    哪个HTML5内建对象用于在画布上绘制?() getContent getContext getGraphics getCanvas 我的理解: A.C.D不存在HTML5,,js方法中 HTML 5 ...

  9. leetcode summary-section II

    151 Reverse Words in a String class Solution { public: void reverseWords(string &s) { string res ...

  10. Java关于List<String> 进行排序,重写Comparator()方法

    1.对list进行排序,list中的参数类型是Stirng,参数的格式不完全一样,例如有null,"","51003","510020"等 ...