本系列

这个系列会介绍从 0 到 1 搭建一个 Web Application 的 Server. 间中还会带上一些真实开发常用的功能.

一共 6 篇

1. Virtual Machine (VM) 和 SQL Server

2. Backup & Recovery Disaster <-- 你在这里

3. Publish Web Application to VM (IIS, HTTPS)

4. Azure Key Vault

5. Azure Storage (with custom domain)

6. Computer Vision (smart-cropped thumbnails, OCR)

参考:

Disaster Recovery in Microsoft Azure (Youtube)

Backup 和 Disaster Recovery 的区别

参考: Azure Backup和Azure Site Recovery的区别是什么

其实区别不是很大.

Backup 通常是指 backup 数据, 确保发生意外 (人为删除, 天灾) 时, 有能力回复任何时间点上的数据.

Disaster Recovery 通常时指在灾难的时候 (server down) 之后可以立马启动备份方案, 让业务保持 uptime.

VM Backup

要备份 VM 我们就需要跟 Azure 买 Backup 服务和 DIsk.

为了确保万无一失, 我们应该把备份存到不同的 Region, 而不是都放到同一个 data center 里.

Azure 有 4 种 replication redundancy 方案可供我们选择:

Locally redundant storage (LRS)

最便宜的, 在 1 个 data center 里面备份 3 个 copy, 如果只是 hardisk 坏掉这种情况是可以保障的, 但如果是整个 data center 火灾之类的, 那就保障不到了.

Zone-redundant storage (ZRS)

把备份存放到不同的 zone

Geo-redundant storage (GRS)

这个是 Azure 推荐的方案, 在 2 个 region 里面分别用 LRS 来备份

Geo-zone-redundant storage (GZRS)

最高级, 在 2 个 region 里面, 第一个采用 ZRS 方案, 第二个采用 LRS 方案.

我选的是推荐的 Geo-redundant storage (GRS).

具体操作

参考: 将 Azure VM 备份到恢复服务保管库中

去 Backup center

创建 Recovery Services vault (RSV), 它是一个 Backup 和 Disaster recovery 的管理服务.

Region 必须和 VM 相同, 才能保护到 VM

RSV 默认的 replication 是 Geo-redundant storage (GRS), 可以通过 Properties > Backup Configuration > Storage replication type 更换

接下来我们就可以创建 VM Backup 了

然后选择 Virtual Machine

创建 Policy, 配置时间其它的默认, 选 VM

OS Disk only 意味着不备份 SQL Data disk. 如果 SQL Backup 是选择 RSV 的 SQL Server in Azure VM 方案的话, 这里可以选只 Backup OS DIsk.

创建好 Backup 后, 可以在 Backup Items 里面看见

可以点进去, 进行 Backup 和 Restore. 操作太简单我就不介绍了.

Restore 的时候一般是选择 Replce 当前 VM 然后 VM 必须要 shutdown. 一般上 backup vm 过程会需要 1 小时 (哎哟,很慢一下)

SQL Server in VM Backup

SQL Backup 也是用 RSV 来管理, 创建 Backup 的时候选 SQL Server in Azure VM 就可以了.

它和常见的 SQL Backup 是一样的, Full backup, differential backup, log backup. 可以参考 SQL Server 备份方案

值得注意的是 SQL Backup 挺贵的,

VM 的 Backup 价格是

SQL 的 Backup 价格是

我的项目小, 预算低, 所以我的做法是自己做 SQL Backup 储存到 VM disk, 然后依靠 VM Backup 来解决简介实现 SQL Backup.

Disaster Recovery

参考:

为 Azure VM 设置灾难恢复

Question and Answer

也是用 RSV 管理. 去 SIte Recovery > Enable replication

Source location 选和 VM 同一个 Region, 区别我也不太清楚, 只知道一个 zone 挂掉, 还可以恢复 uptime, 一个 region 挂掉, 那 VM 就跟着 down 了.

然后 step 2 选 VM

step 3 默认就可以了, 我只改了一致性的时间, 本来是 4 hours 最低为 1 hour, 我也不是很懂这个, 视乎和 SQL 的 differentail 和 log 类似, 可以参考这里

submit 这样就可以了.

删除 RSV

RSV 删除并不是 1 click 的事情.

参考: 删除 Azure 备份恢复服务保管库

首先是去 Backup items 把所有的 Items 都 stop backup

然后去 Properties > Security Settings > disable soft delete (不然所有 deleted data 都会保留 14 days)

然后删除所有的 backup data

然后去 Backup Infrastructure > Workload in Azure VM > unregister

然后就可以去 delete RSV 了.

Azure 入门系列 (第二篇 Backup 和 Disaster Recovery)的更多相关文章

  1. 前端工程师技能之photoshop巧用系列第二篇——测量篇

    × 目录 [1]测量信息 [2]实战 [3]注意事项 前面的话 前端工程师使用photoshop进行的大量工作实际上是测量.本文是photoshop巧用系列第二篇——测量篇 测量信息 在网页制作中需要 ...

  2. 深入理解javascript函数系列第二篇——函数参数

    × 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...

  3. 深入理解javascript作用域系列第二篇——词法作用域和动态作用域

    × 目录 [1]词法 [2]动态 前面的话 大多数时候,我们对作用域产生混乱的主要原因是分不清楚应该按照函数位置的嵌套顺序,还是按照函数的调用顺序进行变量查找.再加上this机制的干扰,使得变量查找极 ...

  4. Windows Azure 入门系列课程Windows Azure 入门系列课程

    Windows Azure 入门系列课程 https://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/NewSeries/A ...

  5. 微软云平台windows azure入门系列八课程

    微软云平台windows azure入门系列八课程: Windows Azure入门教学系列 (一): 创建第一个WebRole程序与部署 Windows Azure入门教学系列 (二): 创建第一个 ...

  6. 深入理解javascript作用域系列第二篇

    前面的话 大多数时候,我们对作用域产生混乱的主要原因是分不清楚应该按照函数位置的嵌套顺序,还是按照函数的调用顺序进行变量查找.再加上this机制的干扰,使得变量查找极易出错.这实际上是由两种作用域工作 ...

  7. Entity Framework 6.0 入门系列 第一篇

    Entity Framework 6.0 入门系列 第一篇 好几年前接触过一些ef感觉不是很好用,废弃.但是 Entity Framework 6.0是经过几个版本优化过的产物,性能和功能不断完善,开 ...

  8. 深入理解javascript对象系列第二篇——属性操作

    × 目录 [1]查询 [2]设置 [3]删除[4]继承 前面的话 对于对象来说,属性操作是绕不开的话题.类似于“增删改查”的基本操作,属性操作分为属性查询.属性设置.属性删除,还包括属性继承.本文是对 ...

  9. [ 高并发]Java高并发编程系列第二篇--线程同步

    高并发,听起来高大上的一个词汇,在身处于互联网潮的社会大趋势下,高并发赋予了更多的传奇色彩.首先,我们可以看到很多招聘中,会提到有高并发项目者优先.高并发,意味着,你的前雇主,有很大的业务层面的需求, ...

  10. 【转载】Android Metro风格的Launcher开发系列第二篇

    前言: 各位小伙伴们请原谅我隔了这么久才开始写这一系列的第二篇博客,没办法忙新产品发布,好了废话不说了,先回顾一下:在我的上一篇博客Android Metro风格的Launcher开发系列第一篇写了如 ...

随机推荐

  1. [oeasy]python0123_中文字符_文字编码_gb2312_激光照排技术_王选

    中文编码GB2312 回忆上次内容 上次回顾了 日韩各有 编码格式 日本 有假名 五十音 一字节 可以勉强放下   有日本汉字 字符数量超过20000+     韩国 有谚文 数量超过500 一个字节 ...

  2. 记一次 redis 事件注册不当导致的内存泄露

    线上的程序跑着跑着内存越来越大,并且没有下降的趋势,重启一下程序也只能短暂恢复.通过 htop 命令再按一下 M 键按内存占用大小排个序,程序会占好几个G.那好,让我们来分析一下. 收集dump 通过 ...

  3. 【JavaScript高级01】JavaScript基础深入

    1,数据类型 JavaScript将数据分为六大类型,分别为数值类型(number).字符串类型(string).布尔类型(boolean).undefined(定义未赋值).null(赋值为空值). ...

  4. CF 1927

    G link 定义\({{dp_i}_j}_k\)为考虑完第i个点,最左边没有染色的点为\(j\),最右边没有染色的点为\(k\)的最小数量. 考虑转移(用自己更新别人) 如果不用\(i\),直接转移 ...

  5. 用IO多路复用实现 nginx 静态资源代理(C/Java/Golang)

    用IO多路复用实现 nginx 静态资源代理(C/Java/Golang) 效果展示 代理 HTML 代理图片 注意, 静态资源代理基于 HTTP, 可以了解上一篇文章: 几十行代码使用TCP简单实现 ...

  6. Zabbix 5.0 LTS 配置企业微信(Webhook)自动发送告警信息

    依据前面文章<Zabbix 5.0 LTS URL 健康监测>环境,实现企业微信(Webhook)自动发送告警信息. 一.创建企业微信机器人 先在自己的企业微信群里创建一个机器人,并获取其 ...

  7. 【Mybatis】12 复杂关联查询

    一对多 & 多对一 关联查询 数据库准备: 一个班级表,字段:班级ID + 班级名称 一个学生表,字段:学生ID + 学生姓名 + 所属的班级ID # 班级表 班级ID+班级名称 CREATE ...

  8. 中国特供阉割版4090D建议安装最新驱动,据说不然的话会报error:4090和4090D对比

    资料来源: https://www.bilibili.com/video/BV1oa4y127fG/?spm_id_from=333.999.0.0&vd_source=f1d0f27367a ...

  9. Python 环境傻瓜式搭建 :Anaconda概述

    Anaconda概述 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存.切 ...

  10. 在python项目的docker镜像里使用pdm管理依赖

    前言 在 DjangoStarter 项目中,我已经使用 pdm 作为默认的包管理器,不再直接使用 pip 所以部署的时候 dockerfile 和 docker-compose 配置也得修改一下. ...