Kubernetes Events事件收集与监控实战

云计算 云原生
大家好,我是安若,前两天群里的小伙伴问到Kubernetes的Event事件收集、监控告警该如何进行,那么这次就乘此机会分享一下当前使用的方案。

背景概述

大家好,我是安若,前两天群里的小伙伴问到Kubernetes的Event事件收集、监控告警该如何进行,那么这次就乘此机会分享一下当前使用的方案。

成品展示

本次仅分享events展示,并没有涉及到告警相关的,等下次有机会了再次分享一下吧。

图片图片

image

图片图片

image

图片图片

这里的词云没有展示出来,因为需要安装插件,可自行进行安装配置。

实战案例

环境说明

图片图片

Exporter部署

[root@192 deploy]# cat 00-roles.yaml  
apiVersion: v1
kind: Namespace
metadata:
  name: kube-ops
---
apiVersion: v1
kind: ServiceAccount
metadata:
  namespace: kube-ops
  name: event-exporter
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: event-exporter
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: view
subjects:
  - kind: ServiceAccount
    namespace: kube-ops
    name: event-exporter
[root@192 deploy]# cat 02-deployment.yaml  
apiVersion: apps/v1
kind: Deployment
metadata:
  name: event-exporter
  namespace: kube-ops
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: event-exporter
        version: v1
    spec:
      serviceAccountName: event-exporter
      containers:
        - name: event-exporter
          image: m.daocloud.io/ghcr.io/opsgenie/kubernetes-event-exporter:v0.11
          imagePullPolicy: IfNotPresent
          args:
            - -cnotallow=/data/config.yaml
          volumeMounts:
            - mountPath: /data
              name: cfg
      volumes:
        - name: cfg
          configMap:
            name: event-exporter-cfg
  selector:
    matchLabels:
      app: event-exporter
      version: v1

执行以上yaml文件,这里就直接略过了。不会自行百度。

Elasticsearch部署

  • 下载elasticsearch压缩包
# wget  https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.10.4-linux-x86_64.tar.gz
  • 解压
### 创建存放包的文件夹
# mkdir /data/soft -p

# tar -xvf elasticsearch-8.10.4-linux-x86_64.tar.gz  -C /data/soft/
  • 修改配置文件 config/elasticsearch.yml
cluster.name: my-elk
node.name: node-1
path.data: /data/soft/elasticsearch-8.10.4/data
path.logs: /data/soft/elasticsearch-8.10.4/logs
network.host: 0.0.0.0
http.port: 9200
  • 修改系统配置
# cat >> /etc/security/limits.conf <<EOF

es             hard           nofile        65535
es             soft           nofile        65535
es                            nproc         4096
es             hard           memlock       unlimited
es             soft           memlock       unlimited

EOF

# cat >>  /etc/sysctl.conf <<EOF

vm.swappiness=1
vm.max_map_count=262144
EOF

### 使其生效

# sysctl --system
# su -  root
  • 创建启动用户
# useradd es
  • 修改文件权限
#  chown es:es elasticsearch-8.10.4/ -R
  • 创建systemctl启动配置
# /etc/systemd/system/elasticsearch.service
[Unit]
Descriptinotallow=Elasticsearch
Documentatinotallow=https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html

[Service]
User=es
ExecStart=/data/soft/elasticsearch-8.10.4/bin/elasticsearch
TimeoutStopSec=20
Restart=always
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target

关于如何reload、启动这里就直接略过了哦。不会自行百度。

重置elasticsearch密码

# ./elasticsearch-reset-password -u elastic  
This tool will reset the password of the [elastic] user to an autogenerated value.
The password will be printed in the console.
Please confirm that you would like to continue [y/N]y


Password for the [elastic] user successfully reset.
New value: l5tL-0v74o15RlMzVkY

当我们为elastic用户重置密码时,输入确定后,即可生成一个新的密码,这里的密码为:l5tL-0v74o15RlMzVkY

Grafana部署

  • 下载Grafana压缩包
wget  https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.2.linux-amd64.tar.gz
  • 解压
tar -xvf    grafana-enterprise-9.4.2.linux-amd64.tar.gz   -C   /data/soft
  • 启动
nohup ./grafana-server  >/dev/null 2>&1 &

我这里直接使用的nohup启动,当然你也可以在kubernetes、docker中部署等等。

Grafana连接Elastic

图片图片

其中这里的ca是elasitc中的,具体路径为config/certs/http_ca.crt ,这里的Password为我们重置后的es密码。

图片图片

图片图片

这里就不做过多的解释了。不明白的,加群问吧。

导入dashboard

图片图片

总结

到此我们关于events的展示基本上已经完结了,至于告警的分享等时间允许了会再次分享。

责任编辑:武晓燕 来源: 云原生运维圈
相关推荐

2022-05-18 08:10:50

Kubernetes工具运维

2024-04-09 08:00:00

Kubernetes管理系统云原生

2021-12-29 17:29:07

KubernetesEvents集群

2024-02-23 16:10:29

KubernetesPrometheus开源

2015-08-20 10:23:23

前端代码日志收集

2011-09-13 10:17:26

PhoneGap AP

2009-05-20 14:56:58

ibmdwWebSphereSOA

2021-04-13 07:58:34

Kubernetns容器监控

2023-08-31 07:46:54

KubernetesLoki

2021-07-20 08:32:16

Kubernetes日志平台

2021-07-19 09:18:07

KubernetesELK Stackk8s

2021-03-11 14:33:28

Kubernetes开源容器

2015-08-10 14:41:39

Kubernetes监控开源容器管理

2023-02-10 10:54:48

DevOpsCICD

2022-10-17 10:35:34

DevOpsCICD

2010-09-29 10:27:40

2022-06-20 11:15:08

日志容器Kubernetes

2023-05-11 07:08:07

Kubernetes监控

2022-09-05 08:39:04

kubernetesk8s

2019-10-17 21:14:08

Kubernetes节点Python
点赞
收藏

51CTO技术栈公众号