最佳实践:计算巢服务如何创建快照策略并利用快照回滚云盘

简介: 计算巢是一款打通isv和客户的生态云产品,旨在解决isv云上售卖、交付、部署、运维问题,建立isv与客户的通道。为应需要对定期为云盘备份数据的场景,需要使用快照策略。本文介绍了在如何在一个计算巢服务中创建快照策略并应用于对应的云盘,以及如何利用快照回滚计算巢服务实例的云盘。

背景

什么是计算巢

计算巢是一款打通isv和客户的生态云产品,旨在解决isv云上售卖、交付、部署、运维问题,建立isv与客户的通道。
针对ISV的实际场景,计算巢提供了私有化部署、托管版部署两种模式。计算巢的服务对象有两种角色:服务商和用户。服务商是服务的提供方,维护服务的软件包、脚本、模板等;用户是服务的使用方,可以订阅、部署、使用计算巢上的服务。
image.png

什么是快照策略

在实践中经常出现这样一种场景:需要定期为云盘备份数据,以应对因误删、勒索病毒等造成的数据丢失或者应用系统故障。保证在需要时能够快速找回云盘数据以保证业务的连续性。为了应对这种场景,阿里云ecs提供了自动快照功能。自动快照功能通过自动快照策略实现,自动快照策略可以在预设的时间点周期性地创建快照,保护系统盘和数据盘的数据。
本文介绍了在如何在一个计算巢服务中创建快照策略并应用于对应的云盘,以及如何利用快照回滚计算巢服务实例的云盘。

具体操作

服务商侧

1、登录阿里云资源管理产品的控制台:云资源管理
在左侧“标签”栏选择“关联资源标签设置”,勾选“启用关联资源跟随标签编辑功能”,点击“启用并设置规则”
image.png
而后勾选“云服务器 云盘的关联资源”的“快照 全部标签”。
image.png
2、服务商进入计算巢控制台。创建服务新版本,在编辑页面找到:服务运维(选填),勾选“需要给用户授权”,并在“选择需要用户授予的权限”下拉列表选择:全部权限。
image.png
3、进入创建服务or编辑服务界面,编辑服务ros模板。下文附录1中提供了一个示例模板。示例模板中包含如何创建快照策略、如何将快照策略关联到对应云盘。此外,示例中创建的快照策略每天0点,一周七天为云盘创建快照,每个快照保留7天,可根据实际需要自行删改。
4、点击保存服务,提交审核,审批通过后点击服务上线。
至此,服务商侧改动完成。

用户侧

1、创建上文服务的服务实例并部署。
2、部署完成后,进入服务实例详情,点击运维管理 -> 应用运维 -> 使用快照恢复数据
image.png
3、利用快照回滚云盘
点击利用快照回滚云盘按钮进入编辑页
image.png
点击下一步,然后点击创建。等待执行完成。
image.png
点击详情,可进入下面的页面
image.png

附录:

附录1、利用ros模板创建快照策略并关联云盘(示例,ros模板)

ROSTemplateFormatVersion: '2015-09-01'
Description:
  zh-cn: 利用ros模板创建快照策略并关联云盘
Parameters:
  PayType:
    Type: String
    Label:
      en: ECS Instance Charge Type
      zh-cn: 付费类型
    Default: PostPaid
    AllowedValues:
      - PostPaid
      - PrePaid
    AssociationProperty: ChargeType
    AssociationPropertyMetadata:
      LocaleKey: InstanceChargeType
  PayPeriodUnit:
    Type: String
    Label:
      en: Pay Period Unit
      zh-cn: 购买资源时长周期
    Default: Month
    AllowedValues:
      - Month
      - Year
    AssociationProperty: PayPeriodUnit
    AssociationPropertyMetadata:
      Visible:
        Condition:
          Fn::Not:
            Fn::Equals:
              - ${PayType}
              - PostPaid
  PayPeriod:
    Type: Number
    Label:
      en: Period
      zh-cn: 购买资源时长
    Default: 1
    AllowedValues:
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
    AssociationProperty: PayPeriod
    AssociationPropertyMetadata:
      Visible:
        Condition:
          Fn::Not:
            Fn::Equals:
              - ${PayType}
              - PostPaid
  ZoneId:
    Type: String
    AssociationProperty: ALIYUN::ECS::Instance:ZoneId
    Label:
      en: Zone ID
      zh-cn: 可用区
  VpcId:
    Type: String
    Label:
      en: VPC Id
      zh-cn: 专有网络VPC id
    AssociationProperty: ALIYUN::ECS::VPC::VPCId
  VSwitchId:
    Type: String
    Label:
      en: VSwitch Id
      zh-cn: 交换机ID
    AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
      ZoneId: ${ZoneId}
  LoginPassword:
    NoEcho: true
    Type: String
    Description:
      en: 'Length 8-32 characters, can contain size letters, Numbers and special symbols, including:! @ # $ % ^ & * ( ) _ + - ='
      zh-cn: 长度8-32个字符,可包含大小字母、数字及特殊符号(包含:!@#$%^&*()_+-=)
    Label:
      en: Instance Password
      zh-cn: 实例密码
    AssociationProperty: ALIYUN::ECS::Instance::Password
    ConstraintDescription:
      en: '8-32 characters, can contain size letters, Numbers and special symbols, including:! @ # $ % ^ & * ( ) _ + - ='
      zh-cn: 8-32个字符,可包含大小字母、数字及特殊符号(包含:!@#$%^&*()_+-=)
    MinLength: 8
    MaxLength: 32
  SecurityGroupId:
    Type: String
    AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
    Default: ''
    Description:
      en: Please search the business security group ID starting with(sg-xxx)from console-ECS-Network & Security
      zh-cn: 现有业务安全组的实例ID
    Label:
      en: Business Security Group ID
      zh-cn: 业务安全组ID
  EcsInstanceType:
    Type: String
    Label:
      en: Instance Type
      zh-cn: 跳板机实例类型
    AssociationProperty: ALIYUN::ECS::Instance::InstanceType
    AssociationPropertyMetadata:
      ZoneId: ${ZoneId}
      InstanceChargeType: ${PayType}
    Default: ecs.g6.large
  SystemDiskCategory:
    Type: String
    AllowedValues:
      - cloud_efficiency
      - cloud_ssd
      - cloud_essd
    Label:
      en: System Disk Category
      zh-cn: 系统盘类型
    AssociationProperty: ALIYUN::ECS::Disk::SystemDiskCategory
    AssociationPropertyMetadata:
      LocaleKey: DiskCategory
      InstanceType: ${EcsInstanceType}
    Default: cloud_essd
  SystemDiskSize:
    Default: 40
    Type: Number
    Label:
      zh-cn: 系统盘空间 (GB)
      en: System Disk Space (GB)
Metadata:
  ALIYUN::ROS::Interface:
    ParameterGroups:
      - Parameters:
          - PayType
          - PayPeriodUnit
          - PayPeriod
        Label:
          default:
            en: PayType Configuration
            zh-cn: 付费类型配置
      - Parameters:
          - ZoneId
          - VpcId
          - VSwitchId
          - SecurityGroupId
          - LoginPassword
        Label:
          en: Basic Configuration
          zh-cn: 基础配置
      - Parameters:
          - EcsInstanceType
          - SystemDiskSize
          - SystemDiskCategory
        Label:
          en: ECS跳板机配置
          zh-cn: ECS跳板机配置
Outputs:
  endpoint:
    Description:
      zh-cn: 对外暴露的公网IP地址
      en: Public IP Addresses
    Value:
      Fn::GetAtt:
        - EcsInstanceJumpBox
        - PrivateIps
Resources:
  DiskSnapshotPolicy:
    Type: ALIYUN::ECS::AutoSnapshotPolicy
    Properties:
      TimePoints:
        - 0
      RepeatWeekdays:
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
      RetentionDays: 7
  EcsInstanceJumpBox:
    Type: ALIYUN::ECS::InstanceGroup
    Properties:
      MaxAmount: 1
      ZoneId:
        Ref: ZoneId
      InstanceChargeType:
        Ref: PayType
      Period:
        Ref: PayPeriod
      InstanceName: jumpbox
      ImageId: centos_7
      InstanceType:
        Ref: EcsInstanceType
      VpcId:
        Ref: VpcId
      VSwitchId:
        Ref: VSwitchId
      AllocatePublicIP: false
      Password:
        Ref: LoginPassword
      SystemDiskSize:
        Ref: SystemDiskSize
      SystemDiskCategory:
        Ref: SystemDiskCategory
      SecurityGroupId:
        Ref: SecurityGroupId
      SystemDiskAutoSnapshotPolicyId:
        Ref: DiskSnapshotPolicy
      DiskMappings:
        - Category:
            Ref: SystemDiskCategory
          AutoSnapshotPolicyId:
            Ref: DiskSnapshotPolicy
          Device: /dev/xvdb
          Size:
            Ref: SystemDiskSize
相关文章
|
Android开发
Android RecyclerView的notify方法和动画的刷新详解(二)
Android RecyclerView的notify方法和动画的刷新详解
506 0
|
机器学习/深度学习 JavaScript 前端开发
深入探索WebAssembly:提升Web应用的性能
【10月更文挑战第15天】深入探索WebAssembly:提升Web应用的性能
338 3
|
NoSQL 关系型数据库 OLAP
如何选择最合适的数据库,帮助企业及个人业务更好的开展
如何选择最合适的数据库,帮助企业及个人业务更好的开展
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
1099 1
|
缓存 监控 Ubuntu
Linux命令slabtop详解
`slabtop`是Linux内存监控工具,展示内核slab缓存的实时状态。它读取`/proc/slabinfo`,显示缓存名、对象数、大小和使用详情。特点包括实时显示、可排序和多选项定制。常用参数有`-d`设置更新间隔,`-s`按特定标准排序。适用于多种Linux发行版,用于识别性能瓶颈和优化内存使用。结合其他工具使用,提升系统性能。
|
机器学习/深度学习 人工智能 监控
一文读懂deepSpeed:深度学习训练的并行化
DeepSpeed 是由微软开发的开源深度学习优化库,旨在提高大规模模型训练的效率和可扩展性。通过创新的并行化策略、内存优化技术(如 ZeRO)及混合精度训练,DeepSpeed 显著提升了训练速度并降低了资源需求。它支持多种并行方法,包括数据并行、模型并行和流水线并行,同时与 PyTorch 等主流框架无缝集成,提供了易用的 API 和丰富的文档支持。DeepSpeed 不仅大幅减少了内存占用,还通过自动混合精度训练提高了计算效率,降低了能耗。其开源特性促进了 AI 行业的整体进步,使得更多研究者和开发者能够利用先进优化技术,推动了 AI 在各个领域的广泛应用。
|
Ubuntu Java Linux
update-alternatives命令如何使用?
【8月更文挑战第5天】update-alternatives命令如何使用?
1191 5
|
网络协议 算法 网络性能优化
【流媒体】推流与拉流简介
【流媒体】推流与拉流简介
2037 0
|
存储 Linux API
xenomai内核解析--双核系统调用(一)
本文介绍了Xenomai内核系统调用的实现,探讨了在Linux内核与Xenomai实时内核共存时,系统调用如何区分和交互。系统调用是用户空间与内核空间通信的关键,它提供了硬件抽象、系统稳定性、安全性和可移植性。在32位系统中,通过`int 0x80`指令触发,而在64位系统中,使用`syscall`指令。Xenomai通过I-pipe拦截系统调用,区分实时与非实时任务,并通过`cobalt_syscalls`表执行相应操作。文章还详细解析了系统调用表的生成和权限控制机制。
349 1
xenomai内核解析--双核系统调用(一)
|
存储 JSON Java
如何在Java中设计灵活的配置管理系统
如何在Java中设计灵活的配置管理系统