ECS 一键完全克隆

本文涉及的产品
资源编排,不限时长
简介: 通过 ROS 完整克隆 ECS,包括所有数据
ROS

当我们的应用上线的时候,首先要做服务器选型,在做系统配置,最后应用环境配置,然后部署机器验证,看我们搭建的环境是否符合需求。当一切都搞定了,应用需要大规模上线,或者由于业务发展需要扩展我们的应用部署,这个时候我们再一步一步再配置一遍,拷贝数据吗。以前可能需要需要这么做,但是现在这些步骤完全可以自动化的完成。通过资源编排可以非常方便的实现一台ECS的全量克隆。那么所有的事情都变得非常简单。

ECS 一键完全克隆

通过下面的链接就可以很方便的一键克隆任意多台源ECS。应用部署和应用扩展就是分分钟的事。

>> ECS 一键克隆

点击这个链接后,会看如下的页面,在对应的框中输入具体的参数,点击创建,然后就开始ECS的完全克隆。

clone_ecs

具体说一下这些参数的含义:

  • 已选地域:选择在哪个region克隆机器,可以通过上一步,调整region
  • 栈名:指定ROS资源栈的名称,必须全局唯一
  • 创建超时:克隆机器的超时时间
  • 失败回滚:克隆机器失败后,是不是删除部分创建成功的其他资源
  • Source ECS Instance ID:将要克隆的源 ECS
  • ECS Login Password:克隆的新机器的 root 用户登录密码
  • Source ECS system disk ID:将要克隆的源 ECS 的系统盘 ID
  • Source ECS data disk ID:将要克隆的源 ECS 的数据盘 ID
  • Number of Cloned ECS:将要克隆多少台完全一样的 ECS

模板详解

ROS 是通过模板来实现ECS的一键完全克隆。在这个模板中,主要用到了一下三个资源:

ALIYUN::ECS::Snapshot 资源是给磁盘做快照; ALIYUN::ECS::CustomImage 基于系统盘快照做系统镜像;最终通过ALIYUN::ECS::InstanceGroupClone 基于系统盘镜像和数据盘快照完整克隆ECS。它们各自详细的参数都可以通过链接看到。

完整的模板如下:

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Description": "Clone ECS Instance",
  "Parameters": {
    "SourceEcsDataDiskId": {
      "Type": "String",
      "Description": "Create snapshot based on source ECS data disk",
      "Label": "Source ECS data disk ID"
    },
    "SourceEcsSystemDiskId": {
      "Type": "String",
      "Description": "Create custom image based on source ECS system disk",
      "Label": "Source ECS system disk ID"
    },
    "SourceEcsInstanceId": {
      "Type": "String",
      "Description": "Source ECS Instance",
      "Label": "Source ECS Instance ID"
    },
    "LoginPassword": {
      "NoEcho": true,
      "Type": "String",
      "Description": "ECS Login Password",
      "AllowedPattern": "[a-zA-Z0-9-\\(\\)\\`\\~\\!@\\#\\$%\\^&\\*-+=\\|\\{\\}\\[\\]\\:\\;\\‘\\,\\.\\?\\/]*",
      "Label": "ECS Login Password",
      "MinLength": 8,
      "MaxLength": 41
    },
    "NumberOfClonedEcs": {
      "Type": "Number",
      "Description": "The number of nodes will be cloned",
      "MinValue": 1,
      "Label": "Number of Cloned ECS",
      "MaxValue": 100,
      "Default": 1
    }
  },
  "Resources": {
    "CustomImage": {
      "Type": "ALIYUN::ECS::CustomImage",
      "Properties": {
        "SnapshotId": {
          "Ref": "SystemDiskSnapshot"
        },
        "Timeout": 600
      }
    },
    "NewEcsInstance": {
      "Type": "ALIYUN::ECS::InstanceGroupClone",
      "Properties": {
        "DiskMappings": [
          {
            "SnapshotId": {
              "Fn::GetAtt": [
                "DataDiskSnapshot",
                "SnapshotId"
              ]
            },
            "Size": 20
          }
        ],
        "MinAmount": {
          "Ref": "NumberOfClonedEcs"
        },
        "ImageId": {
          "Ref": "CustomImage"
        },
        "SourceInstanceId": {
          "Ref": "SourceEcsInstanceId"
        },
        "MaxAmount": {
          "Ref": "NumberOfClonedEcs"
        },
        "Password": {
          "Ref": "LoginPassword"
        }
      }
    },
    "DataDiskSnapshot": {
      "Type": "ALIYUN::ECS::Snapshot",
      "Properties": {
        "DiskId": {
          "Ref": "SourceEcsDataDiskId"
        }
      }
    },
    "SystemDiskSnapshot": {
      "Type": "ALIYUN::ECS::Snapshot",
      "Properties": {
        "Timeout": 300,
        "DiskId": {
          "Ref": "SourceEcsSystemDiskId"
        }
      }
    }
  },
  "Outputs": {
    "NewEcsInstanceIds": {
      "Value": {
        "Fn::GetAtt": [
          "NewEcsInstance",
          "InstanceIds"
        ]
      }
    }
  }
}

总结

在很多情况下,我们需要完全克隆一台ECS,例如应用扩容,ECS整体迁移等等,但是当前情况下,很多时候我们克隆ECS只能是手动创建,然后手动做数据迁移,这个在需要快速做应用部署,大量的运维的情况下是不可行的。ROS 基于模板实现了自动化的,快捷的,ECS完全克隆的解决方案。可以大大提高大家运维效率和减少运维的失误。

ROS
相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
分布式计算 资源调度 Hadoop
分布式系统详解--架构(Hadoop-克隆服务器)
分布式系统详解--架构(Hadoop-克隆服务器)
69 1
|
弹性计算 负载均衡 测试技术
运维编排系列场景--跨可用区批量克隆ECS实例
背景可用区(Availability Zone,简称 AZ)是指在同一地域内,电力和网络互相独立的物理区域。例如,华北1(青岛)地域支持2个可用区,包括青岛 可用区B和青岛 可用区C。同一可用区内实例之间的网络延时更小,其用户访问速度更快。将应用部署在多个可用区可以提高应用的可用性,降低故障风险。然而,在实际应用中,有时需要将实例从一个可用区迁移到另一个可用区,以实现故障切换、负载均衡、数据备份与
运维编排系列场景--跨可用区批量克隆ECS实例
|
Linux 网络安全 数据安全/隐私保护
|
弹性计算 运维
阿里云运维编排新功能:一键批量克隆ECS
借助OOS运维编排的能力,您可以在控制台进行一键批量克隆ECS,也可以跨可用区和跨区域克隆。通过openapi或者sdk,您可以跟自己的运维系统轻松地集成。
5921 0
|
弹性计算 网络安全
【新功能】ECS控制台迁移专有网络支持安全组克隆
目前,在操作迁移实例到专有网络时,ECS控制台支持一键将实例的经典网络安全组克隆到专有网络。 适用条件 使用主账号操作,需要保有经典网络实例。 功能特点 在进行迁移经典网络实例到专有网络时,点击克隆实例的经典网络安全组到专有网络,克隆完成后,克隆的专有网络安全组回自动添加到已选择的迁移后安全组列表中。
1954 0
|
弹性计算 API Java
ECS Open API最佳实践 --- 您使用Open API的最正确姿势(克隆安全组篇)
继实例新购和实例变配之后,我们再次推出了克隆安全组的Open API最佳实践。因为克隆安全组并没有一个响应的Open API作为支撑,所以我们基于ROS(资源编排)来完成了此次最佳实践
2662 0
|
3天前
|
人工智能 JSON Linux
利用阿里云GPU加速服务器实现pdf转换为markdown格式
随着AI模型的发展,GPU需求日益增长,尤其是个人学习和研究。直接购置硬件成本高且更新快,建议选择阿里云等提供的GPU加速型服务器。
利用阿里云GPU加速服务器实现pdf转换为markdown格式