很多人第一次在阿里云买服务器时,系统盘看起来够用。项目跑起来以后,日志、数据库文件和用户上传的图片很快就会把空间占满,这时要给实例单独加一块数据盘。数据和系统分开存放,重装系统时数据不受影响,扩容也更省事。下面按选型、购买、挂载、扩容和日常维护的顺序,结合实际场景把流程讲清楚。

一、数据盘和系统盘有什么区别
ECS 上的磁盘大致分两类。系统盘装操作系统,一般是 20GB 到 40GB。数据盘是额外挂载的块存储,专门放业务数据。两者都是独立的云盘,可以分别扩容、分别做备份。条件满足时,数据盘还能在实例之间切换挂载。
我见过不少团队把网站源码、MySQL 数据文件和 Nginx 日志全放在系统盘里。前几个月没问题,半年后系统盘写满,系统起不来,SSH 也连不上,只能紧急扩容。如果一开始就把数据放到数据盘,这类情况大多能避开。
二、选型前先回答三个问题
阿里云数据盘常见的类型有 ESSD 云盘、SSD 云盘、高效云盘和普通云盘。选型时可以先问自己下面三个问题。
1. 业务对 IO 延迟敏感吗?
MySQL、Redis 持久化、ElasticSearch 这类随机读写频繁的服务,建议选 ESSD 云盘,性能档位更高,延迟也更稳定。如果只是存放图片、备份文件或冷数据,普通云盘或高效云盘就够用,成本低得多。
2. 数据量多大,将来会涨多少?
举个例子。某小型电商站初期只有几十个商品,图片总量约 20GB。团队直接买了 200GB 的 ESSD,半年后图片涨到 80GB,磁盘还空着大半,钱花得很冤。后来他们改成先买 100GB,设置使用率超过 80% 就告警,需要时在控制台在线扩容,不用停机。这样更划算。
3. 有没有备份和容灾需求?
数据盘本身有一定的数据冗余,但冗余不等于备份。误删文件、勒索病毒加密、程序 bug 写坏数据,云盘同样会受影响。关键数据要配合快照或异地备份。阿里云支持对云盘创建快照,还可以设置自动快照策略,比如每天凌晨一次,保留 7 天。
三、购买和挂载
在 ECS 控制台新建数据盘,大致步骤如下:
- 进入云服务器 ECS 控制台,找到“存储与快照”,选择“云盘”,点击创建云盘。
- 选择地域和可用区。云盘必须和 ECS 实例在同一个可用区,否则无法挂载,购买前先确认实例所在的可用区。
- 选择云盘类型和容量,并确认计费方式,包年包月或按量付费。
- 创建完成后,在云盘列表里点击“挂载”,选择目标实例。
挂载只是第一步。系统里还看不到可用空间,需要登录服务器手动分区、格式化。以常见的 Linux 系统为例,假设新盘的设备名是 /dev/vdb。
1. 确认设备名
执行 lsblk,找到 vdb。它没有挂载点,说明是新盘。操作前一定看清设备名,别误操作到系统盘 vda。格式化错了盘,数据就没了。
2. 分区并格式化
容量小于 2TB 的磁盘,可以用 fdisk 或 parted 建分区,再格式化为 ext4 或 xfs。容量超过 2TB 时,需要使用 GPT 分区表。
3. 挂载到目录并写入 fstab
创建挂载点目录,比如 /data,然后执行挂载。想让服务器重启后自动挂载,要把分区的 UUID 写入 /etc/fstab,不要用设备名。多盘环境下设备名可能变化,重启后盘符错位,严重时服务起不来。写完后先执行 mount -a 测试,没有报错再重启。
挂载后用 df -h 确认容量正确,再写一个小文件测试读写。
四、扩容和性能的几个坑
第一个坑是挂载后重启失败。多半是 fstab 写错,或者用了设备名。这时可以进入救援模式,或者通过控制台的 VNC 登录,修正 fstab 后重启。所以写 fstab 之前最好先用 mount -a 测试。
第二个坑是扩容后空间没变。云盘在控制台扩容后,只是底层容量变大了,分区和文件系统还要手动扩展。ext4 用 resize2fs,xfs 用 xfs_growfs,分区不够大时先用 growpart。整个过程不需要停机,但建议放在低峰期做,操作前先备份。
还有一种情况是性能不达预期。很多人买了 ESSD 却觉得慢,原因可能在应用层,比如同步写入过于频繁,或者日志级别开得太高。磁盘的 IOPS 和吞吐上限本身有限制,并且和云盘容量相关,容量越大,性能上限通常越高。选型时把这一点算进去。
五、上线后的日常维护
数据盘上线后,建议做三件事。一是配置监控,关注磁盘使用率和 IO 延迟,使用率超过 80% 就告警。二是定期做快照,关键数据库目录每天一次,保留一周。三是定期检查文件系统,做一次只读检查,发现异常及时处理。
目录结构最好提前规划。比如 /data/mysql 放数据库,/data/www 放网站文件,/data/logs 放日志。后期做迁移、备份和扩容时目录清楚,不容易出现找不到文件的情况。
六、选型和配置的要点
阿里云数据盘用起来不难,难点在前期规划。先判断业务的 IO 需求和数据增长速度,再选云盘类型和容量。挂载时用 UUID 写入 fstab,配好监控和快照。这几步做完,后面的扩容和维护会省心很多。