灾备技术
灾备包含两个概念:容灾、备份
备份是为了保证数据的完整性,数据不丢失。全量备份、增量备份,备份数据还原。
容灾是为了保证业务的连续性,尽可能不断业务。
快照:保存的不是底层块数据,保存的是逻辑数据(状态索引数据)。未来还原快照的速度相对于还原备份文件来说,比较快。
逻辑错误:有意或无意的删除了某文件、某数据、更新错了等类似于这种,就可以通过快照来进行快速的恢复。
物理错误:由于介质损坏导致的物理错误,磁盘坏道了等,这时候快照是无能为力的。只能靠备份文件来解决(物理备份:直接备份底层数据块)
容灾架构
1、本地高可用
同一个数据中心里面,使用两套或者多套系统来构建高可用HA (High Availability),可以是多个层面,操作系统层面/数据库层面/应用层面,下面以数据库层面为例:
2、双活
华为体系,双活特指的是存储双活,一般都在距离不远的地方,比如同城,小于100km
3、主备容灾(同城/异地)
4、两地三中心
云备份(云服务器备份),类似eBackup
华为自己的备份软件BCManager eBackup,华为自己的容灾软件BCManager eReplication。
云服务器备份和云硬盘备份流程完全一样。云服务器备份和云硬盘备份,他们的实质是一样的。因为云服务器的构成,就是由云硬盘构成的。ECS001(默认有个系统盘EVS,EVS就是云硬盘),所以在备份云服务器ECS001的时候,实质就是备份了系统盘,只不过云服务器可能会挂载多个云硬盘(1,2,3),那么在针对云服务器备份的时候,默认会把(1,2,3)ECS对应的所有磁盘全部备份,当然也可以手工选择单独备份哪个硬盘。
1、创建一个ECS弹性云服务器
2、购买云服务器存储库
注意:华为备份是这样的,第一次备份全部是“全量备份”,从第二次开始及以后备份,默认全部都是“增量备份”。
什么叫全量:完全备份,每一次都对所有数据进行备份。
什么叫增量:默认第一次全备,第二次开始只备份上一次备份以来发生变化的(快照对比)
3、创建备份策略
4、执行第一次备份(全备),注意:第一次为全备
之后,再次新增数据,在服务器创建文件touch 666.txt
5、执行第二次备份(增备)
增备,只备份发生变化的数据(666.txt),已备份的数据进行引用。
现在的情况:有一台ECS(系统盘),而且有两个备份文件,1个全备,1个增备。
假设把ECS干掉,把全备干掉,只留一个增备。
通过这一个增备文件是否可以把数据找回来?答案是可以的。
6、尝试还原
把ECS删除了,所以没有办法直接去恢复数据,只能通过备份文件创建一个镜像,再通过镜像去创建ECS。
容灾(存储容灾服务SDRS),类似eReplication
存储容灾服务SDRS(Storage Disaster Recovery Service)
公有云上的SDRS不能跨region容灾的。
1、创建ECS
2、为ECS创建保护组
3、创建保护实例
4、开启保护(开启同步)
ECS容灾服务搭建好了。如何证明?
查看生产端数据
5、容灾演练
它会通过灾备端(目前处于关机状态的ecs),创建一台临时的ECS,用来测试证明容灾环境搭建好了。
删除容灾演练
ECS会随着自动删除
6、了解容灾两个切换概念
主备架构容灾,一般在核心业务场景,会定期进行测试演练,这是很有必要的。
对于这种演练,它是一种主动机制,通过主动触发主备切换/主备倒换,这种切换方式称之为switchover(生产站点和灾备站点都是正常的情况下)
一旦出现了生产站点损坏或者起不来,被迫不得不进行主备切换/主备倒换,这种切换方式称之为failover(生产站点已经损坏的情况下被动进行的切换)
7、切换switchover
切换switchover之前,保护组内的所有ECS都必须要关闭。
8、切换failover
9、重保护(重新开启同步)
重保护就是重新开启同步的意思,如果灾备端(源主端)没有修复好,不要点,修复好了,再点。
10、停止保护(停止同步)
WAF网站应用防火墙
1、安装dvwa
DVWA:Damn Vulnerable Web Application (DVWA) 易受攻击的一个web应用程序,它是基于php和mysql开发的。是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程。
1.创建一台ECS
2.安装好docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce
systemctl start docker
systemctl enable docker
3.拉取dvwa镜像
docker pull registry.cn-hangzhou.aliyuncs.com/cloudcs/dvwa:latest
4.创建容器
docker run -d -p 8080:80 registry.cn-hangzhou.aliyuncs.com/cloudcs/dvwa:latest
5.登录
为ECS绑定公网,进行登录。
公有云上创建的容器,要看安全组8080有没有放行。
6.初始化/重建数据库
7.登录