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

小程序做项目优化方案丛书官网

小程序做项目,优化方案丛书官网,深圳科技公司大全,国内房地产设计网站建设以下是一个详细的从在 Kubernetes 集群中部署 Filebeat,到实现按web-oper、web-api微服务分离日志并存储到不同索引的完整方案: 理解需求:按服务分离日志索引 在 Kubernetes 集群中,有web-oper和web-api两种微服务,希…

以下是一个详细的从在 Kubernetes 集群中部署 Filebeat,到实现按web-oper、web-api微服务分离日志并存储到不同索引的完整方案:

理解需求:按服务分离日志索引

  • 在 Kubernetes 集群中,有web-oper和web-api两种微服务,希望通过 Filebeat
    将它们的日志分别收集到不同的索引中。 这样在后续查看和分析日志时,可以更方便地根据服务进行区分,例如在 Elasticsearch
    中通过不同的索引来查询web-api和web-oper的日志。

准备工作:已成功部署好es与Kibana

  1. 准备 Filebeat 配置文件

创建一个名为 filebeat.yml 的配置文件,内容如下:

filebeat.inputs:- type: containerpaths:- /var/log/containers/*.logprocessors:- add_kubernetes_metadata:host: ${NODE_NAME}matchers:- logs_path:logs_path: "/var/log/containers/"output.elasticsearch:hosts: ["elasticsearch-cluster-ip:9200"]  # 替换为实际的Elasticsearch集群IP和端口indices:- index: "web-api-log-%{+yyyy.MM.dd}"when:equals:kubernetes:labels:app: web-api- index: "web-oper-log-%{+yyyy.MM.dd}"when:equals:kubernetes:labels:app: web-oper

上述配置文件作用解析:
● filebeat.inputs 部分指定了从容器日志路径(/var/log/containers/*.log,这是 Kubernetes 默认存放容器日志之处)收集日志,并通过 add_kubernetes_metadata 处理器添加 Kubernetes 相关元数据,便于后续精准筛选。

● output.elasticsearch 部分定义了输出目标为 Elasticsearch 集群,重点是 indices 小节,使用 when 条件语句搭配 equals 判断机制。如果容器的 kubernetes.labels.app 标签值为 web-api,日志将发送至 web-api-log-%{+yyyy.MM.dd} 索引;若标签值是 web-oper,则发送到 web-oper-log-%{+yyyy.MM.dd} 索引。

  1. 创建 Filebeat 的 DaemonSet 资源定义文件

新建一个名为 filebeat-daemonset.yaml 的 YAML 文件,用于在 Kubernetes 中部署 Filebeat:

apiVersion: apps/v1
kind: DaemonSet
metadata:name: filebeatnamespace: kube-system  # 推荐部署到kube-system命名空间,便于统一管理系统级组件
spec:selector:matchLabels:app: filebeattemplate:metadata:labels:app: filebeatspec:containers:- name: filebeatimage: docker.elastic.co/beats/filebeat:7.14.0  # 按需选择Filebeat版本镜像volumeMounts:- name: varlogcontainersmountPath: /var/log/containers- name: varlogpodsmountPath: /var/log/pods- name: filebeat-configmountPath: /usr/share/filebeat/filebeat.yml # 挂载filebeat文件readOnly: truevolumes:- name: varlogcontainershostPath:path: /var/log/containers- name: varlogpodshostPath:path: /var/log/pods- name: filebeat-configconfigMap:name: filebeat-config

DaemonSet 控制器确保所有(或一部分)的节点都运行了一个指定的 Pod 副本

  • 每当向集群中添加一个节点时,指定的 Pod 副本也将添加到该节点上。
  • 当节点从集群中移除时,Pod 也就被垃圾回收了。
  • 删除一个 DaemonSet 可以清理所有由其创建的 Pod。
    在这里插入图片描述

这个 DaemonSet 配置解析如下:

  • metadata 定义了 DaemonSet 的名称 filebeat 以及所属命名空间。
  • spec 里的 selector 和 template 标签配合,确保每个节点上都运行符合 app: filebeat 标签的 Pod。
  • containers 中定义Filebeat 容器,挂载了容器日志目录(/var/log/containers 和
    /var/log/pods)用于读取日志,同时挂载了之前创建的 filebeat.yml 配置文件(通过 configMap
    方式挂载,下面步骤会创建),设置为只读,防止容器内意外修改配置。
  • volumes 部分对应上述 volumeMounts,声明了hostPath 类型的本地日志目录挂载以及 configMap 类型挂载,用于配置文件挂载。
  • /var/log/pods目录存储了 Pod 级别的日志,这些日志可能包含了关于 Pod 启动、停止以及内部容器之间交互的一些详细信息。例如,Pod 初始化容器(init container)的日志可能会在这里有记录。初始化容器用于在主容器启动之前执行一些初始化任务,如配置环境、检查依赖等,其日志对于排查 Pod 启动问题非常重要。
  1. 创建 ConfigMap 用于挂载配置文件

    执行以下命令创建包含 filebeat.yml 的 ConfigMap:

kubectl create configMap filebeat-config --from-file=filebeat.yml -n kube-system

此命令会将 filebeat.yml 文件内容封装进名为 filebeat-config 的 ConfigMap 里,供 Filebeat 容器挂载使用。

  • 在 Kubernetes 集群中部署 Filebeat
    使用以下命令部署 Filebeat:
kubectl apply -f filebeat-daemonset.yaml

这条命令将依据 filebeat-daemonset.yaml 描述在集群中启动 Filebeat。

  1. 验证部署与日志收集效果
    ● 查看 Filebeat 容器日志:
    通过 kubectl logs -n kube-system (filebeat-pod-name 可通过 kubectl get pods -n kube-system | grep filebeat 查到),检查有无报错信息,排查配置或启动过程中可能出现的问题。
    ● 在 Elasticsearch 端检查索引:利用 Elasticsearch 的 API 或者 Kibana 工具,查看是否成功创建了 web-api-log-%{+yyyy.MM.dd} 和 web-oper-log-%{+yyyy.MM.dd} 两个索引,索引内是否陆续接收到对应服务的日志。

通过以上步骤,即可在 Kubernetes 集群中成功部署 Filebeat,并实现按 web-oper、web-api 服务分离日志存储到不同索引,方便后续日志分析运维工作。
需留意配置文件中的 Elasticsearch 集群地址、Filebeat 镜像版本等关键信息,依实际情况调整适配。

http://www.hkea.cn/news/437129/

相关文章:

  • 淘宝上成都网站建设如何制作视频网站
  • 最吃香的男生十大手艺5g网络优化
  • 河源哪里做网站网络项目怎么推广
  • 网站闭关保护怎么做广州百度seo 网站推广
  • 可以在线做动图的网站近期重大新闻事件
  • 伊犁州建设局网站怎么做微信小程序
  • 做网站需要买主机那新媒体营销方式有几种
  • 网络推广seo公司seo排名的方法
  • 南山做网站多少钱百度资讯
  • 西安哪里有做网站的小学生收集的新闻10条
  • 做游戏网站有几个要素seo网站关键词优化报价
  • 蓬业东莞网站建设技术支持东莞做网站公司首选
  • 网站版式设计获客渠道有哪些
  • 今日军事新闻简短扬州seo优化
  • 国外好看的教育类网站模板下载东莞做网站最好的是哪家
  • 微擎与wordpress快速优化seo软件推广方法
  • 英文网站设计哪家好免费网站搭建
  • 网站建设公司 销量深圳谷歌seo公司
  • 新蔡哪有做网站建设的全球疫情今天最新消息
  • 怎么做平台网站百度seo报价方法
  • 帮人做网站 怎么收费怎么用网络推广
  • 网站排名优化建设百度广告投放技巧
  • 文件服务器网站搭建教程好的竞价托管公司
  • 黑龙江省城乡和住房建设厅网站首页百度链接地址
  • 网站模板修改工具专业seo关键词优化
  • 口碑好的句容网站建设yahoo搜索
  • 深圳网站建设外贸公司价格网络营销的背景和意义
  • 长春网站建设硕成传媒seo快速排名优化公司
  • web网站开发能使用c 吗免费建立个人网站申请
  • 织梦网站修改教程视频网站优化培训学校