Kubernetes实战总结 - EFK部署(v7.6.0)
2021-03-22 14:26
                         标签:总结   log   net   storage   node   install   ret   blog   persist      Elasticsearch 通常与 Kibana一起部署,Kibana 是 Elasticsearch 的一个功能强大的数据可视化 Dashboard,Kibana 允许你通过 web 界面来浏览 Elasticsearch 日志数据。     详情参考:Kubernetes实战总结 - Helm部署(v3.1.1)             作者:Leozhanggg 出处:https://www.cnblogs.com/leozhanggg/p/12700363.html 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 Kubernetes实战总结 - EFK部署(v7.6.0) 标签:总结   log   net   storage   node   install   ret   blog   persist    原文地址:https://www.cnblogs.com/leozhanggg/p/12700363.html基础概念
 
安装部署
这里我们利用Helm进行部署,所以我们需要先安装Helm。
wget -O helm.tgz https://get.helm.sh/helm-v3.1.1-linux-amd64.tar.gz
tar -zxvf helm.tgz
cd linux-amd64
mv helm /usr/local/bin && chmod a+x /usr/local/bin
helm version然后我们下载Helm仓库源码
wget -O helm-charts.tgz  https://github.com/elastic/helm-charts/archive/7.6.2.tar.gz
tar -zxvf helm-charts.tgz
cd helm-charts-7.6.2创建PV供elasticsearch使用,这里采用NFS,你也可以采用其他方式。
# es-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: elasticsearch
spec:
  capacity:
    storage: 30Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  nfs:
    path: /nfsdata/elasticsearch
    server: *.*.*.*
kubectl create -f es-pv.yaml部署elasticsearch
vim elasticsearch/values.yaml
# 根据自己节点数进行更改
replicas: 1
minimumMasterNodes: 1    
.......
# 更改镜像源及版本
image: "registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/elasticsearch"
imageTag: "7.6.0"
imagePullPolicy: "IfNotPresent"
......
# 自行调整资源大小
resources:
  requests:
    cpu: "1000m"
    memory: "2Gi"
  limits:
    cpu: "1000m"
    memory: "2Gi"
......
# 存在对应PV
volumeClaimTemplate:
  accessModes: [ "ReadWriteOnce" ]
  resources:
    requests:
      storage: 30Gi
helm install es --namespace=efk ./elasticsearch部署filebeat
vim filebeat/values.yaml
# 日志收集目录
hostPathRoot: /var/lib
hostNetworking: false
# 更改镜像源及版本
image: "registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/filebeat"
imageTag: "7.6.0"
imagePullPolicy: "IfNotPresent"
helm install fb --namespace=efk ./filebeat
部署kibana
vim kibana/values.yaml
# 更改镜像源及版本
image: "registry.cn-shanghai.aliyuncs.com/leozhanggg/elastic/kibana"
imageTag: "7.6.0"
imagePullPolicy: "IfNotPresent"
......
# 更改为NodePort模式
service:
  type: NodePort
  port: 5601
  nodePort: "30005"
  
helm install kb --namespace=efk ./kibana
等待部署完成
[root~ ]# kubectl get pod -n efk
NAME                             READY   STATUS    RESTARTS   AGE
elasticsearch-master-0           1/1     Running   0          28h
filebeat-filebeat-967m2          1/1     Running   0          28h
filebeat-filebeat-lr79k          1/1     Running   0          28h
kibana-kibana-64f5869d86-qrkrq   1/1     Running   0          28h
访问masterip:port,即可查看日志

当然,这并不是最佳实现,在该架构中,根据业务特点,还可以加入某些中间件,如Redis、Kafak等。

更多详情参考>>>   如何监控K8S集群日志        EFK(Elasticsearch+Filebeat+Kibana)收集容器日志
 
上一篇:gojs插件
文章标题:Kubernetes实战总结 - EFK部署(v7.6.0)
文章链接:http://soscw.com/index.php/essay/67574.html