阿里云ESC服务器一次性全部迁移到另一个ESC
摘要: 在云计算时代,服务器迁移是企业优化资源配置、提升业务灵活性的常见需求。本文将详细介绍如何将阿里云ECS(Elastic Compute Service)服务器一次性迁移到另一个ECS实例。整个迁移过程分为四个关键步骤:
-
创建自定义镜像:首先,你需要在源ECS实例上创建一个自定义镜像,这将作为迁移的基础。自定义镜像能够完整地复制你的系统环境和数据。
-
增加磁盘空间并扩容(Linux):在迁移前,确保目标ECS实例的磁盘空间足够。如果需要,增加磁盘空间并进行扩容操作,以适应迁移后的数据量。
-
目标阿里云ECS更换操作系统:如果迁移涉及到更换操作系统,你需要在目标ECS实例上进行操作系统的更换。这一步骤需要谨慎操作,以确保系统兼容性和数据安全。
-
验证迁移结果:迁移完成后,进行彻底的验证,确保所有数据和服务都已正确迁移,并且运行正常。这一步骤是迁移成功的关键。
本文将提供详细的操作步骤和注意事项,帮助读者顺利完成ECS服务器的迁移工作。通过遵循这些步骤,你可以确保迁移过程的顺利进行,同时最小化业务中断。
一、创建自定义镜像
注意:这里是源阿里云ESC(即旧的ESC),如果是同一个阿里云账号下迁移,就不用考虑这个问题。
步骤 1: 创建自定义镜像
- 登录到阿里云控制台。
- 在左侧导航栏,选择弹性计算 > ECS。
- 在ECS实例列表中,找到您想要迁移的ECS实例。
- 点击该实例右侧的更多 > 创建自定义镜像。
- 在弹出的对话框中,输入镜像名称和描述,选择是否要包含数据盘,然后点击确定。
步骤 2: 共享镜像
1.共享镜像:共享出来,其他ESC才能够复用。
2.共享镜像可以指定阿里云账号ID,这样如果其他阿里云账号才能使用。
二、增加磁盘空间并扩容(Linux)
注意:这里是目标阿里云ESC(即新的ESC),如果是同一个阿里云账号下迁移请忽略。
在Linux系统中,如果您需要在阿里云ECS实例上增加磁盘空间并扩容分区和文件系统,可以按照以下步骤进行操作:
步骤 1: 查看磁盘分区和文件系统
首先,登录到ECS实例,并使用以下命令查看当前磁盘分区和文件系统信息:
fdisk -l
df -h
步骤 2: 在ECS控制台扩容磁盘
- 登录到阿里云控制台。
- 在左侧导航栏,选择弹性计算 > ECS。
- 在ECS实例列表中,找到需要扩容磁盘的实例,并点击进入详情页。
- 在左侧菜单栏选择磁盘和镜像。
- 选择需要扩容的磁盘,点击更多 > 磁盘扩容。
- 根据界面提示进行操作,选择扩容的大小,然后确认。
步骤 3: 在ECS实例上识别新增加的磁盘空间
- 使用
fdisk -l
命令确认新增加的磁盘空间。 - 如果新空间未被识别,可以尝试重启实例或运行
partprobe
命令。
步骤 4: 扩容分区
假设您要扩容的是/dev/vda1
分区:
fdisk /dev/vda
# 在fdisk命令行界面中执行以下操作:
# 1. 输入 'p' 查看现有分区
# 2. 输入 'd' 删除目标分区(例如:分区1)
# 3. 输入 'n' 创建一个新分区,使用与删除分区相同的分区号
# 4. 输入 'p' 再次查看分区,确认新分区使用了所有可用空间
# 5. 输入 'w' 保存并退出
# 注意:以上步骤会删除分区并重新创建,请确保有备份数据
步骤 5: 扩容文件系统
根据您的文件系统类型(例如ext4),使用以下命令扩容文件系统:
对于ext4
文件系统:
resize2fs /dev/vda1
对于xfs
文件系统:
xfs_growfs /dev/vda1
注意事项
- 数据备份:在进行任何分区和文件系统操作之前,请确保您有完整的数据备份。
- 在线扩容:某些文件系统支持在线扩容,但为了安全起见,最好在操作前停止对文件系统的写操作。
- 系统兼容性:确保您使用的命令与您的Linux发行版兼容。
- 重启服务:在某些情况下,扩容文件系统后可能需要重启相关服务。
完成以上步骤后,您的ECS实例的磁盘空间应该已经成功扩容,并且分区和文件系统的大小也相应增加了。
操作步骤如下:
在Linux操作系统内扩容分区和文件系统_云服务器 ECS(ECS)-阿里云帮助中心
通过 df -h分析出系统盘是/dev/vda3
另一种查看方法:运行以下命令,确认待扩容云盘及其分区信息。
sudo fdisk -lu
如图所示,表示该实例有2块云盘,系统盘/dev/vda
和数据盘/dev/vdb
,我们以数据盘/dev/vdb
为例。其中:
- ①:云盘的设备名称。
- ②:云盘是否分区及分区名称。
- 已分区:如果有②处的分区信息表示已分区,Device取值为分区名称(示例中为
/dev/vdb1
),数字1
是分区编号,则需扩容分区和文件系统。 - 未分区(裸设备):如果没有②处的分区信息表示未分区,为裸设备。则无需执行步骤1:扩容分区,直接执行步骤2:扩容文件系统即可。
- 已分区:如果有②处的分区信息表示已分区,Device取值为分区名称(示例中为
- ③:云盘的分区类型。
Disk label type
值为dos
表示MBR分区,值为gpt
表示GPT分区。
说明
- 不同操作系统的显示略有不同。如果没有
Disk label type
字段,可通过System
字段判断。System
值为Linux
表示MBR分区,值为GPT
表示GPT分区。 - 较低版本的fdisk可能不能正常显示GPT分区表。您可以通过
gdisk -l /dev/vdb
命令查看分区类型。 - ④:确认待扩容的分区。
由于容量= sectors值*512 bytes,图示例中:
- 云盘
/dev/vdb
的sectors=125829120,则云盘容量=125829120*512bytes=64.4GB(等于60GiB) - 分区
/dev/vdb1
的sectors=(End-Start)=83886078,则分区容量= 83886078*512bytes=42.9GB(等于40GiB)
根据计算得出/dev/vdb1
分区的容量小于云盘/dev/vdb
的容量,即/dev/vdb1
分区需要扩容。
说明
您也可以通过运行lsblk
命令查看哪个分区待扩容。
亲测有效
本人亲自操作成功如下所示(Alibaba Cloud Linux3系统):
type growpart || sudo yum install -y cloud-utils-growpart
sudo LC_ALL=en_US.UTF-8 growpart /dev/vda 3
sudo resize2fs /dev/vda3
df -Th
三、目标阿里云ESC更换操作系统
注意:这里是目标阿里云ESC(即新的ESC)。
在阿里云ECS上更换操作系统是一个相对直接的过程,但需要注意,这个过程会重置系统盘,因此所有的数据将会丢失。以下是在阿里云ECS上更换操作系统的步骤:
步骤 1: 数据备份
在更换操作系统之前,请确保您已经备份了所有重要的数据。您可以:
- 将数据复制到数据盘。
- 使用阿里云的OSS服务进行备份。
- 通过网络将数据传输到其他存储位置。
步骤 2: 创建快照(可选)
如果需要保留当前系统状态,可以创建一个系统盘的快照作为备份。
- 登录到阿里云控制台。
- 在ECS实例列表中,找到目标实例。
- 点击实例ID进入实例详情页面。
- 在左侧菜单中选择磁盘和镜像。
- 选择系统盘,点击创建快照。
步骤 3: 停止ECS实例
更换操作系统前需要停止ECS实例(注意这里的停止目标ESC,旧的ESC不用停止)。
- 在ECS实例列表中,选择目标实例。
- 点击更多 > 停止。
- 确认停止实例。
步骤 4: 更换操作系统
- 在ECS实例列表中,选择目标实例。
- 点击更多 > 更换系统盘。
- 在弹出的对话框中,选择新的操作系统镜像。您可以选择公共镜像或自定义镜像。
- 根据需要选择新的实例密码或密钥对。
- 确认操作。
更换系统盘方式注意事项:
更换操作系统后,云盘ID会变更,原系统盘会被释放,数据会丢失且无法找回,请做好数据备份。
1.基于旧系统盘创建的快照不能用于回滚新系统盘,但可以用于创建自定义镜像。
2.自动创建的快照,如果旧系统盘开启自动快照随云盘释放,则自动快照会被自动删除;如果未开启自动快照随云盘释放,则到后期自动释放。
3.变更后,自动快照策略将失效,需要重新设置。
4.执行操作前,可通过创建快照做好相关备份,以免数据丢失给你造成损失。
步骤 5: 启动ECS实例
更换操作系统后,启动ECS实例。
- 在ECS实例列表中,选择目标实例。
- 点击更多 > 启动。
步骤 6: 初始化新操作系统
启动后,您可能需要:
- 配置网络。
- 安装必要的软件。
- 恢复备份的数据。
注意事项
- 数据丢失:更换操作系统会重置系统盘,所有的数据将会丢失,因此请务必备份。
- 网络配置:更换操作系统后,可能需要重新配置网络,例如安全组、公网IP等。
- 软件安装:需要重新安装所有必要的软件和服务。
- 云盘挂载:如果实例有数据盘,可能需要重新挂载数据盘。
- 启动项目:如果迁移过来的项目需要手动启动,还要注意安全组放行端口和域名绑定映射。
请根据您的实际需求谨慎操作,如果遇到问题,可以参考阿里云官方文档或联系技术支持。
四、验证迁移结果
- 查看磁盘空间大小和迁移的ESC是否一致;
- 查看原先部署的所有项目、基础环境、镜像......是否迁移过来。
- 停掉旧的实例ESC,看看新的项目是否正常运行,有时候依赖旧的ESC配置没发现导致后面出问题。
五、删除镜像
确认迁移无误后,可以进行删除镜像,因为这里收备份的文件费用,需要删除。
到此步骤完毕!感谢阅读!如果操作过程中遇到问题请评论区留言沟通。
博主还写了与本文相关文章,欢迎批评指正:
1、Linux 系统盘空间不足,想要将 Docker 镜像和容器数据迁移到数据盘
2、Linux常用操作命令、端口、防火墙、磁盘与内存
3、查看Linux系统是Ubuntu还是CentOS
4、Linux操作系统最著名的两大系列Red Hat和Debian