BoltDB

轻量级日志采集系统Loki+grafana搭建

坚强是说给别人听的谎言 提交于 2020-08-06 03:46:36
一.Loki介绍 整体架构 Loki的架构非常简单,使用了和prometheus一样的标签来作为索引,也就是说,你通过这些标签既可以查询日志的内容也可以查询到监控的数据,不但减少了两种查询之间的切换成本,也极大地降低了日志索引的存储。 Loki将使用与prometheus相同的服务发现和标签重新标记库,编写了pormtail, 在k8s中promtail以daemonset方式运行在每个节点中,通过kubernetes api等到日志的正确元数据,并将它们发送到Loki。 下面是日志的存储架构: 二.使用二进制包简单搭建 使用docker-composer可能比较方便,我们这里采用二进制包安装 1.安装loki主程序包 loki-linux-amd64.zip 查看配置文件 [root@centos7 Loki]# cat loki-config.yaml auth_enabled: false server: http_listen_port: 3100 ingester: lifecycler: address: 127.0.0.1 ring: kvstore: store: inmemory replication_factor: 1 final_sleep: 0s chunk_idle_period: 5m chunk_retain_period: 30s max

解析高可用分布式键值存储 etcd 的原理

跟風遠走 提交于 2020-03-20 10:27:47
3 月,跳不动了?>>> 这篇文章将会介绍 etcd 的实现原理,其中包括 Raft 协议、存储两大模块,在最后我们也会简单介绍 etcd 一些具体应用场景。 etcd 的官方将它定位成一个可信赖的分布式键值存储服务,它能够为整个分布式集群存储一些关键数据,协助分布式集群的正常运转。 我们可以简单看一下 etcd 和 Zookeeper 在定义上有什么不同: etcd is a distributed reliable key-value store for the most critical data of a distributed system… ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. 其中前者是一个用于存储关键数据的键值存储,后者是一个用于管理配置等信息的中心化服务。 etcd 的使用其实非常简单,它对外提供了 gRPC 接口,我们可以通过 Protobuf 和 gRPC 直接对 etcd 中存储的数据进行管理,也可以使用官方提供的 etcdctl 操作存储的数据。 service KV { rpc

从零开始入门 K8s | etcd 性能优化实践

房东的猫 提交于 2019-12-17 11:07:44
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 作者 | 陈星宇(宇慕) 阿里云基础技术中台技术专家 本文整理自 《CNCF x Alibaba 云原生技术公开课》 第 17 讲。 导读 :etcd 是容器云平台用于存储关键元信息的组件。阿里巴巴使用 etcd 已经有 3 年的历史, 在今年 双11 过程中它又一次承担了关键角色,接受了 双11 大压力的检验。本文作者从 etcd 性能背景出发,带领我们了解了 etcd server 端性能优化及 etcd client 使用最佳实践,希望能够为大家运行一个稳定而且高效的 etcd 集群提供帮助。 一、etcd 简要介绍 etcd 诞生于 CoreOs 公司,使用 Golang 语言开发,是一个分布式 KeyValue 存储引擎。我们可以利用 etcd 来作为分布式系统元数据的存储数据库,存储系统里面重要的元信息。etcd 同样也被各大公司广泛使用。 下图为 etcd 的基本架构 如上所示,一个集群有三个节点:一个 Leader 和两个 Follower。每个节点通过 Raft 算法同步数据,并通过 boltdb 存储数据。当一个节点挂掉之后,另外的节点会自动选举出来一个 Leader,保持整个集群的高可用特性。Client 可以通过连接任意一个节点完成请求。 二、理解 etcd 性能 首先我们来看一张图: