1.问题背景
团队开发了一个用于大件车辆运输桥梁安全评估和桥梁实时检测的计算服务。提供服务的底层软件是一个国产桥梁计算分析软件,技术古早,跨平台能力几乎为0,但是又有很高的专业门槛,有加密措施,对服务器硬件信息检测都比较严格,如果一台服务器上部署多个计算服务,很容易死给你看,所以不得不采用集群计算的方案来满足大规模批量分析不同桥梁受力情况的需求。由于这个服务的目标客户群是zf部门,老板觉得变现难度大,不乐意多投资,不得不采用这个穷鬼方案来降本增效。
阿里云目前产品定价宣销模式类似电信企业,以吸引新客户为主,然后有针对性的采取套餐升级等手段达到利益最大化。根据互联网垄断企业近些年风评,ft会员恐存在比较突出的杀熟问题。因此以企业客户身份增购,不是产品层次过高价格过高,就是没有很高的折扣力度购买到配置已够运行计算服务实例的服务器;以老用户身份增购没有新人用户那么好的优惠的政策,依然不够经济;充VIP获取优惠券也不是持久方案。阿里云有很多新客户优惠,个人用户又有比较合算的体验套餐,新客户优惠力度长期在2折以下。虽然每个账户限购3~5个ECS实例,但是阿里云提供了跨账号内网互通的技术途径,这使得“散户”也有搭建覆盖面很广的集群计算网络的可能性。
综上,短期内当部署在阿里云上的计算服务算力不足需要增加ECS实例时,挑选若干名有实名认证支付宝账号,但未申请过阿里云账号的员工或员工家属,在非本公司局域网上(用手机注册,或手机放热点给电脑,网页上注册,不接单位的网络,包括WiFi)以新用户身份,满限购数量申购部署在早先部署的同区域的同类型云服务器,再根据本文以下步骤加入单位的云企业网。实现与主账号VPC内网互通后,新购的ECS实例就可为计算评估系统提供算力。已有账号合约期满后,如果续费没有优惠,但依然要较迫切的节约成本需求,可采用新人新购方式替换算力。
2.网络规划
首次部署时需要对网络进行规划,请先熟悉阿里云专用网络VPC和云企业网CEN搭建的网络的结构,参考以下链接:
- VPC:
专有网络VPC的网络规划_专有网络VPC(VPC)-阿里云帮助中心
- CEN:
如何使用云企业网实现跨地域网络实例互通_云企业网(CEN)-阿里云帮助中心
由于一个专有网络实例只能唯一加载到唯一个云企业网实例内,因此使用个人账户ECS搭建的阿里云云企业网只能是星形网络结构。
图2.1 阿里云星状态局域网部署图
3.阿里云账号设置
本章节主要讲解如何搭建图2.1所示的虚拟局域网,所有操作都在阿里云控制台完成,实现阿里云的跨账号VPC互通核心路径就是图2.1中红色箭头部分。
3.1子账号设置
(1)登录子账号
(2)创建ipv4专有网络VPC
可以在购买ECP服务器时就设置好,详细教程参考以下链接中的步骤一:
如何搭建IPv4专有网络_专有网络VPC(VPC)-阿里云帮助中心
以本项目主账号华东2(上海)可用区G上ECP服务器为例,子账户的配置专用网络时特别注意事项如下表,没有强调的配置按默认值填即可。
配置 | 说明 |
专有网络VPC | |
地域 | 必选华东2(上海),否则需要购买跨地域宽带包才可实现VPC互通 |
IPv4网段 | 必须和主账号的网段不一致,不建议使用高级配置网段,容易出现配置错误 |
交换机VSW | |
可用区 | 未购买ECP或其他云资源实例前随意选区,购买后新建的一定要在选择ECP所在可用区时和主账号的一致,选可用区G。 |
IPv4网段 | 必须是VPC网段的子集,不可与主账号的VSW网段相同,保险起见,所有子账号的VSW网段都不能相同,例如子账户1用了172,子账户2就用175,以此类推 |
(3)创建安全组
同样可以在购买ECP服务器前就设置好。
进入专有网络控制台,点击上一步创建的VPC实例,进入资源管理配置表,从网路资源中的安全组处进入安全组定义页面。
按照计算服务使用到的功能添加端口范围,本项目用到了以下功能:
协议类型 | 端口范围 | 描述 |
自定义 TCP | 1024/65535 | SMB读写端口,用于访问主账号下挂载的文件系统 |
自定义 TCP | 2121/2121 | 项目自己约定的文件读写端口号 |
自定义 TCP | 5672/5672 | Rabbitmq 端口,项目用了Rabbitmq来管理计算任务 |
(4)更换ECS实例VPC
如果是在上述步骤完成后才购买ECS实例,可不进行本项设置。
进入云服务器ECS控制台,打开实例与镜像,点击实例,按照以下步骤打开更换专有网络菜单,按照提示将选中的实例迁移到新建的VPC,VSW和安全组下,完成设置先观察ECS实例的内网IP是否发生改变,IP地址是否均落在目标VSW的网段内,如果是,则说明设置正确,此时可启动实例。
(5)创建子账号的云企业网CEN实例
参考链接创建实例:
步骤二:创建CEN实例-阿里云帮助中心_(CEN)-阿里云帮助中心
按照创建窗口默认提示一般会把子账号内新建的VPC绑定到新建的CEN上,完成CEN后一定记得解绑VPC,因为一个VPC只能绑定到一个CEN上,而多个VPC绑定到一个CEN上才能实现内网互通。
(6)授权主账号云企业网CEN实例绑定子账号的VPC
前提条件是主账号已根据上一步骤创建好了CEN实例,参考链接中加载跨账号网络实例的步骤将主账号的云企业网加入到授权列表中。
步骤三:加载网络实例-阿里云帮助中心_(CEN)-阿里云帮助中心
至此,主账号单向访问子账号ECS实例的基础就打好了。
3.2 主账号设置
按照子账号设置的步骤创建好VPC,VSW和安全组,按需完成ECS资源的迁移。
(1)创建主账号云企业网CEN实例
仅首次部署或者主账号替换时需要创建实例,创建方法同创建子账号的云企业网实例,唯一不同的是,主账号不需要卸载本账号创建的VPC实例,但需要将所有子账号的网络实例加载到本账号创建的CEN实例下。
加载步骤是,进入云企业网控制台,点击目标云企业网实例,进入网络实例管理,点击加载网络实例,然后打开跨账号tab,页面如下图所示,按照提示将子账号的VPC实例加载到主账户的CEN实例下。
(2)授权子账号云企业网CEN实例访问主账号VPC实例
方法同授权主账号云企业网CEN实例绑定子账号的VPC,就是将所有子账号的云企业网CEN实例加载到主账号专有网络VPC实例云企业网矿账号授权列表中。
至此,主账号和子账号之间就实现了VPC内网互通,也就是实现了图2.1所示的局域网。