CentOS7安装ELK7.2.0

1、下载安装包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.2.0.tar.gz
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.2.0-linux-x86_64.tar.gz
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.2.0-linux-x86_64.tar.gz

2、解压安装包

直接使用root用户进行解压

tar -xzf elasticsearch-7.2.0-linux-x86_64.tar.gz
tar -xzf logstash-7.2.0.tar.gz
tar -xzf kibana-7.2.0-linux-x86_64.tar.gz
tar -xzf filebeat-7.2.0-linux-x86_64.tar.gz

3、创建ELK用户

由于ELK和Kibana要求非root用户启动,所以这里创建一个elk用户,用于启动ELK

groupadd elk
useradd elk -g elk
passwd admin123
chown -R elk:elk elasticsearch-7.2.0 
chown -R elk:elk kibana-7.2.0-linux-x86_64

4、创建数据和日志文件夹,并修改权限

mkdir  -pv  /data/elk/{data,logs}
chown -R elk:elk /data/elk/

5、修改配置文件

在root用户下修改本机配置权限

vim elasticsearch-7.2.0/config/elasticsearch.yml
path.data: /data/elk/data
path.logs: /data/elk/logs

vim /etc/security/limits.conf
 
----- 最后添加 -----
*       soft    nofile  65536
*       hard    nofile  131072
*       soft    nproc   4096
*       hard    nproc   4096
vim /etc/sysctl.conf
 
----- 最后添加 -----
 
vm.max_map_count=655360
————————————————
sysctl -p

6、启动ES

su - elk
cd elasticsearch-7.2.0
nohup bin/elasticsearch &

8、root用户下安装logstash

cd logstash-7.2.0/
cp config/logstash-sample.conf ./
# 可以自己看一下这个配置文件里的内容,根据自己的需求修改,本次使用默认
nohup bin/logstash -f logstash-sample.conf &

9、安装kibana

su - elk
cd kibana-7.2.0-linux-x86_64
vim config/kibana.yml   #修改host,这样可以在其他机器上的浏览器,用ip+端口去访问kibana
server.host: "0.0.0.0"

启动,Kibana也不能用root用户启动

nohup bin/kibana &

在浏览器里,输入yourip:5601 访问成功即代表启动成功

filebeat

root下


cd filebeat-7.2.0-linux-x86_64

#下面主要是将filebeat.inputs的enabled改为true,paths改为需要采集的日志文件,这里使用的Nginx的日志,然后将output.elasticsearch注释掉,output.logstash打开,也就是用filebeat将日志采集传给logstash,然后再由logstash传给elasticsearch,而不是默认的直接传,注意:当然还有其他默认的注释的我没有贴出来 #

filebeat.inputs:
 # Change to true to enable this input configuration.
  enabled: true

  # Paths that should be crawled and fetched. Glob based paths.
  paths:
    - /var/log/nginx/*.log
filebeat.config.modules:
  # Glob pattern for configuration loading
  path: ${path.config}/modules.d/*.yml

  # Set to true to enable config reloading
  reload.enabled: false

  # Period on which files under path should be checked for changes
  #reload.period: 10s

#==================== Elasticsearch template setting ==========================

setup.template.settings:
  index.number_of_shards: 1
  #-------------------------- Elasticsearch output ------------------------------
#output.elasticsearch:
  # Array of hosts to connect to.
 # hosts: ["localhost:9200"]

  # Optional protocol and basic auth credentials.
  #protocol: "https"
  #username: "elastic"
  #password: "changeme"

#----------------------------- Logstash output --------------------------------
output.logstash:
  # The Logstash hosts
  hosts: ["localhost:5044"]
# Configure processors to enhance or manipulate events generated by the beat.

processors:
  - add_host_metadata: ~
  - add_cloud_metadata: ~

启动

nohup  ./filebeat -e -c filebeat.yml &

### 安装 Java 由于Elasticsearch依赖Java,在CentOS 7安装ELK Stack之前,需要先安装Java环境[^1]。 ```bash sudo yum install java-1.8.0-openjdk.x86_64 ``` 验证Java版本: ```bash java -version ``` ### 创建 Elk 用户和组 为了安全起见,应该创建一个专门用于运行Elasticsearch服务的用户。这可以防止使用root账户来启动这些服务,从而提高安全性[^3]。 ```bash groupadd elk useradd -g elk elk chown -R elk:elk /usr/local/elasticsearch/ ``` 请注意路径 `/usr/local/elasticsearch/` 可能依据实际下载位置有所不同。 ### 下载并安装 Elasticsearch, Logstash 和 Kibana 对于特定版本如ELK Stack 7,可以从官方镜像站点获取对应的rpm包进行安装。这里提供了一个命令示例说明如何通过rpm方式安装logstash[^2],但对于整个ELK stack来说,同样适用此方法。 #### Elasticsearch: 前往[Elastic官网](https://www.elastic.co/downloads/past-releases)查找对应版本链接,并执行如下操作: ```bash wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.0-linux-x86_64.rpm sudo rpm --install elasticsearch-7.17.0-linux-x86_64.rpm ``` #### Logstash: ```bash wget https://artifacts.elastic.co/downloads/logstash/logstash-7.17.0.rpm sudo rpm --install logstash-7.17.0.rpm ``` 编辑Logstash配置文件以适应具体需求[^4]: ```bash vi /etc/logstash/conf.d/sc.conf ``` #### Kibana: ```bash wget https://artifacts.elastic.co/downloads/kibana/kibana-7.17.0-linux-x86_64.rpm sudo rpm --install kibana-7.17.0-linux-x86_64.rpm ``` ### 启动与启用服务 完成上述软件包的安装之后,依次启动各个组件的服务,并设置开机自启。 ```bash for i in elasticsearch kibana; do sudo systemctl start $i && sudo systemctl enable $i ; done ``` 针对Logstash,则需根据实际情况调整其输入输出插件配置后单独控制启动。 ### 配置防火墙规则 如果系统启用了firewalld,则还需要开放必要的端口以便访问外部网络中的资源。 ```bash sudo firewall-cmd --permanent --add-port=5601/tcp # For Kibana UI access sudo firewall-cmd --permanent --add-port=9200/tcp # For ES REST API access sudo firewall-cmd --reload # Apply changes immediately ``` 以上步骤涵盖了在CentOS 7平台上搭建ELK Stack 7的主要流程。当然,具体的参数设定还需参照官方文档以及业务场景做适当修改优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值