阿里云在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元
,对于基础的需求非常划算。注意一下,海外地域最便宜的是e-c4m1.large
实例,其次是t5
实例。
成功开机后记得删除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地址收费,那这个玩法就没有意义了。不要滥用的前提下,且用且珍惜吧~
*原创文章,转载请注明出处
包括HyperV一模一样的方法测试安装都不行 安装的时候有网络重启后死活不行,最后用VMware做基础创建虚拟机驱动打好后 再把vmdk转vhd上传到阿里云测试可以了 一切正常
实际测试分享的镜像 可能水土不服 我这边实际测试没法用网络 折腾了一天,最后自己用alpine做了一个3G的镜像 装了一个docker跑些轻量应用
牛的大佬,不用配置了
300的券现在不能买轻量了~
听说现在有办法扩容了
挂备案很适合,但确实还是有被阿里反撸的风险
时间同步可以用更现代的chrony
nb,前来支持