241 lines
5.9 KiB
YAML
241 lines
5.9 KiB
YAML
|
---
|
|||
|
kind: ConfigMap
|
|||
|
metadata:
|
|||
|
name: categraf-config
|
|||
|
apiVersion: v1
|
|||
|
data:
|
|||
|
config.toml: |
|
|||
|
[global]
|
|||
|
# whether print configs
|
|||
|
print_configs = false
|
|||
|
|
|||
|
# add label(agent_hostname) to series
|
|||
|
# "" -> auto detect hostname
|
|||
|
# "xx" -> use specified string xx
|
|||
|
# "$hostname" -> auto detect hostname
|
|||
|
# "$ip" -> auto detect ip
|
|||
|
# "$hostname-$ip" -> auto detect hostname and ip to replace the vars
|
|||
|
hostname = "$HOSTNAME"
|
|||
|
|
|||
|
# will not add label(agent_hostname) if true
|
|||
|
omit_hostname = false
|
|||
|
|
|||
|
# s | ms
|
|||
|
precision = "ms"
|
|||
|
|
|||
|
# global collect interval
|
|||
|
interval = 15
|
|||
|
|
|||
|
# [global.labels]
|
|||
|
# region = "shanghai"
|
|||
|
# env = "localhost"
|
|||
|
|
|||
|
[writer_opt]
|
|||
|
# default: 2000
|
|||
|
batch = 2000
|
|||
|
# channel(as queue) size
|
|||
|
chan_size = 10000
|
|||
|
|
|||
|
[[writers]]
|
|||
|
url = "http://${NSERVER_SERVICE_WITH_PORT}/prometheus/v1/write"
|
|||
|
|
|||
|
# Basic auth username
|
|||
|
basic_auth_user = ""
|
|||
|
|
|||
|
# Basic auth password
|
|||
|
basic_auth_pass = ""
|
|||
|
|
|||
|
# timeout settings, unit: ms
|
|||
|
timeout = 5000
|
|||
|
dial_timeout = 2500
|
|||
|
max_idle_conns_per_host = 100
|
|||
|
logs.toml: |
|
|||
|
[logs]
|
|||
|
## key 占位符
|
|||
|
api_key = "ef4ahfbwzwwtlwfpbertgq1i6mq0ab1q"
|
|||
|
## 是否开启日志采集
|
|||
|
enable = false
|
|||
|
## 接受日志的server地址
|
|||
|
send_to = "127.0.0.1:17878"
|
|||
|
## 发送日志的协议 http/tcp
|
|||
|
send_type = "http"
|
|||
|
## 是否压缩发送
|
|||
|
use_compress = false
|
|||
|
## 是否采用ssl
|
|||
|
send_with_tls = false
|
|||
|
##
|
|||
|
batch_wait = 5
|
|||
|
## 日志offset信息保存目录
|
|||
|
run_path = "/opt/categraf/run"
|
|||
|
## 最多同时采集多少个日志文件
|
|||
|
open_files_limit = 100
|
|||
|
## 定期扫描目录下是否有新增日志
|
|||
|
scan_period = 10
|
|||
|
## udp 读buffer的大小
|
|||
|
frame_size = 9000
|
|||
|
##
|
|||
|
collect_container_all = true
|
|||
|
## 全局的处理规则
|
|||
|
[[logs.Processing_rules]]
|
|||
|
## 单个日志采集配置
|
|||
|
[[logs.items]]
|
|||
|
## file/journald/tcp/udp
|
|||
|
type = "file"
|
|||
|
## type=file时 path必填,type=journald/tcp/udp时 port必填
|
|||
|
path = "/opt/tomcat/logs/*.txt"
|
|||
|
source = "tomcat"
|
|||
|
service = "my_service"
|
|||
|
---
|
|||
|
apiVersion: v1
|
|||
|
kind: ConfigMap
|
|||
|
metadata:
|
|||
|
name: input-prometheus
|
|||
|
data:
|
|||
|
prometheus.toml: |
|
|||
|
# # collect interval
|
|||
|
# interval = 15
|
|||
|
|
|||
|
[[instances]]
|
|||
|
urls = ["http://127.0.0.1:8080/metrics"]
|
|||
|
name_prefix = "k8s"
|
|||
|
#bearer_token_file = "/var/run/secrets/kubernetes.io/serviceaccount/token"
|
|||
|
|
|||
|
url_label_key = "instance"
|
|||
|
url_label_value = "{{.Host}}"
|
|||
|
|
|||
|
## Scrape Services available in Consul Catalog
|
|||
|
[instances.consul]
|
|||
|
enabled = false
|
|||
|
agent = "http://localhost:8500"
|
|||
|
query_interval = "5m"
|
|||
|
|
|||
|
[[instances.consul.query]]
|
|||
|
name = "a service name"
|
|||
|
tag = "a service tag"
|
|||
|
url = 'http://{{if ne .ServiceAddress ""}}{{.ServiceAddress}}{{else}}{{.Address}}{{end}}:{{.ServicePort}}/{{with .ServiceMeta.metrics_path}}{{.}}{{else}}metrics{{end}}'
|
|||
|
[instances.consul.query.tags]
|
|||
|
host = "{{.Node}}"
|
|||
|
|
|||
|
# bearer_token_string = ""
|
|||
|
|
|||
|
# e.g. /run/secrets/kubernetes.io/serviceaccount/token
|
|||
|
|
|||
|
# # basic auth
|
|||
|
# username = ""
|
|||
|
# password = ""
|
|||
|
|
|||
|
# headers = ["X-From", "categraf"]
|
|||
|
|
|||
|
# # interval = global.interval * interval_times
|
|||
|
# interval_times = 1
|
|||
|
|
|||
|
labels = {source="categraf123"}
|
|||
|
|
|||
|
# support glob
|
|||
|
# ignore_metrics = [ "go_*" ]
|
|||
|
|
|||
|
# support glob
|
|||
|
# ignore_label_keys = []
|
|||
|
|
|||
|
# timeout for every url
|
|||
|
# timeout = "3s"
|
|||
|
|
|||
|
## Optional TLS Config
|
|||
|
#use_tls = false
|
|||
|
# tls_min_version = "1.2"
|
|||
|
# tls_ca = "/etc/categraf/ca.pem"
|
|||
|
# tls_cert = "/etc/categraf/cert.pem"
|
|||
|
# tls_key = "/etc/categraf/key.pem"
|
|||
|
## Use TLS but skip chain & host verification
|
|||
|
#insecure_skip_verify = true
|
|||
|
---
|
|||
|
apiVersion: apps/v1
|
|||
|
kind: Deployment
|
|||
|
metadata:
|
|||
|
annotations:
|
|||
|
deployment.kubernetes.io/revision: "2"
|
|||
|
labels:
|
|||
|
app: mock
|
|||
|
name: mock
|
|||
|
spec:
|
|||
|
replicas: 1
|
|||
|
selector:
|
|||
|
matchLabels:
|
|||
|
app: mock
|
|||
|
strategy:
|
|||
|
rollingUpdate:
|
|||
|
maxSurge: 25%
|
|||
|
maxUnavailable: 25%
|
|||
|
type: RollingUpdate
|
|||
|
template:
|
|||
|
metadata:
|
|||
|
creationTimestamp: null
|
|||
|
labels:
|
|||
|
app: mock
|
|||
|
spec:
|
|||
|
containers:
|
|||
|
- name: mock
|
|||
|
image: flashcatcloud/mock:0.0.1
|
|||
|
imagePullPolicy: IfNotPresent
|
|||
|
command: ["./mock"]
|
|||
|
resources: {}
|
|||
|
env:
|
|||
|
- name: TZ
|
|||
|
value: Asia/Shanghai
|
|||
|
- name: HOSTNAME
|
|||
|
valueFrom:
|
|||
|
fieldRef:
|
|||
|
apiVersion: v1
|
|||
|
fieldPath: spec.nodeName
|
|||
|
- name: HOSTIP
|
|||
|
valueFrom:
|
|||
|
fieldRef:
|
|||
|
apiVersion: v1
|
|||
|
fieldPath: status.hostIP
|
|||
|
- name: categraf
|
|||
|
image: flashcatcloud/categraf:v0.1.10
|
|||
|
command: ["/usr/bin/categraf"]
|
|||
|
args: ["-configs", "/opt/categraf/conf"]
|
|||
|
imagePullPolicy: IfNotPresent
|
|||
|
resources: {}
|
|||
|
env:
|
|||
|
- name: TZ
|
|||
|
value: Asia/Shanghai
|
|||
|
- name: HOSTNAME
|
|||
|
valueFrom:
|
|||
|
fieldRef:
|
|||
|
apiVersion: v1
|
|||
|
fieldPath: spec.nodeName
|
|||
|
- name: HOSTIP
|
|||
|
valueFrom:
|
|||
|
fieldRef:
|
|||
|
apiVersion: v1
|
|||
|
fieldPath: status.hostIP
|
|||
|
volumeMounts:
|
|||
|
- mountPath: /opt/categraf/conf/config.toml
|
|||
|
name: categraf-config
|
|||
|
subPath: config.toml
|
|||
|
- mountPath: /opt/categraf/conf/logs.toml
|
|||
|
name: categraf-config
|
|||
|
subPath: logs.toml
|
|||
|
- mountPath: /opt/categraf/conf/input.prometheus
|
|||
|
name: input-prometheus
|
|||
|
dnsPolicy: ClusterFirst
|
|||
|
restartPolicy: Always
|
|||
|
schedulerName: default-scheduler
|
|||
|
securityContext: {}
|
|||
|
volumes:
|
|||
|
- configMap:
|
|||
|
defaultMode: 420
|
|||
|
items:
|
|||
|
- key: config.toml
|
|||
|
path: config.toml
|
|||
|
- key: logs.toml
|
|||
|
path: logs.toml
|
|||
|
name: categraf-config
|
|||
|
name: categraf-config
|
|||
|
- configMap:
|
|||
|
defaultMode: 420
|
|||
|
name: input-prometheus
|
|||
|
name: input-prometheus
|