etcd:它是一个键值存储仓库,用于配置共享和服务发现
这是跟着教程学习的执行过程步骤:
1.etcd下载安装方式有很多种,我是通过通过压缩文件进行下载安装。
>curl -L https://github.com/coreos/etcd/releases/download/v2.0.0-rc.1/etcd-v2.0.0-rc.1-linux-amd64.tar.gz -o etcd-v2.0.0-rc.1-linux-amd64.tar.gz
>tar xzvf etcd-v2.0.0-rc.1-linux-amd64.tar.gz
>cd etcd-v2.0.0-rc.1-linux-amd64
>ls #查看文件夹内容
推荐通过下面的命令将三个文件都放到系统可执行目录 /usr/bin/
。
$ sudo cp etcd* /usr/bin/
然后运行etcd,会显示默认的数据库使用所监听的端口以及etcd使用所监听的端口
>./etcd
测试etcd是否可以服务:(守护进程,需要另外连接一个Xshell)
>./etcdctl set testkey "Hello World" #绑定设置键值
>./etcdctl get testkey #返回查看键所对应的值,(返回Hello World)
还可以通过访问本地 2379 或 4001 端口的方式来进行操作,例如查看 testkey
的值:
>curl -L http://localhost:4001/v2/keys/testkey
数据库的操作:
etcd 在键的组织上采用了层次化的空间结构,用户指定的key可以为单独的名字,比如“testkey”,那么实际存放的位置在根目录“/”下,也可以自己指明路径,如 ./etcdctl set /testdir/testkey "Hello",那么会创建指定的目录路径
>./etcdctl ls #查看结构
1.set key value: 创建并设置key:value
2.get key: 查看key所对应的value ,若key不存在,则返回错误信息:Error:100: Key not found (***) [8]
3.update key new_value: 更新一个已经存在的key所对应的value
4.rm key: 删除某个key以及所对应的value。若删除不存在的key也会报错
5.mk key value: 如果key:value不存在,则创建key:value;如果key:value存在,那么会返回报错信息:Error:105: Key already exists (***) [8]
6.mkdir directory: 如果给定的键目录不存在,则创建一个新的键目录;如果存在则会返回报错信息:Error:105: Key already exists (***) [8]
7.setdir directory: 不管目录存在与否都会创建目录
8.rmdir directory: 删除目录或者key:value
9.ls : 显示所有目录,默认不显示子目录。使用ls --recursive 显示所有目录(包含子目录)
非数据库操作: 1.backup: --data-dir etcd数据目录 --backup-dir 备份的指定路径 (但是我不会使用它,新建了目录,但是就是返回说找不到目录或文件)
2.watch: 监测一个键值的变化,一旦键值发生更新就会输出最新的值并退出 --forver参数代表一直监测,直到用户输入ctrl+c退出
3.exec-watch: 监测一个键值的变化,并在发生变化的时候执行指定操作指令
4.member: 通过 list、add、remove 命令列出、添加、删除 etcd 实例到 etcd 集群中。例如:> ./etcdctl member list
Fig项目: 1.安装fig:
>curl -L https://github.com/docker/fig/releases/download/1.0.0/fig-`uname -s`-`uname -m` > /usr/bin/fig; chmod +x /usr/bin/fig >fig --version