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程序中,以提高性能。这对于计算密集型任务特别…...
【杂谈】-递归进化:人工智能的自我改进与监管挑战
递归进化:人工智能的自我改进与监管挑战 文章目录 递归进化:人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管?3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
【笔记】WSL 中 Rust 安装与测试完整记录
#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统:Ubuntu 24.04 LTS (WSL2)架构:x86_64 (GNU/Linux)Rust 版本:rustc 1.87.0 (2025-05-09)Cargo 版本:cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
【阅读笔记】MemOS: 大语言模型内存增强生成操作系统
核心速览 研究背景 研究问题:这篇文章要解决的问题是当前大型语言模型(LLMs)在处理内存方面的局限性。LLMs虽然在语言感知和生成方面表现出色,但缺乏统一的、结构化的内存架构。现有的方法如检索增强生成(RA…...
