外观
Kibana
约 318 字大约 1 分钟
2025-02-20
Kubernetes部署Kibana 8.17.4
编写Deployment Yaml
vim kibana-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: kibana
namespace: elk
spec:
replicas: 1
selector:
matchLabels:
app: kibana
template:
metadata:
labels:
app: kibana
spec:
containers:
- name: kibana
image: docker.elastic.co/kibana/kibana:8.17.4
ports:
- containerPort: 5601
env:
- name: TZ
value: "Asia/Shanghai"
volumeMounts:
- name: kibana-config
mountPath: /usr/share/kibana/config/kibana.yml
subPath: kibana.yml
readinessProbe:
httpGet:
path: /api/status
port: 5601
initialDelaySeconds: 10
periodSeconds: 5
volumes:
- name: kibana-config
configMap:
name: kibana-config
编写kibana cm
vim kibana.yml
#
# ** THIS IS AN AUTO-GENERATED FILE **
#
#
# Default Kibana configuration for docker target
server.name: kibana
server.host: "0.0.0.0"
i18n.locale: "zh-CN"
elasticsearch.hosts: ["http://192.168.xx.xx:9200"]
elasticsearch.username: "USER"
elasticsearch.password: "PWD"
提示
这里用户不能用elastic,推荐kibana_system;如果es是集群的话hosts配置可以这样写:["http://192.168.xx.xx:9200","http://192.168.xx.xx:9200","http://192.168.xx.xx:9200"]
编写kibana svc
vim kibana-svc.yaml
apiVersion: v1
kind: Service
metadata:
namespace: elk
name: kibana
spec:
type: NodePort
selector:
app: kibana
ports:
- name: kibana
port: 5601
targetPort: 5601
protocol: TCP
nodePort: 5601
apply kibana
kubectl create namespace elk
kubectl apply -f kibana-deployment.yaml
kubectl create cm -n elk kibana-config --from-file=kibana.yml
kubectl apply -f kibana-svc.yaml
配置告警
- Kibana页面:Observability -> 告警 -> 规则 -> 创建规则
- 定义告警指标
- 定义告警频率
- 定义告警邮件通知
- 定义恢复通知
Kibana常用控制台指令
获取所有索引
GET /_cat/indices?v
创建索引
PUT /test_index