[k8s]elk架构设计-k8s集群里搭建

毛台 毛台     2022-10-09     315

关键词:

elasticsearch和mysql的对比

https://blog.csdn.net/qq_21383435/article/details/79323383

Mapping ~ Schema

master: 负责在集群范围内创建/删除索引,将分片分配给这些节点.
data:   用来保存数据和倒排索引,node.data=ture
client: 将节点配置为客户端节点,并充当负载平衡器,将传入的请求路由到集群中的不同节点。node.master和node.data设置为false

https://blog.csdn.net/sdksdk0/article/details/78469190

Index templates

索引可使用预定义的模板进行创建,这个模板称作Index templates。模板设置包括settings和mappings,通过模式匹配的方式使得多个索引重用一个模板,例如:


curl -XPUT localhost:9200/_template/template_1 -d '
{
    "template" : "te*",
    "settings" : {
        "number_of_shards" : 1
    },
    "mappings" : {
        "type1" : {
            "_source" : {"enabled" : false }
        }
    }
}

elk设计架构

参考
k8sgithub上 https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch

Elasticsearch最佳实践建议将这些节点分成三个角色:

Master 节点 - 仅用于集群管理,没有数据,没有HTTP API
Client 节点 - 用于客户端使用,无数据,  使用HTTP API
Data   节点 - 旨在存储和索引数据,      没有HTTP API

分为 管理区 存储区 读写区

定制镜像

- es
0. 我把镜像推到了dockerhub: lanny/quay.io_pires_docker-elasticsearch-kubernetes:5.6.0
1. 镜像里用到的yaml: https://github.com/lannyMa/docker-elasticsearch-kubernetes
2. 可以安装自定义插件后重新build

- kibana
0. 用到这个人的这个镜像 cfontes/kibana-xpack-less:5.5.0 https://hub.docker.com/r/cfontes/kibana-xpack-less/
   这个人的git(包含了elk的k8s yaml): https://github.com/cfontes/kubernetes-elasticsearch-cluster


- k8s的elk集群的yaml
https://github.com/pires/kubernetes-elasticsearch-cluster
镜像到这个地址: https://github.com/lannyMa/kubernetes-elasticsearch-cluster

内含elk 普罗 harbor的yaml,比较实用
https://github.com/cnych/k8s-repo

集群yaml里搜HTTP_ENABLE,统一打开head访问权限

es-master.yaml

        - name: HTTP_ENABLE
          value: "true"
        - name: HTTP_CORS_ALLOW_ORIGIN
          value: "*"

创建集群

创建pv

$ cat es-data_claim.yaml 
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: opspvc
  namespace: kube-ops
  annotations:
    volume.beta.kubernetes.io/storage-class: "managed-nfs-storage"
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi


先创建svc类型

后依次创建 data master client kibana

访问es api

访问kibana

打开kibana,插入示例数据

PUT _bulk
{"index":{"_index":"lagou","_type":"job","_id":"1"}}
{"title":"python分布式爬虫开发","salary_min":15000,"city":"深圳","company":{"name":"腾讯","company_addr":"深圳市软件园"},"publish_date":"2017-11-11","comments":15}
{"index":{"_index":"lagou","_type":"job","_id":"2"}}
{"title":"django开发","salary_min":15000,"city":"上海","company":{"name":"阿里","company_addr":"广州市软件园"},"publish_date":"2017-11-12","comments":20}

打开head查看数据

 docker run -d -v /etc/localtime:/etc/localtime --restart=always -p 9100:9100 mobz/elasticsearch-head:5

查看数据

todo:Curator(馆长) 管理索引的工具

Curator的主要用途:

name 用途
Alias 别号
Allocation 分配
Close
Cluster Routing 群集路由
Create Index 创建索引
Delete Indices 删除索引
Delete Snapshots 删除快照
forceMerge forceMerge
Index Settings 索引设置
Open 打开
Reindex 重新编制
Replicas 副本
Restore 恢复
Rollover 滚下
Shrink 收缩
Snapshot 快照

elk整体链条架构

es版本兼容

    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"

curl http://10.100.32.137:9200


{
  "name" : "es-data-5c5969967-wb2b8",
  "cluster_name" : "myesdb",
  "cluster_uuid" : "qSps-b9dRI2ngGHBguJ44Q",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

linux企业运维——k8s高可用集群架构搭建详解(代码片段)

K8s高可用集群文章目录K8s高可用集群一、K8s高可用集群架构原理二、实验环境三、K8s高可用集群架构搭建1、负载均衡Loadbalancer部署—haproxy2、Docker部署3、K8s集群部署4、K8s集群添加worker节点四、集群高可用性能测试一、K8s高可用... 查看详情

在k8s集群部署elk(代码片段)

...k8s集群创建一个namespace:halashowkubectlcreatenshalashow2ELK部署架构3部署elasticSearch这是一个单节点部署,高可用方案我在研究研究。。。es与mysql的概念对应关系。es倒排索引。7.X版本type已经删除。3.1准备资源配置清单Deployment 查看详情

linux企业运维——k8s高可用集群架构搭建详解(代码片段)

K8s高可用集群文章目录K8s高可用集群一、K8s高可用集群架构原理二、实验环境三、K8s高可用集群架构搭建3.1、负载均衡Loadbalancer部署—haproxy3.2、Docker部署3.3、K8s集群部署3.4、K8s集群添加worker节点四、集群高可用性能测试一、K8s... 查看详情

k8s之001:概述集群搭建(代码片段)

...es概述:1.kubernetes基本介绍1.1前置知识:2.K28特性:3.k8s的集群架构:4.k8s核心概念:4.1pod:4.2controller:4.3service:二、集群搭建:1.搭建k8s环境平台规划:1.1单master节点:1.2多master节点:1.3硬件要求:2.k8s集群搭建方法--kubeadm:2.1系统配置及初始化:2.2... 查看详情

我的k8s架构搭建之旅

一、总体框架图:Master组件:nkube-apiserverKubernetesAPI,集群的统一入口,各组件协调者,以HTTPAPI提供接口服务,所有对象资源的增删改查和监听操作都交给APIServer处理后再提交给Etcd存储。nkube-controller-manager处理集群中常规后台任... 查看详情

kubernetes概述和kubeadm方式集群搭建(代码片段)

...etes概述和kubeadm方式集群搭建kubernetes概述k8s的功能K8S集群架构组件K8S核心概念集群搭建kubeadm部署方式1.系统初始化2.master和node1,2安装Docker/kubeadm/kubelet3.部署KubernetesMaster4.加入KubernetesNode5.安装Pod网络插件(CNI)6.测试kubernet... 查看详情

kubernetes设计架构(k8s)

...一切都基于分布式的存储系统。下面这张图是Kubernetes的架构图。Kubernetes节点在这张系统架构图中,我们把服务分为运行在工作节点上的服务和组成集群级别控制板的服务。Kubernetes节点有运行应用容器必备的服务,而这些都是受... 查看详情

手把手从零开始搭建k8s集群超详细教程(代码片段)

本教程根据B站课程云原生Java架构师的第一课K8s+Docker+KubeSphere+DevOps同步所做笔记教程k8s集群搭建超详细教程1.基本环境搭建1.创建私有网络2.创建服务器资源3.远程连接到服务器4.docker容器化环境安装5.kubeadm、kubectl、kubelet... 查看详情

手把手从零开始搭建k8s集群超详细教程(代码片段)

本教程根据B站课程云原生Java架构师的第一课K8s+Docker+KubeSphere+DevOps同步所做笔记教程k8s集群搭建超详细教程1.基本环境搭建1.创建私有网络2.创建服务器资源3.远程连接到服务器4.docker容器化环境安装5.kubeadm、kubectl、kubelet... 查看详情

k8s集群log的采集和展示-----elk+fluentd

生产环境下有成千上万的容器,如何有效的查看相应容器中的log呢?Fluentd(log转发)ElasticSearch(logIndex)Kibana(log可视化)LogTrail(logUI查看)(插件)解决方案: 查看详情

从零到壹搭建一个商城架构--k8s集群安装(代码片段)

如果想了解其他内容,请点击这里查看目录1、kubeadmkubeadm是官方推出的一个用于快速部署kubernetes集群的工具这个工具能通过两条指令完成一个kubernetes集群的部署:#创建一个Mster节点kubeadminit#将一个Node节点加入到当前集群中kubead... 查看详情

使用树莓派搭建k8s集群(arm64架构,附安装脚本)(代码片段)

为了能够更好的学习K8S,王道还是得自己动手在虚拟机上玩K8S,没啥感觉。决定挑战自己,然后买了6个树莓派,在真实的硬件上从零开始搭建部署K8S。以下内容在自己的树莓派集群上经过充分验证,没毛病。... 查看详情

一起来入门kubernetes(k8s)

...etes什么是KubernetesKubernetes的好处:Kubernetes分布式集群架构的核心:serviceKubernetes中的Pod对象Kubernetes设计架构集群简介核心组件设计理念Kubernetes为什么叫k8s什么是KubernetesKubernetes是一个全新的基于容器技术的分布式架构领... 查看详情

kubernetes(k8s)单matser集群架构的搭建(v1.20)(代码片段)

文章目录Kubernetes单Matser集群架构的搭建架构图环境准备操作系统初始化配置部署etcd集群准备签发证书环境在master01节点上操作在node01节点上操作在node02节点上操作部署docker引擎部署Master组件在master01节点上操作部署WorkerNode组件... 查看详情

kubernetes(k8s)生产级实践指南从部署到核心应用

...kubernetes快速入门【k8s必知必会】本章中将从核心概念、架构设计、认证授权以及集群搭建方案对比几方面,带领大家快速掌握kubernetes的重要知识点,助力快速入门。第3章高可用集群搭建---kubeadm方式【集群落地方案1】本章中将... 查看详情

k8s集群搭建

三台Linux系统搭建K8S集群配置:hostnameIPcentosversiondockerversionk8s versionmaster192.168.72.1317.7.19081.19.31.18.2node2192.168.72.1327.7.19081.19.31.18.2node3192.168.72.1337.7.19081.19.31.18.2  查看详情

k8s集群搭建

三台Linux系统搭建K8S集群配置:hostnameIPcentosversiondockerversionk8s versionmaster192.168.72.1317.7.19081.19.31.18.2node2192.168.72.1327.7.19081.19.31.18.2node3192.168.72.1337.7.19081.19.31.18.2  查看详情

minio笔记3--基于k8s搭建minio集群

minio笔记3--基于k8s搭建minio集群​​介绍​​​​安装单个节点​​​​安装minio集群​​​​注意事项​​​​说明​​介绍笔者在​​minio笔记01–部署与测试minio​​​和​​minio笔记02–基于swarm搭建minio集群​​​中介绍了m... 查看详情