etcd集群数据备份和恢复

前面几篇笔记记录了etcd单机和集群,还有加密集群的部署方式,这篇就是etcd目前学习的最后一篇笔记,记录了etcd集群备份和恢复数据的方法,记录下来方便后面使用还是用之前TLS加密部署的集群,部署方式可以查看之前的笔记:https://sulao.cn/post/969.html首先我们写入数据etcdctl --cacert=/etc/etcd/pki/ca.pem --cert=/etc/etcd/pki/server.pem --key=/etc/etcd/pki/server-key.pem --endp...

阅读全文

centos7使用二进制部署TLS加密etcd集群

etcd支持通过TLS协议的加密通讯,在实际企业生产环境中,出于安全规范要求,建议开启TLS加密。TLS通道可以用于加密内部的集群通讯,也可以用于加密客户端请求。etcd的TLS有两对,一对是etcd和client端的TLS配置。一对是etcd之间的peer的TLS配置。有很多方式可以创建CA证书和私钥,其中比较流行的有两种opensslcfssl我们目前规划集群信息如下:192.168.1.76 etcd1192.168.1.77 etcd2192.168.1.79 etcd3官方文档推荐使用cfssl生成证书...

阅读全文

etcd集群异常节点重新加入集群

我们在使用etcd集群时会遇到某个节点异常无法启动,或者数据损坏的时候,这种情况需要将这个异常节点在etcd集群中剔除并重新加入该集群,具体操作如下。首先我们先去etcd集群找到这个异常节点并删除,假设我的异常节点为etcd3,ip地址为192.168.1.79etcdctl member list -w table#如果使用了tls加密集群需要增加证书相关参数#etcdctl --cacert="/etc/kubernetes/pki/etcd/ca.crt" --...

阅读全文

centos7二进制部署etcd集群

一般在生产环境下单机的etcd不满足高可用的需求,所以我们需要部署高可用的etcd集群,确保集群节点数N*2+1,etcd的raft协议可以保障各个节点数据的一致性。我们目前规划集群信息如下:192.168.1.76 etcd1192.168.1.77 etcd2192.168.1.79 etcd3然后就开始部署,部署方式基本和单机一致,主要是配置文件需要增加一些配置,配置启动可以查看笔记:https://sulao.cn/post/965.html在每个节点操作wget https://github.co...

阅读全文

centos7备份和恢复单机etcd数据

前面一篇我们已经学习了etcd的单机部署,具体可以查看这个笔记https://sulao.cn/post/965.html,这篇我们介绍下etcd数据备份与恢复,我们尝试先创建几条数据,备份,然后删除创建的数据,然后再恢复备份,查询这条被删除的数据。我们先简单创建条数据etcdctl put testdata "etcd test"OKetcdctl get testdatatestdataetcd test然后我们备份数据ETCDCTL_API=3...

阅读全文

centos7二进制部署单机etcd

etcd是云原生架构中重要的基础组件,由CNCF孵化托管。etcd在微服务和Kubernates集群中不仅可以作为服务注册与发现,还可以作为key-value存储的中间件。今天我们来记录下etcd的安装部署过程首先我们下载etcd包wget https://github.com/etcd-io/etcd/releases/download/v3.5.0/etcd-v3.5.0-linux-amd64.tar.gztar -zxf etcd-v3.5.0-linux-amd64.tar.gzmv&nbs...

阅读全文

MongoDB日志以及配置说明

MongoDB的日志可以完成的记录mongodb的健康状态和运行情况,有助于我们在出现故障的时候对MongoDB的故障进行有效的分析。在MongoDB4.4以前和以后的版本日志记录的格式是不一样的,4.4以前的格式是<timestamp> <severity> <component> [<context>] <message>例如:2014-11-03T18:28:32.450-0500 I NETWORK [initandl...

阅读全文

mongdb设置认证账户密码

首先我们登录mongodb./mongo然后选择adimn库use admin;db.createUser({  user: 'admin',  pwd: 'admin123',  roles:[{    role: 'root',    db: 'admin' &n...

阅读全文

mongodb查看集合占用空间情况

通常我们登录到mongodb以后使用show命令就能看到所有库的用量大小,但是使用db.getCollectionNames()只能获取到集合列表,我们想知道集合所占用空间大小可以使用如下命令tables = db.getCollectionNames();tables.forEach( function (item) {     stats=db.runCommand({collStats:item});   &...

阅读全文