试用微软 Azure 云主机

前段时间因为到 Linode 日本东京节点的线路上 NTT 部分一直抽风,或者是联通国际出口丢包太疯狂,而且移动家的网络基本上全国范围都封锁主机的 IP 了,所以萌生了给水景一页网站换个虚拟主机的想法。于是开始试用云主机。OCI 的云主机免费资源较多,可是感觉免费资源没保障,而且开始的时候将注册的主区域选到了英国,重新注册韩国、日本的帐号又不成功,还在犹豫中。目光放回到微软的 Azure,虽然控制面板有点负责,最近也摸得差不多了。现在总结一点心得。

免费资源额度非常有限

微软 Azure 云服务的项目分得特别细致,甚至连存储的读写操作都单独收费,所以在选择和组合一个实用的云主机的时候就非常纠结。其它各家基本上都免费使用的通过控制面板直接访问 VPS 命令行的功能,微软家也是收费的,至少需要提供一个 Azure 的共享存储空间才能够使用该服务。另外有个好像叫做「堡垒机」的服务,费用挺高。幸好有试用额度,又有一些12个月免费和永久免费的服务,就大胆地折腾了好多天。

微软 Azure 提供的免费使用 12 个月的资源

微软 Azure 提供的免费使用 12 个月的资源

总的来说,微软的免费项目,特别是永久免费的服务并没有太大吸引力。永久免费的服务中,对于云主机来说,也就 5 GB/月的出栈流量是实打实的。算下来,即使是有一些 12 个月免费试用的资源可以建虚拟主机,如上图所示,但也并不是说就一定可以真的完全免费使用 12 个月。相比之下,Oracle 家的免费资源简直美到不真实。

创建日本地区的云虚拟主机

Azure 提供的虚拟主机有两种,Linux 和 Windows,是分别计算使用额度的。但是同一类型,比如 Linux 主机,并不限制只能开一台。如果开了多台,是会累积计算使用时间的,总共 750 小时内即可。

连接质量

Azure 虚拟机上的 SS 代理测速

Azure 虚拟机上的 SS 代理测速(联通线路)

经过试用,对于郑州联通来说,东南亚机房似乎不如日本东部机房带宽好。其它的我没试过。东京机房的主机 ping 值在 80 左右,无论忙闲时都没有丢包现象。在使用 speedtest 测速时 200M 宽带可以跑满。可能毕竟带宽价格挺高的,不嫌我们用的多,毕竟每月只有 5GB 免费流量(在 12 个月的免费期内是 15GB/月)。如果只是用来方便自己上网,看新闻、刷推、访问 Google 搜索之类的,只要不刷视频,应该还是够用的。

然后我也用移动4G网络通过 SS 代理测了一下,下载速度大约是 14Mbps,也不算差。也许还跟手机本身的信号质量有很大关系。

创建虚拟机并选择机房

如果按照 Azure 中提供的现成方案,也就是从上面图示的免费资源那里直接点击「创建」来新建 VPS,是没法注册地区在日本、韩国的主机的。默认推荐的是(Asia Pacific)东南亚,机房在新加坡。如下图所示。

Azure 免费资源中创建虚拟主机可选东南亚机房,没有日本、韩国选项

Azure 免费资源中创建虚拟主机可选东南亚机房,没有日本、韩国选项

但是我们可以从控制面板中选择虚拟机资源,然后创建虚拟机。在控制台首页,点击「创建资源」,然后在列表中选择「虚拟机」,再点击「创建」。此时出现的创建页面跟上没的差不多,但是可选韩国、日本机房。

从控制台直接创建资源并选择虚拟机来创建

如上图,在「区域」那里改成日本或者韩国机房即可。这两地的访问速度应该差不多,但是日本的网络政策更开放一些,所以我选择了日本东部机房。如果是打算付费,需要注意的是东南亚机房比日本东部机房的同一规格主机要便宜 $0.29/月

选择操作系统映像

Azure 虚拟机中免费的 Linux 操作系统默认只有 Ubuntu 和 Debian。抱着试试看的心态,我从选择框下面的「查看所有映像」那里搜索到了 openSUSE Leap 15.3。网页上也没有列出价格。看介绍页面,这是 SUSE 公司提供的。该公司提供的 SUSE 操作系统与 openSUSE Leap 同源,但是有些附加的定制、软件和服务,是有订阅费用的。

Azure 日本东部机房和东南亚机房虚拟机价格对比

选择使用 openSUSE Leap 15.3 系统映像之后,创建虚拟机的过程中会提示可以使用自己的许可证(BYOL)。我勾选了,在下方。但是我并不知道怎么「使用」自己的许可证,而且我也没有,也不打算订阅。到今天一个月的试用期快结束了,也没见到费用单里面出现系统映像订阅的费用列出来。估计这个 openSUSE Leap 15.3 算是 SUSE 为了推广而放进来的,并没有打算收钱吧。openSUSE Leap 15.3 本身就是开源的操作系统。

配置管理登录方式

然后该页再下面一点就是配置登录方式。当然选择证书登录了。

Azure 免费12个月的Linux主机之配置主机登录方式

Azure 免费12个月的Linux主机之配置主机登录方式

需要输入自己的用户名(Username),默认是 azureuser,这肯定不方便。SSH Public key 可以选择新创建,使用保存在 Azure 的现有证书,或者使用自己常用的证书。如果选择 Use existing public key,下面会出现一个文本框,把自己 RSA 规格的公钥文本粘贴进去就可以了。

当然,下面那个使用自己已有的 SUSE 订阅我是勾选了的。可能是因为这个才没有在费用表里面显示系统使用费用吧。一般大家都是用 Ubuntu 或者 Debian,这个问题其实不重要了。

剩下的就比较简单了。下面是流程截图,关键的地方我会稍作解释。

磁盘

12个月免费的磁盘是型号为 p6 的 64GB 高级 SSD(本地冗余存储)。如果选错了是要收费的。后面一节会简单说一下费用。

Azure 免费12个月的Linux主机之选择磁盘

前面提到了 Azure 的服务粒度非常细。可能也正是因为这样,结构和操作才复杂,也支持更复杂的操作。如果免费期结束了还准备继续使用,选择的磁盘是可以在线转换为便宜的类型的,比如普通硬盘 s4。

网络

网络基本上按照提示页的默认就可以了,也可以给不同的资源选择适合自己分辨的名称。静态的公共 IP 的费用大约是不到 $3/月,不在免费的范围内。为了配合免费的虚拟主机,动态 IP 好像是免费的。但是我的资源列表里显示也是总共有 1500 小时的免费额度,所以没法完全确定。动态 IP 的个数限制为 50 个。

Azure 免费12个月的Linux主机之配置网络

上图最下面的「配置网络安全组」就是把自己的多个虚拟机分组,目的是配置不同的防火墙安全规则。所以新建的那个 az-www-nsg 就是安全规则。默认的规则开放了 22 端口的 SSH 服务,但是没有允许 ping。如果需要开放 ping 服务,需要添加入站规则以允许 ICMP 协议,如下图。

Azure 免费12个月的Linux主机之配置网络安全规则以允许ping

接受协议并创建

Azure 免费12个月的Linux主机之接受协议并确认

Azure 免费12个月的Linux主机之接受协议并确认

最后一步就是显示小时单价,然后我们需要填写姓名、电邮地址和电话并接受协议,确认之后就开始部署了。

配置云终端(Cloud Shell)

在控制面板右上角有个命令行终端的图标。使用它可以在网页上打开云终端,运行网页版的终端来使用 SSH 连接到自己的虚拟主机。但是它需要配合一个 Azure 共享存储空间来使用。只需要占用很小的存储空间,就算为了它再开个存储服务也是可以接受的。

Azure 云命令终端需要存储服务配合

Azure 云命令终端需要存储服务配合

点击「创建存储」即可立即创建一个存储服务并设定一个「文件共享」给 Cloud Shell 使用。

Azure 云命令终端界面直接创建存储服务并自动配置文件共享

Azure 云命令终端界面直接创建存储服务并自动配置文件共享

等待一会儿就可以把网页当命令行终端来使用了。

使用这个远程 SSH 管理虚拟机的好处是不容易被封虚拟机 IP。如果直接从本地 SSH 到远程主机,基本上几分钟就会被识别出 SSH 流量然后被中断连接。这样的次数多了,可能会被封掉端口,甚至直接屏蔽 IP。当然,在虚拟机上建个 SS 服务器专门用来代理这部分 SSH 连接也是可行的做法。

关于费用的一点观察

Linux 虚拟机并不限制只有一台

Azure 虚拟机计费按类型和时长,不是按照实例个数

从图上可以看到,我开的 3 台虚拟机都是按照 b1s – free 列出的,并且这三台都是 Linux 的,没有 Windows 的虚拟机。所以实际上,免费资源是按照 b1s 的总使用时长来计算,总共 750 小时/月。根据观察,关机状态是不计算虚拟机使用时长的。

Azure 虚拟机的流量费分本地和跨区

Azure 虚拟机的流量费分本地和跨区

在虚拟机的费用清单中还列出了出站数据流量费。似乎这个就是那个每月 15GB 的流量。也就是说,带宽的使用费被列到了虚拟机的价格中。还可以看到,虚拟机在所开区域(这里是日本东部 ja east)的出站流量是按照免费来计算的。但是跨区(比如我测试的从日本到亚洲,或者到欧洲)的流量都是单独计费的。因为只是放那里闲置着,一天下来总共的流量费用都没有超过 $0.01。奇怪的是其中有一个被我用来挂了个 SS 尝试跑 Youtube 分数了,7 天里有 5G 入站和 4G 出站,费用居然也是小于 0.01 美元。注意,入站的流量都是免费的。如果都是免费额度内的,就不该出现收费的情况;如果不同区域分开计算,这个流量费似乎也不太正确。Azure 上从日本东部到亚太东部的跨区流量费用是 $0.08/GB。而且 Azure 网站上也解释了,跨区费用要到 2022 年 7 月 1 日才会开始收取,

Availability Zones

Inter Availability Zone Data Transfer billing will start on July 1, 2022. Usage prior to July 1, 2022 will not be billed.

这个问题还没搞清楚。

看了十月份这两天的账单,可以确认跨区(inter region)的流量是单独计费的。即使总流量在免费额度内,这些跨区的流量也是要出现在账单里的。奇怪的是,如果没有升级付费帐户而一直使用试用订阅的话,难道就不让跨区使用了吗?

P4的SSD磁盘比S4的传统硬盘贵了大约4倍

Azure上2GB空间占用一天的费用

Azure上2GB空间占用一天的费用

即使在试用期,P4 和 S4 的磁盘也都是没有免费额度的。Azure 的磁盘是按照已经实际占用的容量而不是订购的最大容量来收费的。三台虚拟机基本都是装了系统但是没有使用,所以使用的容量是差不多的,都是 2GB 左右。所以 P4 的磁盘比 S4 的磁盘大约贵了 4 倍的样子。图中 S4 磁盘显示了磁盘操作费用,这个每月有免费额度,超出部分才收费。

总结:测算一下主机的综合价格

测算一个 Azure 主机的费用

测算一个 Azure 主机的费用

使用 Azure 的价格计算器,看了一下一台 B1s(1个 vCPU / 1GB内存),加上最便宜的 S4 硬盘,外加 25GB/月流量,还有一个静态 IP 和托管 3 个域名的总费用,大约是 $20.49/月。就算用上 Azure 主机目前一次购买三年的优惠价格,上面的主机配置还需要 $14.32/月的费用。想想 Linode 才收我 $5,还顺便提供很多 Azure 上都要收费的免费服务。也难怪 Linode 难以提供那么好的网络线路了。©

本文发表于水景一页。永久链接:<https://cnzhx.net/blog/trial-of-azure-vps/>。转载请保留此信息及相应链接。

雁过留声,人过留名

您的电子邮箱地址不会被公开。 必填项已用 * 标注

特别提示:与当前文章主题无关的讨论相关但需要较多讨论求助信息请发布到水景一页讨论区的相应版块,谢谢您的理解与合作!请参考本站互助指南
您可以在评论中使用如下的 HTML 标记来辅助表达: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>