Linux系统集群部署应用案例

1.规划节点

IP地址           主机名    对应节点

192.168.110.11     elk1      Kibana

192.168.110.12     elk2      Logstash

192.168.110.13     elk3      Elasticsearch

三台主机关闭防火墙和SELinux

systemctl stop firewalld

setenforce 0

2.基础环境配置

(1)修改主机名

elk1节点

hostnamectl set-hostname elk1

bash

elk2节点

hostnamectl set-hostname elk2

bash

elk3节点

hostnamectl set-hostname elk3

bash

(2)配置hosts主机名映射

elk1节点

vi /etc/hosts

elk2节点

vi /etc/hosts

elk3节点

vi /etc/hosts

(3)安装JDK环境

使用CentOS7.9镜像配置YUM源,部署ELK环境需要jdk1.8以上的JDK

三台主机都需安装,只以第一台主机为例

先挂载

将2009版本镜像上传到虚拟机

创建挂载目录

mkdir /opt/centos

挂载

mount CentOS-7-x86_64-DVD-2009.iso /opt/centos/

修改yum源

mv /etc/yum.repos.d/* /media/

vi /etc/yum.repos.d/local.repo

[centos]

name=centos

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

安装JDK

yum install -y java-1.8.0-openjdk

查看版本

java -version

3.部署Elasticserach

(1)安装

三台主机都需安装,只以第一台主机为例

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.rpm

下载RPM包上传到/root目录下

安装

(2)配置

三台主机都需配置

vi /etc/elasticsearch/elasticsearch.yml

取消注释,配置elasticsearch集群名称

配置节点名(取消注释)配置那台写那台

添加指定该节点是否有资格被选举成为node

指定该节点是否有资格被选举成为node

配置索引数据存储位置

设置日志文件的存储路径

设置绑定的ip地址,配置那台写那台  取消注释

启动的Elasticserach对外访问的http端口 要取消注释

设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点

elk2节点 别忘了要取消注释

elk3节点

node.name: elk-3

network.host:192.168.110.13

其他和elk2节点相同

(3)启动

三台主机都需启动,只以第一台为例

启动

systemctl start elasticsearch

开机自启

systemctl enable elasticsearch

查看状态

systemctl status elasticsearch

yum install -y net-tools

netstat –ntpl 查看端口 9200

(4)检查集群状态

elk1节点

curl '192.168.110.11:9200/_cluster/health?pretty'

green为健康,yellow或者red则是集群有问题

number_of_nodes : 3,   //集群中节点数

number_of_data_nodes : 2,   //集群中data节点数量

4.部署Kibana

(1)安装Kibana

仅第一台安装

https://artifacts.elastic.co/downloads/kibana/kibana-6.0.0-x86_64.rpm%20sha1sum%20kibana-6.0.0-x86_64.rpm%20rpm%20--install%20kibana-6.0.0-x86_64.rpml

获取RPM包上传到第一台主机/root目录下

安装

rpm -ivh kibana-6.0.0-x86_64.rpm

(2)配置Kibana

vi /etc/kibana/kibana.yml

取消server.port注释

取消注释并更改为第一台主机IP地址

取消注释并更改为第一台主机IP地址(看清是不同行)

(3)启动Kibana

启动

systemctl start kibana

开机自启

systemctl enable kibana

查看状态

systemctl status kibana

查看端口

netstat –ntpl  5601

访问浏览器访问IP:5601

5.部署Logstash

(1)安装Logstash

在第二台主机部署

https://artifacts.elastic.co/downloads/logstash/logstash-6.0.0.rpm

获取RPM包上传到第二台主机/root目录下

安装

rpm -ivh logstash-6.0.0.rpm

(2)配置Logstash

vi /etc/logstash/logstash.yml

修改190行,更改为第二台主机IP地址,并取消注释

配置Logstash收集syslog日志

新建

vi /etc/logstash/conf.d/syslog.conf

input {

    file {

        path => "/var/log/messages"

        type => "systemlog"

        start_position => "beginning"

        stat_interval => "3"

    }

}

output {

    if [type] == "systemlog" {

        elasticsearch {

            hosts => ["192.168.110.11:9200"]    //这里的地址为第一台主>机地址

            index => "system-log-%{+YYYY.MM.dd}"

        }

    }

}

赋予权限

chmod  644 /var/log/messages

ln -s /usr/share/logstash/bin/logstash /usr/bin

logstash --path.settings /etc/logstash/ -f /etc/logstash/conf.d/syslog.conf --config.test_and_exit

结果显示OK则证明没问题,没有OK则有问题

(3)启动Logstash

修改相关文件所属组

chown -R logstash /var/lib/logstash/

启动

systemctl start logstash

开机自启

systemctl enable logstash

查看状态

systemctl status logstash

查看端口

netstat –ntpl  9600

(4)测试

启动完毕后,用第三台主机登录elk2机器,登录后退出,让syslog产生日志

退出

6.Kibana检索日志

(1)Kibana上查看日志

回到第一台主机上查看日志索引

curl '192.168.110.12:9200/_cat/indices?v'

获取 删除指定索引详细信息

curl -XGET/DELETE '192.168.110.12:9200/ system-log-2023.12.12?pretty'

(2)Web页面配置

访问第一台主机IP:5601

更改框处内容  改为上图provided_name的内容

Create

下一步

配置完成后,点击左上角的Discover,进入Discover页面

可以看到Kibana服务已经检索到主机的日志信息

猜你喜欢

转载自blog.csdn.net/2301_79739036/article/details/139227286