问题描述

在Azure门户中,误删除API Management资源后,怎么办?

问题解答

遇见误删除的第一反应就是:

进一步查看APIM软删除的资料,发现可以实现恢复在48小时以内的被删除的资源。

软删除行为 : https://docs.azure.cn/zh-cn/api-management/soft-delete#soft-delete-behavior

如果 Azure 门户、Azure REST API 或其他 Azure 工具使用 API 2020-06-01-preview 版本或更高版本,则在借助上述方式删除 API Management 实例时,系统会自动实施软删除。

在删除 API 管理实例时,该服务将处于已删除状态,任何正常的 API 管理操作都无法访问该服务。

在软删除状态下:

  1. 只能列出、恢复或清除(永久删除)API 管理实例。
  2. 在经过预先确定的保留期(48 小时)后,Azure 将指派系统永久删除 API 管理实例所对应的底层数据。
  3. 不能重复使用 API 管理实例的名称。
  4. 如果未在 48 小时内恢复或清除 API 管理实例,则系统会自动将其永久删除。

这是一个巨大的好消息。经过验证,成功恢复被删除的资源。在四年一次的2月29日(闰年)特地记录恢复的步骤:

1) 调用 " 列出已删除的 API 管理实例" 接口,查看被删除APIM资源的信息

## 使用 API 管理按订阅列出操作,将 {subscriptionId} 替换为你的订阅 ID:
GET https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/deletedservices?api-version=2021-08-01

## 使用 API 管理按名称获取操作,将 {subscriptionId}、{location} 和 {serviceName} 替换为你的 Azure 订阅、资源位置名称和 API 管理实例名称:

GET https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/providers/Microsoft.ApiManagement/locations/{location}/deletedservices/{serviceName}?api-version=2021-08-01

* 注:1,2步骤中的请求都需要获取Authorization Token,临时获取方式为 “在Azure APIM门户页面,通过F12(浏览器开发者工具), 查看Network中的请求,从任何一个请求中获取Authorzation Bearer Token即可”。

 

2) 调用“恢复软删除的实例 ” 接口,设置 restore 属性设置为 true

##  使用 API 管理更新PUT操作,将 {subscriptionId}、{resourceGroup} 和 {apimServiceName} 替换为你的 Azure 订阅、资源组名称和 API 管理名称:

PUT
https://management.chinacloudapi.cn/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ApiManagement/service/{apimServiceName}?api-version=2021-08-01

##Body JSON格式内容:

{
"properties": {
"restore": true
},
"location": "China North 3"
}

* 注:如果Body中缺少location参数,请求会返回错误提示:"error": {"code": "LocationRequired","message": "The location property is required for this definition."}

3) PUT接口发送成功后,等待恢复完成的时间大约在45分钟 ~ 1小时之间。

在恢复期间,APIM的状态显示为:Activating (Service is being activated ... )

误删除后的恢复APIM动画演示:

附录:在Azure APIM页面中的一键恢复 (Recover deleted API Management service)

 

参考资料

Azure API 管理软删除 :  https://docs.azure.cn/zh-cn/api-management/soft-delete#soft-delete-behavior

【END】

【Azure APIM】验证APIM删除后的恢复步骤的更多相关文章

  1. InnoDB数据库 ibdata1 被删除后 的恢复方法

    前提条件:1  ibdata1 被删除 2  数据库文件还存在  特别是 ibd文件 3  原来数据库表结构及索引还在 恢复步骤: 1. 将原来的数据文件COPY到其它目录下. 2. 创建同名表,表结 ...

  2. sql数据库delete删除后怎么恢复,这是网上找的答案。。希望大神验证指教一下

    使用Log Explorer查看和恢复数据 Log Explorer 4.1.可用于SQL Server2005的日志查看工具 下载地址: http://download.csdn.net/sourc ...

  3. WIN7电脑文件莫名其妙被删除后的恢复

    今天早上打开电脑,发现电脑F盘下的WINCE600文件夹下有剩下一小部分文件,绝大部分文件都找不到了,但是我记得自己没有删除过,而且在回收站也没有找到这些被删除的文件,怎恢复呢,今天尝试使用Recov ...

  4. Linux残留的EFI启动项删除后又恢复的问题

    电脑Windows + Fedora双系统,UEFI启动,共用同一个EFI分区.现在删除了Fedora系统,那么应该将EFI分区中的Fedora启动项也删除之. 按照网上的办法,在Windows上,尝 ...

  5. ALM损坏后的恢复步骤

    ALM是HP出品的软件开发生命周期软件,其全称是Application Lifecycle Management,其采用B/S结构,从需求,业务模型到测试用例和缺陷管理亦应具有,满足了一般软件企业对开 ...

  6. ovirt系统磁盘删除后清理功能验证步骤

    测试步骤主要是针对ovirt系统磁盘的‘删除后清理’功能,如下图所示: 测试如下两种方式: 预置条件: 搭建iscsi服务器,且划分一个11G的盘 勾选删除后清理操作步骤:1 .在linux虚拟机 d ...

  7. Linux下误删除后的恢复操作(ext3/ext4)

    Linux是作为一个多用户.多任务的操作系统,文件一旦被删除是难以恢复的.尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是其他用户和一些有写盘动作的进程会很快覆盖这些数据.在日常工程 ...

  8. MySQL数据库的自动备份与数据库被破坏后的恢复(3)

    [2] 当数据库被修改后的恢复方法 数据库被修改,可能存在着多方面的原因,被入侵.以及相应程序存在Bug等等,这里不作详细介绍.这里将只介绍在数据库被修改后,如果恢复到被修改前状态的方法. 具体和上面 ...

  9. MySQL数据库的自动备份与数据库被破坏后的恢复(2)

    测试自动备份正常运转与否(备份恢复的方法) 这里,以通过实际操作的过程来介绍问题出现后的恢复方法. [1] 当数据库被删除后的恢复方法 首先建立一个测试用的数据库. [root@CentOS ~]# ...

  10. 【MySQL】InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

    参考:http://my.oschina.net/sansom/blog/179116 参考:http://www.jb51.net/article/43282.htm 注意!此方法只适用于innod ...

随机推荐

  1. 微软Windows Sever系统也将强制要求TPM及CPU兼容

    https://www.cnbeta.com/articles/tech/1238647.htm 去年微软推出Win11系统时,TPM安全模块以及Intel 8代酷睿/AMD锐龙2代及以上的硬件要求引 ...

  2. MySQL备份恢复简单处理方法

    客户备份恢复的脚本处理简要如下: 首先登陆mysql服务器 方法如下: mysql -uroot -p 输入密码即可登陆 然后需要创建一个数据库, 个人感觉同名恢复最容易出问题 create data ...

  3. elementUI封装 el-dialog

    讲解 // 讲解: @close="$emit('update:show1', false)"是子组件跟新父组件中的某值show1,将值变为false // :visible.sy ...

  4. 开源项目02-OSharp

    项目名称:OSharp 项目所用技术栈: osharp netstandard aspnetcore osharpns ng-alain angular等 项目简介: OSharp是一个基于.NetC ...

  5. go中异常处理流程

    在 Go 语言中,panic.recover 和 defer 是用于处理异常情况的关键字.它们通常一起使用来实现对程序错误的处理和恢复. 1. defer 语句 defer 用于在函数返回之前执行一段 ...

  6. TienChin-课程管理-课程导出

    更改 Course.java: /** * 课程ID */ @TableId(value = "course_id", type = IdType.AUTO) @NotNull(m ...

  7. 1.10 内存ShellCode注入与格式化

    ShellCode 的格式化与注入功能在实战应用中也尤为重要,格式化Shellcode是指将其转换为可执行的二进制格式,使其能够在内存中运行.注入Shellcode是指将格式化的Shellcode注入 ...

  8. iOS 常用命令行工具总结

    平时工作中会经常用到命令行工具Command Lines Tool.而Command Line Tool本质是一个命令行工具包,内部有很多有用的工具,如Apple LLVM compiler.Make ...

  9. Load-balanced-online-OJ-system 负载均衡的OJ系统项目

    前言 那么这里博主先安利一些干货满满的专栏了! 首先是博主的高质量博客的汇总,这个专栏里面的博客,都是博主最最用心写的一部分,干货满满,希望对大家有帮助. 高质量博客汇总 本项目Github地址 - ...

  10. 小知识:RMAN备份当前控制文件报错ORA-245

    在一个备份的case上遇到备份控制文件报错ORA-245,最终通过修改snapshot controlfile默认位置到ASM磁盘组后解决. 1.问题复现 回来后就想快速记录下这个小知识点,打开尘封的 ...