修改网站dns,比百度好用的搜索软件手机版,深圳网站建设汤小巧,淘宝网的网站建设1 查看是否开启权限认证 ctl auth status
2 开启权限认证 ctl auth enable。开启后每一条命令都要加上用户 --userroot:root(root默认最高权限)
3 创建其他用户 ctl user add user1 --user用户名:密码
4 创建角色 ctl role add testR --user
5 为角色添加权限 ctl role g…1 查看是否开启权限认证 ctl auth status
2 开启权限认证 ctl auth enable。开启后每一条命令都要加上用户 --userroot:root(root默认最高权限)
3 创建其他用户 ctl user add user1 --user用户名:密码
4 创建角色 ctl role add testR --user
5 为角色添加权限 ctl role grant-permission testR read key --userroot:root 为testR角色添加了对key资源读的权限
6为指定用户授予权限的功能 ctl user grant-role bowen testR --userroot:root
7 使用用户具有的权限操作读取资源key 成功 ctl get key --userbowen:123
8 使用用户的权限 操作写入资源key失败无权限ctl put key testR角色授予bowen用户为key键只读操作 --userbowen:123
9 使用root持有的读写角色tset权限操作资源key成功 ctl put key test角色授予root用户为key键只读操作 --userroot:root root具有读写权限同时即便授予的权限不上指定的资源keyront的用户同样可以操作其他用户不具有。
etcd请求流程关注点预写日志读从节点数据一致性保证commitId号比对多版本控制mvcc
以及实现原理treeindex数据持久实现borldb的底层结构 btree 另外加有buff 命中不查询数据库 etcd在k8s中的运用 etcd同步机制
grpc 负责将请求转发给raft模块raft负责 选举数据同步预写日志操作当需要写请求时主节点会提案将要写入的数据写入预写日志中并发送给从节点写入同步的日志当多半节点完成日志的写入主节点会提交提案生成commitId主节点如何通过日志来保持各个节点的数据一致性主要是在预写日志阶段通过nextInde索引发给从节点同步日志通过matchindex来跟踪从节点的日志写入情况当大多数停留在matchindex索引的同步日志点主节点就会把数据提交到持久层持久层通过mvcc版本控制实现数据的一致性存储通过treeindex的btree存储key和对应的版本号通过boltdb将key-version的形式为key存储在btree数据库中查找时先查找key的索引版本树得到历史版本最新版本通过key-version查找buffer缓冲缓冲没有再查找boltdb的b树找到值并换回再raft模块中如果主节点挂了在其他从节点中选举选举规则任期大的有投票权优先相同任期中根据预写的日志索引大小优先从同步多的预写日志优先停机开机之后会继续同步预写日志不丢失数据。 etcd在k8s工作的流程 负责存储集群运行的状态信息如资源类型pod、configMap、密钥、