然后将Etcd数据恢复到新的集群的任意一个节点上, 使用--force-new-cluster参数启动Etcd服务。这个参数会重置集群ID和集群的所有成员信息,其中节点的监听地址会被重置为localhost:2379, 表示集群中只有一个节点。 $ tar -zxvf backup.etcd.tar.gz-C /var/lib/etcd $ etcd --data-dir=/var/lib/etcd --force-...
--force-new-cluster 'false' force to create a new one-member cluster. 加载参数后,集群变成一个节点的了。 然后去掉 --force-new-cluster 。从起etcd 。添加节点。系统恢复。
—initial-cluster-state 初始化集群状态(“new” or “existing”)。在初始化静态(initial static)或者 DNS 启动 (DNS bootstrapping) 期间为所有成员设置为new。如果这个选项被设置为existing, etcd 将试图加入已有的集群。如果设置为错误的值,etcd 将尝试启动但安全失败。 默认: “new” 环境变量: ETCD_INITIAL...
这就带来了一个很严峻的问题:只要新加入的节点配置上出了点什么差错,整个集群的容错能力就会减 1。这时你只能通过etcd --force-new-cluster命令来重新创建集群。 但etcd 可是Kubernetes集群至关重要的组件啊,即使是最轻微的中断也可能会对用户的生产环境产生重大影响。怎样才能使成员变更的操作更安全呢?相对于其他方面...
# Force to create a new one member cluster. force-new-cluster: false auto-compaction-mode: periodic auto-compaction-retention: "1" 二 配置项解析 2.1 成员相关标识 --name 含义:此成员的名称。 默认值:default 环境变量:ETCD_NAME 作用:此配置值作为此节点在--initial-cluster标志中列出的条目(例如,de...
此时你需要进行两步操作。 备份原有数据到新机器。 使用-force-new-cluster加备份的数据重新启动节点注意:强制性重启是一个迫不得已的选择,它会破坏一致性协议保证的安全性(如果操作时集群中尚有其它节点在正常工作,就会出错),所以在操作前请务必要保存好数据。
Cluster:由多个Member构成可以协同工作的etcd集群。 Peer:对同一个etcd集群中另外一个Member的称呼。 Client: 向etcd集群发送HTTP请求的客户端。 WAL:预写式日志,etcd用于持久化存储的日志格式。 snapshot:etcd防止WAL文件过多而设置的快照,存储etcd数据状态。
_CLIENT_CERT_AUTH="false"#ETCD_PEER_TRUSTED_CA_FILE=""#ETCD_PEER_AUTO_TLS="false"##[Logging]#ETCD_DEBUG="false"#ETCD_LOG_PACKAGE_LEVELS=""#ETCD_LOG_OUTPUT="default"##[Unsafe]#ETCD_FORCE_NEW_CLUSTER="false"##[Version]#ETCD_VERSION="false"#ETCD_AUTO_COMPACTION_RETENTION="0"##[...
_CLIENT_CERT_AUTH="false"#ETCD_PEER_TRUSTED_CA_FILE=""#ETCD_PEER_AUTO_TLS="false"##[Logging]#ETCD_DEBUG="false"#ETCD_LOG_PACKAGE_LEVELS=""#ETCD_LOG_OUTPUT="default"##[Unsafe]#ETCD_FORCE_NEW_CLUSTER="false"##[Version]#ETCD_VERSION="false"#ETCD_AUTO_COMPACTION_RETENTION="0"##[...
查看引用发现是在NewServer时调用的,再根据配置创建一个新的etcd server,当然,如果根据系统配置的快照目录存在,则对快照进行恢复,并关闭老的snapshot数据库(restart a node), Save则是在当wal存在(restart) 时且系统配置为强制创建新集群时cfg.ForceNewCluster调用 ...