【阿里云】自定义Alpine镜像购买1G磁盘超低价ECS
阿里云在2023年更新了CDT计费的规则统一了一系列云产品的流量计费规则,也提供了每月20G(中国大陆/境外)和180G(仅境外)的免费流量。在CDT免费流量的框架下,我们可以开按量计费的ECS来享受高带宽带来的快(破)感(产)。
前段时间阿里云学生300的卷用法讨论比较火热(现在已经被玩坏凉了),@ZXD
跟我说通过自定义镜像可以开1G磁盘的ECS,并且用一个OpenWRT的镜像给我演示了一下。但毕竟OpenWRT不适合作为服务器的操作系统,就研究了一下Alpine镜像的制作方法,在此做一个简单的记录。
一、镜像制作
博主做镜像的时候是随手抄起来手边趁手的HyperV,不一定是最简单、最实用的方法,在此就简单描述下。先通过右键此电脑进入管理页面,选择磁盘管理,如图创建一个1024M
的动态扩展.vhd
文件,随后右键将其从磁盘管理中断开连接。从HyperV Management中手动新建或者在完成安装后在Hard Drive页面转换为.vhd
都是可以的,只要注意.vhdx
并不能拿来上传自定义镜像就行。
然后就是到HyperV里面新建一个代次为Gen1
的虚拟机,然后挂载.vhd
的磁盘和.iso
镜像开机进行安装,安装完成后进入系统确认无误后即可拷贝.vhd
文件用于后续自定义镜像的创建。
默认情况下,Alpine会为/boot
启动分区分配300M
,再向swap
分配200M
,如此操作根目录下可用空间仅剩326.7M
。通过手动分区和安装的操作可以缩减/boot
分区同时去掉swap
分区,以最大化利用磁盘空间。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 通过正常安装流程进行联网、镜像源设置,随后终止安装流程
setup-alpine
# 安装分区工具
apk add parted e2fsprogs
# 进行分区
parted -sa optimal /dev/sda mklabel msdos # 设置分区表为mbr格式
parted -sa optimal /dev/sda mkpart primary 512B 50MB # 划分boot分区
parted -sa optimal /dev/sda mkpart primary 50MB 100% # 划分所有容量至主分区
parted -sa optimal /dev/sda set 1 boot # 设置分区1启动卷标
mkfs.ext4 /dev/sda1 # 格式化boot分区
mkfs.ext4 /dev/sda2 # 格式化主分区
# 重启
reboot
# 挂载磁盘,注意先后及新建文件夹
mount /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot
# 通过正常安装流程进行所有设置,到选择磁盘后终止
setup-alpine
# 安装
setup-disk /mnt
|
二、创建ECS
先把.vhd
上传到对应地域的OSS,OSS桶可以保持私有状态,然后点击镜像文件的详情复制其中的URL。来到ECS的镜像页面先选择好地域,然后如图后点击导入镜像,
如图填写参数后点击确认,稍等几分钟即可完成镜像的创建。注意一定要勾选配置云盘属性并将其容量设置为1G
,这样制作出来的镜像才是我们需要的。
随后即可使用此镜像创建ECS,在创建前先开通CDT计费(点击前往),然后选择包含免费额度的CDT计费,磁盘选择1G
的ESSD,SSH密码设置为镜像默认值。以乌兰察布的为例,五年的ecs.t6-c4m1.large
实例仅需151.65元
,对于基础的需求非常划算。
成功开机后记得删除OSS中的镜像文件以及自定义镜像,以免产生不必要的费用。
三、镜像分享
自定义镜像也可以使用官方.qcow2
直接安装,但毕竟阿里的cloud-init没有适配,还是开箱即用的实例最方便。在这里分享一个博主自己做的Alpine镜像,基于3.20.2
版本镜像,除安装流程外未安装任何三方组件,根目录下磁盘可用空间823.5M
。镜像开箱即用,ssh端口22
用户名root
密码luminous
,请务必开机后第一时间修改密码,以免被他人盗用。
镜像时间同步工具选择的是NTP,有一个问题是系统时间与当前时间差距过大的话不会执行同步,可以通过date -s "2024-09-30 13:00"
将时间设置手动为当前时间,重启后NTP便会自动接管。
下载地址:蓝奏云
四、结语
这样一个2c 512M的突发实例跑haproxy转发、跑caddy挂单页都是非常充裕的,如果确有所需的话可以考虑。同样的,这个方法也适用于创建任意磁盘大小、任意系统的实例,也能批制作相同系统的ECS实例,有很大的空间可以自行发挥。
当然,这样购买也有风险,近两年AWS、Azure等国际大厂纷纷修改IP地址费用政策,如果有一天阿里宣布IP地址收费,那这个玩法就没有意义了。不要滥用的前提下,且用且珍惜吧~
*原创文章,转载请注明出处