filebeat 从 ConfigMap 读取配置

apiVersion: v1
kind: ConfigMap
metadata:
name: filebeat-config
namespace: kube-system
data:
filebeat.yml: |-
filebeat.inputs:
- type: container
paths:
- /var/log/containers/*.log
processors:
- add_kubernetes_metadata:
in_cluster: true
output.elasticsearch:
hosts: ["${ELASTICSEARCH_HOST:elasticsearch}:${ELASTICSEARCH_PORT:9200}"]
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: filebeat
namespace: kube-system
labels:
k8s-app: filebeat
spec:
selector:
matchLabels:
k8s-app: filebeat
template:
metadata:
labels:
k8s-app: filebeat
spec:
serviceAccountName: filebeat
terminationGracePeriodSeconds: 30
containers:
- name: filebeat
image: docker.elastic.co/beats/filebeat:7.10.0
args: [
"-c", "/etc/filebeat.yml",
"-e",
]
env:
- name: ELASTICSEARCH_HOST
value: "elasticsearch-logging"
- name: ELASTICSEARCH_PORT
value: "9200"
volumeMounts:
- name: filebeat-config
mountPath: /etc/filebeat.yml
subPath: filebeat.yml
- name: varlog
mountPath: /var/log
- name: varlibdockercontainers
mountPath: /var/lib/docker/containers
readOnly: true
- name: dockersock
mountPath: /var/run/docker.sock
volumes:
- name: filebeat-config
configMap:
name: filebeat-config
- name: varlog
hostPath:
path: /var/log
- name: varlibdockercontainers
hostPath:
path: /var/lib/docker/containers
- name: dockersock
hostPath:
path: /var/run/docker.sock

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个开发框架,主要用于简化Java项目的开发过程。它内置了许多常用的功能模块,其中包括读取ConfigMapConfigMap是Kubernetes中用于存储配置信息的一种机制。它可以存储应用程序所需的各种配置,如数据库连接信息、日志级别等。 在Spring Boot项目中,可以通过一些配置方式来读取ConfigMap中的配置信息。首先,需要在应用程序的依赖中引入Kubernetes相关的依赖,如Fabric8或Spring Cloud Kubernetes。 然后,在应用程序的配置文件(如application.properties或application.yml)中,需要配置以下信息: - 通过指定Kubernetes的API服务器地址、用户名和密码等连接信息。 - 指定ConfigMap的名称和命名空间。 接下来,在需要读取ConfigMap的地方,可以使用相关的API来获取配置信息。可以通过注入ConfigMapPropertySource对象,或者通过注入Environment对象,并调用其getProperty()方法来获取具体的配置值。 例如,可以在Spring Boot的启动类中添加如下代码来获取ConfigMap中的配置信息: ``` @Autowired private Environment env; public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); } @PostConstruct public void init() { String configValue = env.getProperty("config.key"); // 使用获取到的配置值进行业务处理 } ``` 需要注意的是,为了能够正常读取ConfigMap中的配置信息,应用程序需要具有足够的权限来访问Kubernetes集群。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值