当前位置: 首页 > article >正文

快速掌握源码部署Filebeat

文章目录

  • 1. 裸金属安装
    • 1.1 压缩包方式安装
    • 1.2 yum方式安装
  • 2. docker安装
  • 3. K8s安装

项目使用了Filebeat,现在需要运行在ARM架构的服务器上,但是Filebeat官方没有提供,需要自己编译一份
filebeat等组件的源码地址 https://github.com/elastic/beats ,可以选择需要的版本,然后下载ZIP包来使用,也可以按照下面步骤直接git下载
编译filebeat需要go语言环境,先安装go环境

#创建工作目录
mkdir -p /opt/gowork
 
#安装go和git  命令
yum install -y go git
 
#设置环境变量
echo "export GOROOT=/usr/lib/golang" >> /etc/profile
echo "export GOBIN=\$GOROOT/bin" >> /etc/profile
echo "export GOPATH=/opt/gowork" >> /etc/profile
echo "export PATH=\$PATH:\$GOROOT:\$GOBIN:\$GOPATH" >> /etc/profile
 
#刷新环境变量
. /etc/profile
 
#测试go是否成功,查看env中GOPATH是否生效
go version
go env

mkdir -p ${GOPATH}/src/github.com/elastic
cd ${GOPATH}/src/github.com/elastic
# 我需要的6.8版本,根据实际情况确定分支
git clone -b 6.8 https://github.com/elastic/beats.git

下载完之后进入filebeat目录,如果编译其他组件就进其他目录,然后执行编译命令

cd beats/filebeatmake

我们启动一下试试,正常使用会根据需要修改filebeat.yml,我们现在只试试能不能正常启动,简单改了,将log的enabled改成true,其他都默认了
在这里插入图片描述
K8s部署filebeat

1. 裸金属安装

注:以linux系统为例,filebeat版本为7.17

1.1 压缩包方式安装

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.17.5-linux-x86_64.tar.gz
tar xzvf filebeat-7.17.5-linux-x86_64.tar.gz -C /root/
mv /root/filebeat-7.17.5 /usr/local/filebeat

启动
/usr/local/filebeat/bin/filebeat -e -c filebeat.yml

1.2 yum方式安装

导入KEY
sudo rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
创建elastic.repo文件
cd /etc/yum.repo.d/

vim elastic.repo
[elastic-7.x]
name=Elastic repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

安装
sudo yum install filebeat -y

启动
systemctl start filebeat

2. docker安装

拉取filebeat镜像
docker pull docker.elastic.co/beats/filebeat:7.13.3

下载filebeat配置文件
curl -L -O https://raw.githubusercontent.com/elastic/beats/7.13/deploy/docker/filebeat.docker.yml

启动容器
docker run  docker.elastic.co/beats/filebeat:7.13.3 \ 
setup -E setup.kibana.host=x.x.x.x:5601 \ 
-E output.elasticsearch.hosts=["x.x.x.x:9200"]
说明:执行setup命令,安装filebeat的index

docker run -d --name=filebeat \ 
--user=root \ 
-v /filebeat/filebeat.docker.yml:/usr/share/filebeat/filebeat.yml:ro \ 
-v /var/run/docker.sock:/var/run/docker.sock:ro \ 
-v /data/log:/logs/tomcat \ 
docker.elastic.co/beats/filebeat:7.13.3 filebeat -e -strict.perms=false

说明:一定要映射日志文件路径,区分宿主机日志路径(/data/log)和容器日志路径(/logs/tomcat)

3. K8s安装

下载manifest file
curl -L -O https://raw.githubusercontent.com/elastic/beats/7.17/deploy/kubernetes/filebeat-kubernetes.yaml

修改文件
Filebeat的输出为es,将以下es地址修改为你的es集群地址

- name: ELASTICSEARCH_HOST
  value: elasticsearch
- name: ELASTICSEARCH_PORT
  value: "9200"
- name: ELASTICSEARCH_USERNAME
  value: elastic
- name: ELASTICSEARCH_PASSWORD
  value: changeme

以root用户运行容器
  securityContext:
    runAsUser: 0
    privileged: true

Filebeat账户授权
oc adm policy add-scc-to-user privileged system:serviceaccount:kube-system:filebeat

部署
kubectl create -f filebeat-kubernetes.yaml

查看状态
$ kubectl --namespace=kube-system get ds/filebeat

NAME       DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE-SELECTOR   AGE
filebeat   32        32        0         32           0           <none> 


http://www.kler.cn/a/441197.html

相关文章:

  • 我的求职面经:(2)C++中空指针请使用nullptr不要使用NULL
  • OSCP:发送钓鱼电子邮件执行客户端攻击
  • 实验七 带函数查询和综合查询(2)
  • 2025春招 SpringCloud 面试题汇总
  • 萌新学 Python 之数值处理函数 round 四舍五入、abs 绝对值、pow 幂次方、divmod 元组商和余数
  • AI软件外包需要注意什么 外包开发AI软件的关键因素是什么 如何选择AI外包开发语言
  • 浅谈基于单片机的计步器设计
  • 架构师之路--springboot核心类SpringApplication方法run的源码启动流程
  • 【华为OD机试真题】【2024年E卷】数值同化-队列BFS(C++/Java/Python)
  • 网络安全考题
  • 禁用硬件合成 (Hardware Composer, HWC)
  • ChatGPT搜索全新升级,向全体用户开放,近屿智能助力AI行业发展
  • Linux:入门篇——万字长篇解析
  • 生活小妙招之UE CaptureRT改
  • Qt编译MySQL数据库驱动
  • Linux 各发行版安装 ping 命令指南
  • 解决Windows Server环境下PPTX转PDF时WebP格式图片缺失
  • 程序设计考题汇总(四:SQL练习)
  • Pytorch | 从零构建GoogleNet对CIFAR10进行分类
  • 【Linux课程学习】:第二十一弹---深入理解信号(中断,信号,kill,abort,raise,larm函数)
  • Linux学习笔记思维导图(系统调用+网络编程)
  • 信息安全实训室网络攻防靶场实战核心平台解决方案
  • 【集成部署打包】vue3+django集成部署打包成exe 文件
  • android、flutter离线推送插件,支持oppo、vivo、小米、华为
  • Tomcat HTTPS配置、域名解析及Java WAR包打包
  • Moretl品质文件采集