elk7.10.2安装(vm版)

本文详细介绍了在CentOS7环境下,如何进行ELK7.10.2的分布式集群安装,包括主机规划、Elasticsearch、Logstash、Kibana的安装与配置,以及Kafka和Filebeat的安装。文中涵盖了集群配置、日志收集、处理和存储的全过程,并提供了实例配置文件和排查错误的指导。
摘要由CSDN通过智能技术生成

 

elk7.10.2分布式集群安装(centos7)

ELK安装

主机规划

192.168.31.101       cancer01        es master/es datanode/logstash

192.168.31.102       cancer02        es master/es datanode/logstash

192.168.31.103       cancer03        es master/es datanode/logstash/kibana

ES安装

下载

elasticsearch-7.10.2-linux-x86_64.tar.gz

logstash-7.10.2-linux-x86_64.tar.gz

kibana-7.10.2-linux-x86_64.tar.gz

elasticsearch-analysis-ik-7.10.2.zip

jdk-11.0.9_linux-x64_bin.rpm

环境准备

设置IP

在每台主机上设置IP

1、修改配置文件

# vim /etc/sysconfig/network-scripts/ifcfg-eth0(ifcfg-eth0为网卡名,不同主机可能名称不同)

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.31.101

NETMASK=255.255.255.0

GATEWAY=192.168.31.1

DNS1=192.168.31.1

DNS2=0.0.0.0

2、重启服务

# service network restart

 

设置主机名

在每台主机上设置主机名

1、查看主机名

# hostnamectl

2、用命令修改

# hostnamectl set-hostname cancer01 (修改当前主机名)

3、修改配置文件

# vim /etc/hosts  (每台主机hosts文件均为如下内容)

127.0.0.1          localhost

192.168.116.101    cancer01

192.168.116.102    cancer02

192.168.116.103    cancer03

4、重启主机

# reboot now

 

关闭防火墙

在每台主机上关闭防火墙

# systemctl stop firewalld.service             centos7停止firewall

# systemctl disable firewalld.service     centos7禁止firewall开机启动

 

关闭selinux

在每台主机上关闭selinux

# vim /etc/sysconfig/selinux

selinux=disabled

 

禁用透明大页

在每台主机上禁用Transparent Hugepage

查看状态

# cat /sys/kernel/mm/transparent_hugepage/enabled

返回结果

[always] madvise never 

永久关闭

# vim /etc/rc.local

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then

   echo never > /sys/kernel/mm/transparent_hugepage/enabled

fi 

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then

   echo never > /sys/kernel/mm/transparent_hugepage/defrag

fi

或者直接运行下面命令:

# echo never > /sys/kernel/mm/transparent_hugepage/enabled

# echo never > /sys/kernel/mm/transparent_hugepage/defrag

重启机器

查看状态

# cat /sys/kernel/mm/transparent_hugepage/enabled 

返回结果

always madvise [never]

 

设置虚拟内存

在每台主机上设置最大虚拟内存区

echo "vm.max_map_count=262144" > /etc/sysctl.conf    或者   sysctl -w vm.max_map_count=262144 > /etc/sysctl.conf

sysctl -p

 

 

设置文件句柄数量和进程数量

在每台主机上设置文件句柄打开数量和进程数量

1、查看

最大打开文件句柄数和最大进程数

# ulimit -a

最大打开文件句柄数

#ulimit -n

最大进程数

#ulimit -u

2、查看应用进程打开文件句柄数

# lsof -n|awk '{print $2}'|sort|uniq -c|sort -nr|more

根据进程ID号来查看进程名

# ps aef|grep 24204

3、用户级限制修改

# vim /etc/security/limits.conf

 * soft nofile 65535

 * hard nofile 65535

 * soft nproc 32000

 * hard nproc 32000

centos7修改用户进程数和文件描述符

soft nproc: 单个用户可用的最大进程数量(软限制)

hard nproc:单个用户可用的最大进程数量(硬限制)

soft nofile: 可打开的文件句柄的最大数(软限制)

hard nofile: 可打开的文件句柄的最大数(硬限制)

*        : 代表所有用户,也可以写成你需要修改的用户名

4、系统级限制修改

# echo  6553560 > /proc/sys/fs/file-max  (临时生效,重启机器后会失效)

# vim /etc/sysctl.conf

fs.file-max = 6553560  (永久生效)

# reboot now

 

主机时间同步

在每台主机上安装ntp时间同步插件

1.检查是否有时间同步的插件:

# rpm -qa | grep ntp

2.没有就安装(每台都要安装):

# yum -y install ntp ntpdate

3.选择一台服务器作为集群的时间服务器,主节点

    比如:cancer01:时间服务器,cancer02、cancer03、cancer04、cancer05时间同步cancer01

4.修改主节点配置

  #vim /etc/ntp.conf

## 1 同步网络时间地址

server 0.asia.pool.ntp.org

server 1.asia.pool.ntp.org

server 2.asia.pool.ntp.org

server 3.asia.pool.ntp.org

## 2 当外部时间不可用,则使用当前硬件时间

server 127.127.1.0 iburst local lock

## 3 允许哪些网段的机器,来同步时间

restrict 192.168.31.0 mask 255.255.255.0 nomodify notrap

##注:1位置为修改原有的配置,2,3位置的新增加的,其余原有文件配置保持不动

5.修改从节点配置

  #vim /etc/ntp.conf

## 客户端节点配置同步时间的主节点,表示向主节点cancer01同步时间

server cancer01 prefer

server 127.127.1.0

fudge 127.127.1.0 stratum 10

#vim /etc/ntp/step-tickers

cancer01

6.重启所有节点ntp服务,并设置开机启动

  #systemctl restart ntpd

  #systemctl enable ntpd

7.在从节点从主节点同步时间

  #ntpdate -u cancer01

8.从节点设置定时任务

  #crontab -e

## follow time from master host

0 * * * * ntpdate -u cdh01

## write system time to hardware time

1 * * * * hwclock –systohc

## 同步时间后,还需把同步到的时间写入机器硬件时间,命令为 hwclock --systohc

  ## 或者

  ## 每10分钟同步一次时间

  0-59/10 * * * * /sbin/service ntpd stop

  0-59/10 * * * * /usr/sbin/ntpdate -u node1

  0-59/10 * * * * /sbin/service ntpd start

 

配置免密

在每台主机上配置ssh免密

   # ssh-keygen -t rsa

然后三次回车,运行结束会在~/.ssh下生成两个新文件:

       id_rsa.pub和id_rsa就是公钥和私钥

然后也是在每台主机上都执行:

    # ssh-copy-id cancer01

# ssh-copy-id cancer02

# ssh-copy-id cancer03

 

安装JDK

elasticsearch要求jdk为11.

在每台主机上安装jdk

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值