当前位置:   article > 正文

K8S搭建ELK(Elasticsearch,Kibana,Logstash和Filebeat)

K8S搭建ELK(Elasticsearch,Kibana,Logstash和Filebeat)

部署前提:

1、完成K8S集群搭建,搭建参考:

基于ECS云主机搭建k8s集群-详细过程_Soft_Engneer的博客-CSDN博客Kubernetes集群详细部署过程,K8s避坑记录,快速搭建环境并把主要时间花在专注k8s的学习上https://blog.csdn.net/Soft_Engneer/article/details/124517916?spm=1001.2014.3001.55022、完成GlusterFS共享存储部署,搭建参考:

CentOS安装GlusterFS_Soft_Engneer的博客-CSDN博客glusterfs部署及测试https://blog.csdn.net/Soft_Engneer/article/details/124554384?spm=1001.2014.3001.55023、下载部署的镜像包:

  1. docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.2
  2. docker pull docker.elastic.co/kibana/kibana:7.17.2
  3. docker pull docker.elastic.co/logstash/logstash:7.17.2
  4. docker pull docker.elastic.co/beats/filebeat:7.17.2

一,搭建elasticsearch+kibana

elasticsearch配置文件:

  1. [root@k8s-node01 elk]# more elasticsearch.yml
  2. cluster.name: my-es
  3. node.name: "node-1"
  4. path.data: /usr/share/elasticsearch/data
  5. #path.logs: /var/log/elasticsearch
  6. bootstrap.memory_lock: false
  7. network.host: 0.0.0.0
  8. http.port: 9200
  9. #集群个节点IP地址,也可以使用els、els.shuaiguoxia.com等名称,需要各节点能够解析
  10. #discovery.zen.ping.unicast.hosts: ["172.16.30.11", "172.17.77.12"]
  11. #集群节点数
  12. #discovery.zen.minimum_master_nodes: 2
  13. discovery.seed_hosts: ["127.0.0.1", "[::1]"]
  14. cluster.initial_master_nodes: ["node-1"]
  15. #增加参数,使head插件可以访问es
  16. http.cors.enabled: true
  17. http.cors.allow-origin: "*"
  18. http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

kibana配置文件:

kibana连接的主机使用了域名,是由有状态应用statefulset创建的Pod

  1. [root@k8s-node01 elk]# more kibana.yml
  2. server.port: 5601
  3. server.host: "0.0.0.0"
  4. elasticsearch.hosts: "http://es-kibana-0.es-kibana.kube-system:9200"
  5. kibana.index: ".kibana"

创建elasticsearch和kibana的配置文件configmap:

  1. kubectl create configmap es-config -n kube-system --from-file=elasticsearch.yml
  2. kubectl create configmap kibana-config -n kube-system --from-file=kibana.yml

创建glusterfs存储,用于创建pv:

es-volume存储卷已创建,那么需要创建endpoint和svc:

es-endpoints.yaml

es-glusterfs-svc.yaml

  1. [root@k8s-node01 elk]# more es-endpoints.yaml
  2. apiVersion: v1
  3. kind: Endpoints
  4. metadata:
  5. name: glusterfs-es
  6. namespace: kube-system
  7. subsets:
  8. - addresses:
  9. - ip: 192.168.16.5
  10. ports:
  11. - port: 49155
  12. - addresses:
  13. - ip: 192.168.16.4
  14. ports:
  15. - port: 49155
  16. - addresses:
  17. - ip: 172.17.22.4
  18. ports:
  19. - port: 49155
  1. [root@k8s-node01 elk]#
  2. [root@k8s-node01 elk]# more es-glusterfs-svc.yaml
  3. apiVersion: v1
  4. kind: Service
  5. metadat
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号