0 专辑概述 etcd 是云原生架构中重要的基础组件,由 CNCF 孵化托管.etcd 在微服务和 Kubernates 集群中不仅可以作为服务注册与发现,还可以作为 key-value 存储的中间件. <彻底搞懂 etcd 系列文章>将会从 etcd 的基本功能实践.API 接口.实现原理.源码分析,以及实现中的踩坑经验等几方面具体展开介绍 etcd.预计会有 20 篇左右的文章,笔者将会每周持续更新,欢迎关注. 1 etcd 集群部署 在生产环境中,为了整个集群的高可用,etcd 正常都会…
[编者的话]etcd 是 Kubernetes 集群的数据核心,最严重的情况是,当 etcd 出问题彻底无法恢复的时候,解决问题的办法可能只有重新搭建一个环境.因此围绕 etcd 相关的运维知识就比较重要,etcd 可以容器化部署,也可以在宿主机自行搭建,以下内容是通用的. 集群的备份和恢复 添加备份 #!/bin/bash IP=123.123.123.123 BACKUP_DIR=/alauda/etcd_bak/ mkdir -p $BACKUP_DIR export ETCDCTL_AP…
etcd 是 Kubernetes 集群的数据核心,最严重的情况是,当 etcd 出问题彻底无法恢复的时候,解决问题的办法可能只有重新搭建一个环境.因此围绕 etcd 相关的运维知识就比较重要,etcd 可以容器化部署,也可以在宿主机自行搭建,以下内容是通用的. 集群的备份和恢复 添加备份 #!/bin/bash IP=123.123.123.123 BACKUP_DIR=/alauda/etcd_bak/ mkdir -p $BACKUP_DIR export ETCDCTL_API=3 et…
[活动]Elasticsearch Service免费体验馆>> Elasticsearch Service自建迁移特惠政策>>Elasticsearch Service新用户特惠狂欢低至4折>>Elasticsearch Service企业上云特惠>> 导语 | 腾讯云Elasticsearch 被广泛应用于日志实时分析.结构化数据分析.全文检索等场景中,本文将以情景植入的方式,向大家介绍与腾讯云客户合作过程中遇到的各种典型问题,以及相应的解决思路与方法,…
0 专辑概述 etcd 是云原生架构中重要的基础组件,由 CNCF 孵化托管.etcd 在微服务和 Kubernates 集群中不仅可以作为服务注册与发现,还可以作为 key-value 存储的中间件. <彻底搞懂 etcd 系列文章>将会从 etcd 的基本功能实践.API 接口.实现原理.源码分析,以及实现中的踩坑经验等几方面具体展开介绍 etcd.预计会有 20 篇左右的文章,笔者将会每周持续更新,欢迎关注. 1 etcd 安装与使用 在上一篇主要介绍了 etcd 的相关概念和使用场景,…
0 专辑概述 etcd 是云原生架构中重要的基础组件,由 CNCF 孵化托管.etcd 在微服务和 Kubernates 集群中不仅可以作为服务注册与发现,还可以作为 key-value 存储的中间件. <彻底搞懂 etcd 系列文章>将会从 etcd 的基本功能实践.API 接口.实现原理.源码分析,以及实现中的踩坑经验等几方面具体展开介绍 etcd.预计会有 20 篇左右的文章,笔者将会每周持续更新,欢迎关注. 1 etcd 介绍 etcd 是 CoreOS 团队于 2013 年 6 月发…
之前写过一篇手动搭建etcd 3.1集群的文章<etcd 3.1 高可用集群搭建>,最近要初始化一套新的环境,考虑用ansible自动化部署整套环境, 先从部署etcd 3.2集群开始. 需要部署etcd的主机信息如下: node1 192.168.61.11 node2 192.168.61.12 node3 192.168.61.13 配置管理项目目录结构 ├── inventories │   ├── staging │   │   ├── group_vars │   │   │  …
本专栏的上一篇文章写了<长篇图解etcd核心应用场景及编码实战>,本文继续.后续计划章节内容如下: <长篇图解etcd核心应用场景及编码实战> <搭建高可用etcd集群> <基于etcd实现分布式锁(java代码实现)> <基于etcd实现配置变更通知(java代码实现)> <基于etcd实现服务注册与发现(java代码实现)> <基于etcd实现分布式系统节点leader选举(java代码实现)> 很多人知道etcd是因…
ElasticSearch 深入理解 三:集群部署设计 ElasticSearch从名字中也可以知道,它的Elastic跟Search是同等重要的,甚至以Elastic为主要导向. Elastic即可伸缩性,作为一个分布式的搜索引擎,可伸缩性是它的核心竞争力. Elastic&Shard 这两个词能放在在一起,因为ES的Elastic是建立在Shard的基础上.Shard作为ES伸缩性的基本单元,可以在不同的node之间迁移.例如我一个实际测试的例子: 两个节点的时候,一个index配置15个s…
Prometheus Operator不同于Prometheus,Prometheus Operator是 CoreOS 开源的一套用于管理在 Kubernetes 集群上的 Prometheus 控制器,它是为了简化在 Kubernetes 上部署.管理和运行 Prometheus 和 Alertmanager 集群. 官方提供的架构图: kubernetes也在官方的github上关于使用prometheus监控的建议: 地址:https://github.com/kubernetes/ku…
BDubbo 系列(07-4)集群容错 - 集群 [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 相关文档推荐: Dubbo 集群容错 - 实战 Dubbo 官网源码解读 - 集群 在 Dubbo 的整个集群容错流程中,首先经过 Directory 获取所有的 Invoker 列表,然后经过 Routers 根据路由规则过滤 Invoker,最后幸存下来的 Invoker 还需要经过负载均衡 LoadBalance 这一关,选出最终调用的 In…
目录 Dubbo 系列(07-3)集群容错 - 负载均衡 Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 1.1 负载均衡算法 1.2 继承体系 2. 源码分析 2.1 AbstractLoadBalance 2.2 RandomLoadBalance 2.3 LeastActiveLoadBalance 2.4 ConsistentHashLoadBalance 2.5 RoundRobinLoadBalance Dubbo 系列(07-3)集群容错 -…
Dubbo 系列(07-1)集群容错 - 服务字典 [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 本篇文章,将开始分析 Dubbo 集群容错方面的源码.集群容错源码包含四个部分,分别是服务目录 Directory.服务路由 Router.集群 Cluster 和负载均衡 LoadBalance. 这四个接口都是 dubbo-cluster 工程中定义的. 相关文档推荐: Dubbo 源码解读 - 服务字典 1.1 Directory 接口 p…
一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个副本? 下面我们就来分析和回答这几个问题 1.我们需要多大规模的集群? 需要从以下两个方面考虑: 1.1 当前的数据量有多大?数据增长情况如何?1.2 你的机器配置如何?cpu.多大内存.多大硬盘容量? 推算的依据: ES JVM heap 最大可以设置32G . 30G heap 大概能处理的数据…
一.修改配置文件 1.节点配置 1.vim elasticsearch.yml # ======================== Elasticsearch Configuration ========================= # # NOTE: Elasticsearch comes with reasonable defaults for most settings. # Before you set out to tweak and tune the configuratio…
Dubbo 系列(07-5)集群容错 - Mock [toc] Spring Cloud Alibaba 系列目录 - Dubbo 篇 1. 背景介绍 相关文档推荐: Dubbo 实战 - 服务降级 Dubbo 实战 - 本地伪装 Dubbo 实战 - 本地存根 Dubbo 的集群容错中默认会组装 MockClusterWrapper,它实现了 Dubbo 的服务降级和本地伪装. 1.1 服务降级 服务降级配置方式,更多参考官网 Dubbo 实战 - 服务降级 <dubbo:reference…
Elasticsearch使用系列-ES简介和环境搭建 Elasticsearch使用系列-ES增删查改基本操作+ik分词 Elasticsearch使用系列-基本查询和聚合查询+sql插件 Elasticsearch使用系列-.NET6对接Elasticsearch Elasticsearch使用系列-Docker搭建Elasticsearch集群 一.系统环境准备 这里准备三台机器,系统均为CentOS7.9:172.16.2.84,172.16.2.85,172.16.2.86 1.调高j…
Redis集群的概念: RedisCluster是redis的分布式解决方案,在3.0版本后推出的方案,有效地解决了Redis分布式的需求,当一个服务挂了可以快速的切换到另外一个服务,当遇到单机内存.并发等瓶颈时,可使用此方案来解决这些问题 一.分布式数据库概念 1. 分布式数据库把整个数据按分区规则映射到多个节点,即把数据划分到多个节点上,每个节点负责整体数据的一个子集.比如我们库有900条用户数据,有3个redis节点,将900条分成3份,分别存入到3个redis节点 2. 分区规则: 常见…
一.集群提交任务流程分析 1.集群提交操作 参考:https://www.jianshu.com/p/6783f1ec2da0 2.任务分配与启动流程 参考:https://www.cnblogs.com/heitaok/p/5531535.html 二.相关目录树 1.组件本地目录树 2.storm zk目录树 三.集群通信 Worker间的通信经常需要通过网络跨节点进行,Storm使用ZeroMQ或Netty(0.9以后默认使用)作为进程间通信的消息框架. Worker进程内部通信:不同wo…
Redis源码阅读(三)集群-连接建立 对于并发请求很高的生产环境,单个Redis满足不了性能要求,通常都会配置Redis集群来提高服务性能.3.0之后的Redis支持了集群模式. Redis官方提供的集群功能是无中心的,命令请求可以发送到任意一个Redis节点,如果该请求的key不是由该节点负责处理,则会返回给客户端MOVED错误,提示客户端需要转向到该key对应的处理节点上.支持集群模式的redis客户端会自动进行转向,普通模式客户端则只返回MOVED错误. 先看下常见的Redis集群结构:…
kafka三实例集群环境搭建及测试使用 单机搭建分为两部分:1. 软件安装启动 2. 软件配置 软件安装启动: # 切换到目录 cd /app # 获取kafka最新安装包,这边使用的是镜像地址,可以去官方网站获得最新地址版本号使用kafka_2.11-1.1.0.tgz,可以自己下载上传上去 wget http://mirrors.hust.edu.cn/apache/kafka/0.11.0.1/kafka_2.11-0.11.0.1.tgz # 解压软件包 tar -zxvf kafka_…
Redis三主三从集群规划 10.0.128.19   使用端口 7000  7001 10.0.128.22   使用端口 7002  7003 10.0.128.23   使用端口 7004  7005 安装redis及依赖包 (3台) 下载安装包 https://redis.io/ tar xf  下载的源码包 解压到/data/redis-5.0.5 yum -y install tcl gcc cd /data/redis- make MALLOC=libc cd src make t…
目录 介绍 为什么要使用Redis? 什么是Redis群集? 在Kubernetes中部署Redis集群 从 GitHub 上下载: 创建pv 创建statefulset 创建service 初始化 Redis Cluster 验证集群部署 测试Redis集群 介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序集合. 由于Redis接受多种格式的密钥,因此可以在服…
目录 Dubbo 系列(07-2)集群容错 - 服务路由 1. 背景介绍 1.1 继承体系 1.2 SPI 2. 源码分析 2.1 创建路由规则 2.2 RouteChain 2.3 条件路由 Dubbo 系列(07-2)集群容错 - 服务路由 1. 背景介绍 相关文档推荐: Dubbo 路由规则配置 Dubbo 源码解读 - 服务路由 在上一节 Dubbo 系列(06-1)集群容错 - 服务字典 中分析服务字典的源码,服务字典是 Dubbo 集群容错的基础,这节只在服务字典的基础上继续分析服务…
Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apache Hadoop集群离线安装部署(二)——Spark-2.1.0 on Yarn安装:http://www.cnblogs.com/pojishou/p/6366570.html Apache Hadoop集群离线安装部署(三)——Hbase安装:http://www.cnblogs.com/po…
在开发测试环境中,我们一般搭建Redis的单实例来应对开发测试需求,但是在生产环境,如果对可用性.可靠性要求较高,则需要引入Redis的集群方案.虽然现在各大云平台有提供缓存服务可以直接使用,但了解一下其背后的实现与原理总还是有些必要(比如面试), 本文就一起来学习一下Redis的几种集群方案. Redis支持三种集群方案 主从复制模式 Sentinel(哨兵)模式 Cluster模式 主从复制模式 1. 基本原理 主从复制模式中包含一个主数据库实例(master)与一个或多个从数据库实例(sl…
介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序集合. 由于Redis接受多种格式的密钥,因此可以在服务器上执行操作,从而减少了客户端的工作量. 它仅将磁盘用于持久性,而将数据库完全保存在内存中. Redis是一种流行的数据存储解决方案,并被GitHub,Pinterest,Snapchat,Twitter,StackOverflow,Flickr等技术巨头所使…
三种集群模式 redis有三种集群模式,其中主从是最常见的模式. Sentinel 哨兵模式是为了弥补主从复制集群中主机宕机后,主备切换的复杂性而演变出来的.哨兵顾名思义,就是用来监控的,主要作用就是监控主从集群,自动切换主备,完成集群故障转移. cluster 模式是redis官方提供的集群模式,使用了Sharding 技术,不仅实现了高可用.读写分离.也实现了真正的分布式存储. 一.主从复制 redis主从复制 1.reids主从模式 2.redis复制原理 redis 的复制分为两部分操作…
1.绪论 etcd作为华为云PaaS的核心部件,实现了PaaS大多数组件的数据持久化.集群选举.状态同步等功能.如此重要的一个部件,我们只有深入地理解其架构设计和内部工作机制,才能更好地学习华为云Kubernetes容器技术,笑傲云原生的“江湖”.本系列将从整体框架再细化到内部流程,对etcd的代码和设计进行全方位解读.本文是<深入浅出etcd>系列的第一篇,重点解析etcd的架构和代码框架,下文所用到的代码均基于etcd v3.2.X版本. 另,由华为云容器服务团队倾情打造的<云原生分…
作为一个程序猿,只知道怎么用是远远不够的.起码,你须要知道为什么能够这么用.即我们所谓底层的东西. 那究竟什么是底层呢?我认为这不能一概而论.以我如今的知识水平而言:对于Web开发人员,TCP/IP.HTTP等等协议可能就是底层:对于C.C++程序猿.内存.指针等等可能就是底层的东西.那对于Java开发人员.你的Java代码执行所在的JVM可能就是你所须要去了解.理解的东西. 我会在接下来的一段时间,和读者您一起去学习JVM.全部内容均參考自<深入理解Java虚拟机:JVM高级特性与最佳实践>…