HCIE-灾备技术和安全服务
灾备技术
灾备包含两个概念:容灾、备份
备份是为了保证数据的完整性,数据不丢失。全量备份、增量备份,备份数据还原。
容灾是为了保证业务的连续性,尽可能不断业务。
快照:保存的不是底层块数据,保存的是逻辑数据(状态索引数据)。未来还原快照的速度相对于还原备份文件来说,比较快。
逻辑错误:有意或无意的删除了某文件、某数据、更新错了等类似于这种,就可以通过快照来进行快速的恢复。
物理错误:由于介质损坏导致的物理错误,磁盘坏道了等,这时候快照是无能为力的。只能靠备份文件来解决(物理备份:直接备份底层数据块)
容灾架构
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.登录
相关文章:
HCIE-灾备技术和安全服务
灾备技术 灾备包含两个概念:容灾、备份 备份是为了保证数据的完整性,数据不丢失。全量备份、增量备份,备份数据还原。 容灾是为了保证业务的连续性,尽可能不断业务。 快照:保存的不是底层块数据,保存的是逻…...
【图论实战】Boost学习 01:基本操作
文章目录 头文件图的构建图的可视化基本操作 头文件 #include <boost/graph/adjacency_list.hpp> #include <boost/graph/graphviz.hpp> #include <boost/graph/properties.hpp> #include <boost/property_map/property_map.hpp> #include <boost/…...
Rust 中的引用与借用
目录 1、引用与借用 1.1 可变引用 1.2 悬垂引用 1.3 引用的规则 2、slice 类型 2.1 字符串字面量其实就是一个slice 2.2 总结 1、引用与借用 在之前我们将String 类型的值返回给调用函数,这样会导致这个String会被移动到函数中,这样在原来的作用域…...
Azure 机器学习:在 Azure 机器学习中使用 Azure OpenAI 模型
目录 一、环境准备二、Azure 机器学习中的 OpenAI 模型是什么?三、在机器学习中访问 Azure OpenAI 模型连接到 Azure OpenAI部署 Azure OpenAI 模型 四、使用自己的训练数据微调 Azure OpenAI 模型使用工作室微调微调设置训练数据自定义微调参数部署微调的模型 使用…...
XML Web 服务 Eclipse实现中的sun-jaxws.xml文件
说明 在sun-jaxws.xml文件,可以配置endpoint、handler-chain等内容。在这个文件中配置的内容会覆盖在Java代码中使用注解属性配置的的内容。 这个文件根据自己的项目内容修改完成以后,作为web应用的一部分部署到web容器中(放到web应用的WEB…...
16.1 二次根式 教学设计及课堂检测设计
课堂检测如下:...
Android数据流的狂欢:Channel与Flow
在 Android 应用程序的开发中,处理异步数据流是一个常见的需求。为了更好地应对这些需求,Kotlin 协程引入了 Channel 和 Flow,它们提供了强大的工具来处理数据流,实现生产者-消费者模式,以及构建响应式应用程序。 本文…...
Java 单元测试最佳实践:如何充分利用测试自动化
单元测试是众所周知的做法,但还有很大的改进空间!在这篇文章中,我们讨论最有效的单元测试最佳实践,包括在此过程中最大化自动化工具的方法。我们还将讨论代码覆盖率、模拟依赖关系和整体测试策略。 什么是单元测试? 单…...
windows系统用于 SDN 的软件负载均衡器 (SLB)
适用于:Azure Stack HCI 版本 22H2 和 21H2;Windows Server 2022、Windows Server 2019、Windows Server 2016 软件负载均衡器包括哪些内容? 软件负载均衡器提供以下功能: 适用于北/南和东/西 TCP/UDP 流量的第 4 层 (L4) 负载均…...
漏洞复现--IP-guard flexpaper RCE
免责声明: 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…...
Electron-vue出现GET http://localhost:9080/__webpack_hmr net::ERR_ABORTED解决方案
GET http://localhost:9080/__webpack_hmr net::ERR_ABORTED解决方案 使用版本解决方案解决总结 使用版本 以下是我解决此问题时使用的electron和vue等的一些版本信息 【附】经过测试 electron 的版本为 13.1.4 时也能解决 解决方案 将项目下的 .electron-vue/dev-runner.js…...
Linux---(六)自动化构建工具 make/Makefile
文章目录 一、make/Makefile二、快速查看(1)建立Makefile文件(2)编辑Makefile文件(3)解释(4)效果展示 三、背后的基本知识、原理(1)如何清理对应的临时文件呢…...
谷歌:编写干净的代码以减少认知负荷
您是否曾经阅读过代码却发现很难理解?您可能正在经历认知负荷! 认知负荷是指完成一项任务所需的脑力劳动量。阅读代码时,您必须记住变量值、条件逻辑、循环索引、数据结构状态和接口契约等信息。随着代码变得更加复杂,认知负荷也…...
微信小程序display常用属性和子元素排列方式介绍
wxss中display常用显示属性与css一致,介绍如下: 针对元素本身显示的属性: displayblock,元素显示换行displayinline,元素显示换行,但不可设置固定的宽度和高度,也不可设置上下方向的margin和p…...
设计模式—结构型模式之代理模式
设计模式—结构型模式之代理模式 代理模式(Proxy Pattern) ,给某一个对象提供一个代理,并由代理对象控制对原对象的引用,对象结构型模式。 静态代理 比如我们有一个直播平台,提供了直播功能,但是如果不进行美颜,可能就比较冷清…...
C# PDF转HTML字符串
需要nuget安装Aspose.PDF插件,本文使用23.10.0版本 一、获取PDF文件,保存到某个路径;再读取返回字符串。 //html文件保存路径 string filePath dirPath "xxx.html"; if (!File.Exists(filePath)) {//获取pdf文件流Byte[] pdfBy…...
el-table解决数据过少小于高度有留白的问题
问题:给el-table设置个高度,高度为500px,之后就添加如下4条数据,那么底部就没数据,直接就空白了,本文章就是为了解决这个问题,如果底部留白那么就添加几条空数据就行了.如果数据已达到高度了那么就不会留白了 1.效果 这个空列可以根据高度来决定添加几个空格子去铺满列表&…...
vue实现无感刷新token
vue实现无感刷新token 1、前言2、实现思路2.1 方法一2.2 方法二2.3 方法三 3、可能遇到的问题3.1 问题一:如何防止多次刷新token3.2 问题二:同时发起两个或者两个以上的请求时,其他接口怎么解决 1、前言 最近在做vue3管理系统项目的时候&…...
竞赛选题 深度学习的动物识别
文章目录 0 前言1 背景2 算法原理2.1 动物识别方法概况2.2 常用的网络模型2.2.1 B-CNN2.2.2 SSD 3 SSD动物目标检测流程4 实现效果5 部分相关代码5.1 数据预处理5.2 构建卷积神经网络5.3 tensorflow计算图可视化5.4 网络模型训练5.5 对猫狗图像进行2分类 6 最后 0 前言 &#…...
Python高级语法----Python C扩展与性能优化
文章目录 1. 编写Python C扩展模块示例代码编译和运行运行结果2. 利用Cython优化性能示例代码编译和运行运行结果3. Python性能分析工具示例代码分析结果1. 编写Python C扩展模块 Python C扩展模块允许你将C语言代码集成到Python程序中,以提高性能。这对于计算密集型任务特别…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
基于uniapp+WebSocket实现聊天对话、消息监听、消息推送、聊天室等功能,多端兼容
基于 UniApp + WebSocket实现多端兼容的实时通讯系统,涵盖WebSocket连接建立、消息收发机制、多端兼容性配置、消息实时监听等功能,适配微信小程序、H5、Android、iOS等终端 目录 技术选型分析WebSocket协议优势UniApp跨平台特性WebSocket 基础实现连接管理消息收发连接…...
Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...
基于TurtleBot3在Gazebo地图实现机器人远程控制
1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...
Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...
