aws EC2二代镜像迁移阿里云ecs磁盘user_config.json生成脚本

简介: 由于迁移需要,此python脚本自动生成user_config.json包含aws二代镜像磁盘nvme的配置,以方便迁移,目前最多支持10块磁盘和每块磁盘最多10个分区,可以自己修改

脚本如下,请自行修改access_id和secret_key:

import os
import json



template_dict = {
    "access_id": "YOUR-ID",
    "secret_key": "YOUR-SECRET_KEY",
    "sts_token": "",
    "region_id": "",
    "image_name": "",
    "platform": "",
    "disks":[],
    "enable_disks" : True,
    "bandwidth_limit": 0
}
data_result = os.popen(' df -h | grep "/dev/nvme"').readlines()
#print(type(data_result))
#print(len(data_result))
disk_list = []
for line in data_result:
    line=str(line).split("\n")[0]
    line_list = line.split()
    disk_str=line_list[0]
    mount_str=line_list[5]
    disk_size_search = disk_str.split('p')[0]  ## use to search by fdisk -l for disk size
    #print(disk_size_search)
    searh_str = "fdisk -l | grep Disk | grep -v Disklabel | grep -v identifier | grep "+disk_size_search+ " | awk -F\":|,|G\" '{print $2}'"
    disk_size = int(float(os.popen(searh_str).readlines()[0].split("\n")[0].strip())+1)
    #disk_size = int(os.popen(searh_str).readlines())
    #print("disk size %s" % disk_size)
    #disk_size=int(line_list[1].split('G')[0])
    #print(disk_str,disk_size,mount_str)
    disk_list_item_dict = {}  ## use to save disk info items for disks list
    parts = []  ## use to save partion
    for i in range(1,10):
        disk_check_str='nvme'+str(i-1)
        if disk_check_str in disk_str:
            disk_list_item_dict['index']=i-1
            if disk_size < 20:
                disk_size = 20
            disk_list_item_dict["size"]=disk_size
            for j in range(1,10):
                part_check_str = disk_check_str +"n1p" +str(j)
                part_check_str_all_disk = disk_check_str +"n1"## all disk has only on partiton
                if disk_str.endswith(part_check_str_all_disk):
                    parts_item_dict = {}
                    parts_item_dict["part_index"] = 0
                    parts_item_dict["part_path"]=mount_str
                    if len(parts_item_dict) > 0:
                        parts.append(parts_item_dict)
                        break
                if part_check_str in disk_str:
                    parts_item_dict = {}
                    parts_item_dict["part_index"]=j-1
                    parts_item_dict["part_path"]=mount_str
                    if len(parts_item_dict) > 0:
                        parts.append(parts_item_dict)
        if len(parts) > 0:
            disk_list_item_dict["parts"] = parts
    if len(disk_list_item_dict) > 0:
        #print(disk_list_item_dict)
        disk_list.append(disk_list_item_dict)

if len(disk_list) > 0:
    template_dict["disks"] = disk_list

print(template_dict)
with open('/migrate_20200624/go2aliyun_client2.3.0b_linux_x86_64/user_config.json','w') as f:
    json.dump(template_dict,f)

请根据自己情况做适当修改和测试

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
6天前
|
人工智能 弹性计算 编解码
阿里云GPU云服务器性能、应用场景及收费标准和活动价格参考
GPU云服务器作为阿里云提供的一种高性能计算服务,通过结合GPU与CPU的计算能力,为用户在人工智能、高性能计算等领域提供了强大的支持。其具备覆盖范围广、超强计算能力、网络性能出色等优势,且计费方式灵活多样,能够满足不同用户的需求。目前用户购买阿里云gpu云服务器gn5 规格族(P100-16G)、gn6i 规格族(T4-16G)、gn6v 规格族(V100-16G)有优惠,本文为大家详细介绍阿里云gpu云服务器的相关性能及收费标准与最新活动价格情况,以供参考和选择。
|
11天前
|
机器学习/深度学习 人工智能 弹性计算
什么是阿里云GPU云服务器?GPU服务器优势、使用和租赁费用整理
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等多种场景。作为亚太领先的云服务提供商,阿里云的GPU云服务器具备灵活的资源配置、高安全性和易用性,支持多种计费模式,帮助企业高效应对计算密集型任务。
|
13天前
|
存储 分布式计算 固态存储
阿里云2核16G、4核32G、8核64G配置云服务器租用收费标准与活动价格参考
2核16G、8核64G、4核32G配置的云服务器处理器与内存比为1:8,这种配比的云服务器一般适用于数据分析与挖掘,Hadoop、Spark集群和数据库,缓存等内存密集型场景,因此,多为企业级用户选择。目前2核16G配置按量收费最低收费标准为0.54元/小时,按月租用标准收费标准为260.44元/1个月。4核32G配置的阿里云服务器按量收费标准最低为1.08元/小时,按月租用标准收费标准为520.88元/1个月。8核64G配置的阿里云服务器按量收费标准最低为2.17元/小时,按月租用标准收费标准为1041.77元/1个月。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。
|
11天前
|
机器学习/深度学习 人工智能 弹性计算
阿里云GPU服务器全解析_GPU价格收费标准_GPU优势和使用说明
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等场景。作为亚太领先的云服务商,阿里云GPU云服务器具备高灵活性、易用性、容灾备份、安全性和成本效益,支持多种实例规格,满足不同业务需求。
|
19天前
|
弹性计算
阿里云2核16G服务器多少钱一年?亲测价格查询1个月和1小时收费标准
阿里云2核16G服务器提供多种ECS实例规格,内存型r8i实例1年6折优惠价为1901元,按月收费334.19元,按小时收费0.696221元。更多规格及详细报价请访问阿里云ECS页面。
56 9
|
15天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
19天前
|
弹性计算 异构计算
2024年阿里云GPU服务器多少钱1小时?亲测价格查询方法
2024年阿里云GPU服务器每小时收费因实例规格不同而异。可通过阿里云GPU服务器页面选择“按量付费”查看具体价格。例如,NVIDIA A100的gn7e实例为34.742元/小时,NVIDIA A10的gn7i实例为12.710156元/小时。更多详情请访问阿里云官网。
64 2
|
22天前
|
存储 关系型数据库 MySQL
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
查询服务器CPU、内存、磁盘、网络IO、队列、数据库占用空间等等信息
195 2
|
25天前
|
存储 弹性计算 NoSQL
"从入门到实践,全方位解析云服务器ECS的秘密——手把手教你轻松驾驭阿里云的强大计算力!"
【10月更文挑战第23天】云服务器ECS(Elastic Compute Service)是阿里云提供的基础云计算服务,允许用户在云端租用和管理虚拟服务器。ECS具有弹性伸缩、按需付费、简单易用等特点,适用于网站托管、数据库部署、大数据分析等多种场景。本文介绍ECS的基本概念、使用场景及快速上手指南。
68 3
|
30天前
|
存储 弹性计算 编解码
通过阿里云的活动租赁云服务器时如何选择实例规格?选择指南参考
新手用户通过阿里云的活动租赁云服务器的时候实例规格应该怎么选?目前在阿里云的活动中,可选的云服务器类型除了轻量应用服务器之外,云服务器的主要实例规格有经济型e、通用算力型u1和计算型c7与c8y、通用型g7与g8y、内存型r7与r8y等实例,但是对于新手来说,由于是初次购买,实例规格往往不知道怎么选择了。本文为大家展示阿里云目前活动中各云服务器实例规格性能、适用场景以及选择指南参考。

热门文章

最新文章

  • 1
    Spring Boot与Spring Cloud Config的集成
    213
  • 2
    若依修改标题和icon,在vue.config.js和.env.development进行修改
    330
  • 3
    若依修改,若依的com.ruoyi.framework.config在那?搜索文件使用ctrl+shift+f不用搜狗输入法,其他輸入法,用英文
    44
  • 4
    若依修改,若依部署在本地运行时的注意事项,后端连接了服务器,本地的vue.config.js要先改成localhost:端口号与后端匹配,部署的时候再改公网IP:端口号
    167
  • 5
    部署常用的流程,可以用后端,连接宝塔,将IP地址修改好,本地只要连接好了,在本地上前后端跑起来,前端能够跑起来,改好了config.js资料,后端修改好数据库和连接redis,本地上跑成功了,再改
    71
  • 6
    若依修改---重新部署项目注意事项,新文件初始化需要修改的地方,打包后的文件很难进行修改,如果想要不断修改项目,注意保存原项目,才可以不断修改,前端:在Vue.config.js文件中修改target
    138
  • 7
    若依修改之后,无法访问前端项目如何解决,只能访问后端的接口,我的接口8083,端不显示咋解决?在vue.config.js文件中的映射路径要跟后端匹配,到软件商店里找到Ngnix配置代理,设80不用加
    634
  • 8
    文本vitepress,如何设置背景图,如何插入背景图,如何插入logo,为了放背景图片,我们要新建pubilc的文件夹,插入logo要在config.js中进行配置,注意细节,在添加背景时,注意格式
    139
  • 9
    文本,vitepress的使用,如何使用vitevitepress没有config.js该怎么办?这里使用vitepress进行手动配置,参考只爭朝夕不負韶華的文章
    68
  • 10
    vue 配置【详解】 vue.config.js ( 含 webpack 配置 )
    72