etcd是一个类似于zk的工具,用于保存值,节点-值这种映射关系的。节点组织结构类似unix文件系统结构,从/最开始。比如一个/test/name节点,值为guanxianseng。可以通过etcdctl这个客户端,执行命令

etcdctl set /test/name guanxianseng

也可以通过客户端命令,获取我们设置的值

etcdctl get /test/name

当然这里返回的值就是

guanxianseng

我们之前设置的

这里etcd与zk还是有区别的。首先,zk使用的是ZAB协议,是雅虎在POXOS协议上修改的。etcd用的是raft协议,也是PAXOS协议的精简版。通过选择leader,客户端将request提交给集群,集群把request打到leader。leader将request发给集群中其余节点,进行询问、提交等动作,保证一致性。

当然,etcd和zk还有其他一些区别。以后,想看的时候在去找找

1. 安装etcd

1.1 如果是centos可以通过

yum install etcd

进行安装

如果是ubuntu,可以通过

apt-get install etcd

这里ubuntu我是猜的,centos我在vmware里面试过可以的。这里可能需要用到root权限。个人比较喜欢root权限,方便

这里,我想吐槽一下ubuntu,经常跳什么出现内部错误。很烦人,centos感觉稳定很多,突然觉得ubuntu很low

1.2 通过官网

https://github.com/coreos/etcd/releases/

下载对应的版本,解压,执行etcd和etcdctl就可以了

1.3 验证安装成功

启动etcd

etcd

执行客户端命令

etcdctl -verison

客户端输出对应的版本号

etcdctl version: 3.1.
API version:

OK,安装成功。其实,就是一解压过程

2. 客户端使用

2.1 可以通过etcdctl在bash里面执行对应的客户端命令。如前面所说的,etcdctl set name guanxianseng ,get命令等

2.2 使用java客户端操作

etcd java客户端有很多,比如etcd4j

https://github.com/adohe/etcd4j

jetcd

https://github.com/diwakergupta/jetcd

我这里使用的是etcd4j

maven依赖

<dependency>
<groupId>com.xqbase</groupId>
<artifactId>etcd4j</artifactId>
<version>1.2</version>
</dependency>

...

照着etcd4j的说明文档来就是了

3. etcd集群

现在,服务器为了高可用,都会搭建集群,防止单点故障。这里etcd也可以搭建集群,不过单机搭建伪集群好像不好弄。经常提示端口已被占用,没有那么多机器。以后用到了在说吧。

Etcd入门教程的更多相关文章

  1. Go-Micro框架入门教程(一)---框架结构

    Go语言微服务系列文章,使用golang实现微服务,这里选用的是go-micro框架,本文主要是对该框架的一个架构简单介绍. 1. 概述 go-micro是go语言下的一个很好的微服务框架. 1.服务 ...

  2. wepack+sass+vue 入门教程(三)

    十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...

  3. wepack+sass+vue 入门教程(二)

    六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...

  4. wepack+sass+vue 入门教程(一)

    一.安装node.js node.js是基础,必须先安装.而且最新版的node.js,已经集成了npm. 下载地址 node安装,一路按默认即可. 二.全局安装webpack npm install ...

  5. Content Security Policy 入门教程

    阮一峰文章:Content Security Policy 入门教程

  6. gulp详细入门教程

    本文链接:http://www.ydcss.com/archives/18 gulp详细入门教程 简介: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优 ...

  7. UE4新手引导入门教程

    请大家去这个地址下载:file:///D:/UE4%20Doc/虚幻4新手引导入门教程.pdf

  8. ABP(现代ASP.NET样板开发框架)系列之2、ABP入门教程

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之2.ABP入门教程 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...

  9. webpack入门教程之初识loader(二)

    上一节我们学习了webpack的安装和编译,这一节我们来一起学习webpack的加载器和配置文件. 要想让网页看起来绚丽多彩,那么css就是必不可少的一份子.如果想要在应用中增加一个css文件,那么w ...

随机推荐

  1. django-redis 使用规范

    django-redis 基于 BSD 许可, 是一个使 Django 支持 Redis cache/session 后端的全功能组件. 1,安装 django-redis 最简单的方法就是用 pip ...

  2. 【bzoj2437】[Noi2011]兔兔与蛋蛋 二分图最大匹配+博弈论

    Description Input 输入的第一行包含两个正整数 n.m. 接下来 n行描述初始棋盘.其中第i 行包含 m个字符,每个字符都是大写英文字母"X".大写英文字母&quo ...

  3. luoguP4782 [模板]2-SAT问题

    https://www.luogu.org/problemnew/show/P4782 2-SAT模板,输出方案只需判断 \(a\) 和 \(a + n\) 两个点所在的 scc 编号大小就可以了 # ...

  4. Mysql数据库申请

    前段时间大部门下新成立了一个推广百度OCR.文字识别.图像识别等科技能力在金融领域应用的子部门.因为部门刚成立,基础设施和人力都是欠缺的.当时分到我们部门的任务是抽调一个人做新部门主站前端开发工作.本 ...

  5. Python——可变和不可变类型数据

    什么是不可变类型? 存储空间保存的数据不允许被修改,这种数据就是不可变类型. 常见的不可变类型有: 数字类型 int, bool, float, complex, long(2.x) 字符串 str ...

  6. 我的csdn博客地址

    呆雁 持续的谦虚与努力 http://blog.csdn.net/u013539183

  7. 【智能算法】用模拟退火(SA, Simulated Annealing)算法解决旅行商问题 (TSP, Traveling Salesman Problem)

    喜欢的话可以扫码关注我们的公众号哦,更多精彩尽在微信公众号[程序猿声] 文章声明 此文章部分资料和代码整合自网上,来源太多已经无法查明出处,如侵犯您的权利,请联系我删除. 01 什么是旅行商问题(TS ...

  8. P2252 取石子游戏 威佐夫博弈

    $ \color{#0066ff}{ 题目描述 }$ 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆 ...

  9. office 2013 破解工具 及 软件下载

     win7/win8/win10  office2013 破解工具 下载地址: https://pan.baidu.com/s/1sZeJOCWq1fZ3KIOWvmrAQQ office2013  ...

  10. 如何在Qt Creator 创建一个.pri文件

    如何在Qt Creator 创建一个.pri文件 2013年10月09日 ⁄ 综合 ⁄ 共 254字 ⁄ 字号 小 中 大 ⁄ 评论关闭   这个问题很少人写,因为比较简单,但是让却让我花了好大功夫才 ...