写点什么

59 K8S 之 Elasticsearch 节点

  • 2021 年 12 月 29 日
  • 本文字数:882 字

    阅读完需:约 3 分钟

59 K8S之Elasticsearch节点

以 kubeadm 部署的 Kubernetes 集群中,除 kubelet 和容器运行时之外的其他组件同样以 Pod 形式运行,这些组件包括 etcd、kube-apiserver、kube-controller-manager、kube-scheduler 和 kube-proxy 等,它们的日志收集与其他容器应用并无不同之处。但不以 Pod 形式运行的环境中,这类组件的日志通常位于/var/log/目录下,日志收集代理需要通过配置文件将这类日志文件纳入采集范围。需要关注的还有 Kubernetes 集群的事件日志及审计日志需要包含在收集范围内。再者,节点级别的日志也就是传统的主机日志,包括了内核日志和 kubelet 日志(systemd 日志或者/var/log/目录下的日志文件)


根据其核心功能及角色分离机制,Elasticsearch 中的节点可划分为“准主节点”(master-eligible node)、“数据节点”(data node)、“摄取节点”(ingest node)和“协调节点”(coordinating node)等类型。每个节点默认可扮演所有角色类型,因而 Elasticsearch 可轻松构建出由单节点或少数几个节点组成的测试集群。


准主节点:准主节点会选取一个真正执行主节点功能的节点作为主节点。主节点负责集群级别的轻量级操作,包括创建和删除索引、跟踪集群中的所有节点以及分片分配等功能,主节点由“选举”机制产生。为了避免主节点参与到索引和搜索任务中去,大型或高吞吐量的集群中应该设置 3 个或更多的奇数个准主节点,或者至少两个准主节点与一至多个仅投票节点。需要特别说明的是,主节点从重启中恢复的机制依赖于持久存储才能实现。


数据节点:持有索引分片并负责处理数据相关的操作,例如 CRUD、搜索和聚合等 I/O 及 CPU 密集型的任务。大型的生产类集群中,数据节点同样应该是剥离了其他角色的专用节点。


摄取节点:也称为客户端节点,它负责接收客户端发来的 REST 请求,并根据内部预置的一个或多个由摄取处理器组成的预处理管道完成数据的预处理,之后路由给数据节点。大型生产类集群中同样可以设置专用的摄取节点。


协调节点:禁用了主节点、数据节点及摄取节点等功能后的节点即为协调节点,它可以完成路由请求、处理搜索结果合并(reduce 阶段),以及协调批量索引(bulk indexing)等任务;大型的生产类集群中也可以设置专用的摄取节点。


发布于: 刚刚
用户头像

InfoQ签约作者 2018.11.30 加入

热爱生活,收藏美好,专注技术,持续成长

评论

发布
暂无评论
59 K8S之Elasticsearch节点