安装环境:

[root@node- src]# cat /etc/redhat-release
CentOS Linux release 7.5. (Core)

安装之前关闭防火墙 firewalld 和 selinux:

[root@node- logs]# systemctl stop firewalld
[root@node- logs]# setenforce

安装流程:

Kibana->Elasticsearch->Logstash

一、安装运行所需的Java环境,Elasticsearch、Logstash依赖于java环境,使用官方的二进制包解压安装,先下载java linux 64位tar.gz包,java 1.8的下载链接:

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

配置JAVA环境:

[root@node- src]# cd /usr/local/src
[root@node- src]# tar xf jdk-8u191-linux-x64.tar.gz
[root@node- src]# mv jdk1..0_191 /usr/local #用全路径验证java是否安装成功
/usr/local/jdk1..0_191/bin/java -version #配置java环境变量
vim /etc/profile加入
export JAVA_HOME=/usr/local/jdk1..0_191/
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH #环境变量生效
source /etc/profile #java版本查看
[root@node- ~]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) -Bit Server VM (build 25.191-b12, mixed mode)

安装Kibana:

#kibana下载地址(kibana主要用来展现数据,它本身不存储数据)
https://artifacts.elastic.co/downloads/kibana/kibana-6.2.3-linux-x86_64.tar.gz #准备工作,添加elk用户,用elk用户来启动elk
useradd elk
usermod -s /sbin/nologin elk #不让elk用户来登录系统
#解压安装kibana:
tar -zxf kibana-6.2.-linux-x86_64.tar.gz
mv kibana-6.2.-linux-x86_64 /usr/local/kibana-6.2. #kibana配置文件
vim /usr/local/kibana-6.2./config/kibana.yml修改:
server.port:
server.host: "0.0.0.0"(监听在所有网卡,有风险)
#elasticsearch.url: "http://localhost:9200" (默认是连接elasticsearch的9200端口)
#elasticsearch.username: "user" (配置连接elasticsearch的用户名和密码)
#elasticsearch.password: "pass" #把kibana目录改为elk用户
chown -R elk:elk /usr/local/kibana-6.2./ #新增启动脚本vim /usr/local/kibana-6.2./bin/start.sh
nohup /usr/local/kibana-6.2./bin/kibana >>/tmp/kibana.log >>/tmp/kibana.log & chmod a+x /usr/local/kibana-6.2./bin/start.sh #用普通用户启动
su -s /bin/bash elk '/usr/local/kibana-6.2.3/bin/start.sh' 访问kibana,如有防火墙需要放开tcp 5601端口

Nginx限制访问kibana:

默认的kibana是没有任何的权限控制,先把kibana改到监听127.0.0.,借助nginx来限制访问

:借助nginx来限制访问,控制源ip的访问
worker_processes ;
events {
worker_connections ;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
sendfile on;
keepalive_timeout ;
server {
listen ;
access_log /usr/local/nginx/logs/kibana_access.log main;
error_log /usr/local/nginx/logs/kibana_error.log error;
location / {
allow 127.0.0.1;
deny all;
proxy_pass http://127.0.0.1:5601;
}
}
} 可以在日志里面找到源ip地址:tail -f /usr/local/nginx/logs/kibana_access.log : 如果ip经常变化,就会很麻烦。nginx支持简单的用户名密码认证。
location / {
auth_basic "elk auth";
auth_basic_user_file /usr/local/nginx/conf/htpasswd;
proxy_pass http://127.0.0.1:5601;
} printf "elk:$(openssl passwd -1 elkpass)\n" >/usr/local/nginx/conf/htpasswd : nginx源码编译安装脚本
if [ -d "/usr/local/nginx/" ];then
echo "nginx is install"
exit
else
echo "nginx in not install"
fi for softpack in wget tar gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel;do
soft_result=`rpm -qa $softpack`
if [ -z "$soft_result" ];then
echo "${softpack} is not exist,install it"
yum -y install ${softpack}
else
echo "${softpack} is exist"
fi
done cd /usr/local/src
wget 'http://nginx.org/download/nginx-1.12.2.tar.gz'
tar -zxvf nginx-1.12..tar.gz
cd nginx-1.12.
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-stream --with-stream_ssl_module
make
make install
exit ln -sf /usr/local/nginx/sbin/nginx /usr/local/bin/

elasticsearch安装配置:

elasticsearch未安装之前,kibana网页上报错,提示找不到elasticsearch。

: elasticsearch的下载地址(elasticsearch主要用来存储数据,供kibana调取并进行展现)
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.tar.gz 解压安装:
cd /usr/local/src/
tar -zxf elasticsearch-6.2..tar.gz
mv elasticsearch-6.2. /usr/local/ : elasticsearch配置
vim /usr/local/elasticsearch-6.2./config/elasticsearch.yml 修改:
path.data: /usr/local/elasticsearch-6.2./data
path.logs: /usr/local/elasticsearch-6.2./logs
network.host: 127.0.0.1
http.port:
bootstrap.memory_lock: false
bootstrap.system_call_filter: false : 把elasticsearch目录的用户和属主都更新为elk
chown -R elk:elk /usr/local/elasticsearch-6.2./ : 更改jvm的内存限制(看个人配置)
vim /usr/local/elasticsearch-6.2./config/jvm.options
-Xms100M
-Xmx100M : 编辑elasticsearch启动脚本,使用-d进行后台启动。elasticsearch
vim /usr/local/elasticsearch-6.2./bin/start.sh
/usr/local/elasticsearch-6.2./bin/elasticsearch -d chmod a+x /usr/local/elasticsearch-6.2./bin/start.sh : 启动elasticsearch
su -s /bin/bash elk '/usr/local/elasticsearch-6.2.3/bin/start.sh'
观察日志
观察kibana网页,看下还会不会报elasticsearch的错误 : elasticsearch如果监听在非127.0.0.,需要配置内核参数等
network.host: 0.0.0.0 vim /etc/security/limits.conf(处理max file descriptors [] for elasticsearch process is too low, increase to at least [])
* soft nofile
* hard nofile vim /etc/security/limits.d/-nproc.conf(处理max number of threads [] for user [elk] is too low, increase to at least [])
* soft nproc
* hard nproc sysctl.conf添加(处理max virtual memory areas vm.max_map_count [] is too low, increase to at least [])
vm.max_map_count = #需要运行sysctl -p生效

Logstash安装配置:

: logstash的下载地址(用来读取日志,正则分析日志,发送给elasticsearch数据库)
https://artifacts.elastic.co/downloads/logstash/logstash-6.2.3.tar.gz 解压安装:
tar -zxf logstash-6.2..tar.gz
mv logstash-6.2. /usr/local/
ll -h /usr/local/logstash-6.2. : 更改logstash jvm配置vim /usr/local/logstash-6.2./config/jvm.options
-Xms150M
-Xmx150M : logstash配置 vim /usr/local/logstash-6.2./config/logstash.conf
input {
file {
path => "/usr/local/nginx/logs/kibana_access.log"
}
}
output {
elasticsearch {
hosts => ["http://127.0.0.1:9200"]
}
} : logstash的启动脚本:
vim /usr/local/logstash-6.2./bin/start.sh
nohup /usr/local/logstash-6.2./bin/logstash -f /usr/local/logstash-6.2./config/logstash.conf >>/tmp/logstash.log >>/tmp/logstash.log & chmod a+x /usr/local/logstash-6.2./bin/start.sh : 启动logstash
/usr/local/logstash-6.2./bin/start.sh logstash的启动时间会有点慢,等启动过后查看kibana的界面,会有可以创建索引的地方。

Elasticsearch+Kibana+Logstash安装的更多相关文章

  1. elasticsearch+kibana+metricbeat安装部署方法

    elasticsearch+kibana+metricbeat安装部署方法 本文是elasticsearch + kibana + metricbeat,没有涉及到logstash部分.通过beat收 ...

  2. Docker安装部署ELK教程(Elasticsearch+Kibana+Logstash+Filebeat)

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

  3. elasticsearch kibana logstash(ELK)的安装集成应用

    官网关于kibana的学习指导网址是:https://www.elastic.co/guide/en/kibana/current/index.html Kibana是一个开源的分析和可视化平台,设计 ...

  4. Elasticsearch,Kibana,Logstash,NLog实现ASP.NET Core 分布式日志系统

    Elasticsearch - 简介 Elasticsearch 作为核心的部分,是一个具有强大索引功能的文档存储库,并且可以通过 REST API 来搜索数据.它使用 Java 编写,基于 Apac ...

  5. 【ELK】【docker】【elasticsearch】2.使用elasticSearch+kibana+logstash+ik分词器+pinyin分词器+繁简体转化分词器 6.5.4 启动 ELK+logstash概念描述

    官网地址:https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html#docker-cli-run-prod ...

  6. ELK(elasticsearch+kibana+logstash)搜索引擎(一): 环境搭建

    1.ELK简介 这里简单介绍一下elk架构中的各个组件,关于elk的详细介绍的请自行百度 Elasticsearch是个开源分布式搜索引擎,是整个ELK架构的核心 Logstash可以对数据进行收集. ...

  7. Elasticsearch + Kibana 简单安装使用

    1.资料来源官网,参考: https://www.elastic.co/cn/downloads/elasticsearch https://www.elastic.co/cn/downloads/k ...

  8. elasticsearch kibana的安装部署与简单使用(一)

    1.先说说es 我早两年使用过es5.x的版本,记得当时部署还是很麻烦,因为es是java写的,要先在机器上部署java环境jvm之类的一堆东西,然后才能安装es 但是现在我使用的是目前最新的7.6版 ...

  9. ELK (elasticsearch+kibana+logstash+elasticsearch-head) 华为云下载地址

    https://mirrors.huaweicloud.com/elasticsearch https://mirrors.huaweicloud.com/kibana https://mirrors ...

随机推荐

  1. 通过pymysql程序debug学习数据库事务、隔离级别

    问题 今天在使用pymysql连数据库的时候,出现了一个bug,查询数据库某个数据,但是在我在数据库中执行sql语句改变数据后,pymsql的查询依然没有发生改变. 代码如下: # 5.6.10 co ...

  2. Servlet3.0文件上传

    Servelt3.0文件上传作为一种便捷的文件上传方式很是值得我们去应用的 1.Servlet3.0文件上传使用步骤 浏览器端的要求 表单的提交方法必须是post 必须有一个文件上传组件 <in ...

  3. 160606、springmvc中使用Spring Mobile

    springmobile特点: 1.客户端设备识别:识别结果只有3种类型:NORMAL(非手机设备).MOBILE(手机设备).TABLET(平板电脑). 2.网站偏好设置:Spring 通过设备识别 ...

  4. 面试之四:JVM内存区域分配

    1.程序计数器(线程私有)[不会OOM] 记录线程执行的代码位置,每个线程各自独有. 2.栈:虚拟机栈和本地方法栈(线程私有)[会OOM和StackOverflow] 虚拟机栈 每个JAVA方法在执行 ...

  5. Linux 常用资源

    kernel:ftp://kernel.orgcnkernel:http://www.cnkernel.orgoldlinux:http://www.oldlinux.orgminix3:http:/ ...

  6. Accuracy, Precision, Resolution & Sensitivity

    Instrument manufacturers usually supply specifications for their equipment that define its accuracy, ...

  7. LInux中ThreadInfo中的preempt_count字段

    最近看各种上下文,发现和ThreadInfo中的preemption字段密切,于是便调查了下. 看下Linux源码中的注释: /* * We put the hardirq and softirq c ...

  8. Design Patterns Example Code (in C++)

    Overview Design patterns are ways to reuse design solutions that other software developers have crea ...

  9. flask请求和应用上下文

    关于WSGI WSGI(全称Web Server Gateway Interface),是为 Python 语言定义的Web服务器和Web应用程序之间的一种简单而通用的接口,它封装了接受HTTP请求. ...

  10. bat批处理异备文件、压缩文件

    1.压缩本地文件,并把压缩后的文件复制到其他机器 net use Z: \\192.168.135.1\share_linux a123456! /user:chaoqun.guo set bath= ...