当您创建或变更部署环境时,Web+可以创建或导入已有ECS实例来运行您开发的各类平台的应用,您可以在 Web+控制台中修改您的部署环境的ECS实例配置。
背景信息
在Web+中您可以代购或导入ECS实例。当选择代购时,您可以设置付费模式、实例数量、安全组、密钥对、系统盘及是否启用公网IP等配置项;当选择导入时,您可以从展开的列表中选择您当前已有的ECS实例并导入。
对于一个环境,你只能选择代购和导入其中之一。当从代购变成导入时,已代购的ECS实例会被释放;当从导入变成代购时,已导入的ECS实例会被解绑并清理Web+相关配置,但不会释放该ECS。
代购ECS实例
代购模式简介
当您选择代购时,Web+将会为您创建ECS实例,付费模式默认为按量付费。如您的环境长期运行,为降低费用,建议选择包年包月付费模式。另外,对于已有的按量付费实例,您也可以通过ECS控制台将其转换为包年包月实例。
- 实例规格
- 系统盘缩容
对于按量付费ECS实例,当释放部署环境或进行缩容时,Web+默认会释放ECS,ECS上的数据会被删除。如您已通过ECS控制台将ECS实例转换为包年包月模式,则Web+不会将ECS实例销毁或停机,您需登录ECS控制台自行手动释放该实例。
您也可以通过CLI来设置按量付费ECS的释放策略为停机不收费模式,在此模式下释放ECS时,vCPU、内存和公网IP将不再产生费用,云盘会被保留并收取少量费用。您可以登录ECS控制台备份数据,然后将释放云盘。
对于包年包月ECS实例,当释放部署环境或进行缩容时,Web+只会从部署环境中解绑相应实例,不会对其进行销毁或停机。您可以登录ECS控制台对其进行后续的管理。
代购模式配置
- 在部署环境配置页面展开主机实例。
- 选择实例来源为代购。
- 选择实例付费模式。
您可以选择按量付费或包年包月付费模式。
- 对于按量付费模式,实例按使用量进行后付费,在环境释放或缩容时会被删除,适用于短期使用场景。
- 对于包年包月模式,实例按预付费时长进行付费,价格相对更便宜,在环境释放或缩容时不会被删除,适用于长期使用场景。
- 配置实例规格。
您最多可以选择10个实例规格。Web+会根据您选择规格的先后顺序,优先使用最先选择的规格来创建ECS实例,当其中一部分实例规格没有库存时,会使用其余的实例规格来创建ECS。在变更环境时,如果当前环境中ECS规格不在配置的规格列表之内,Web+会创建新ECS并替代当前ECS。
- 配置实例数量。
对于单个部署环境,您可以设置0~100个实例。如果设置的数量比已有的实例数量少,那么Web+将会进行停止并释放实例;如果设置的数量比已有的实例数量多,那么Web+将会为您创建新的ECS。
当释放部署环境或缩容ECS实例时,Web+默认会释放ECS。您可以通过CLI来设置ECS实例为停机不收费模式,在停机不收费模式下,vCPU、内存和公网IP将不再产生费用,云盘会被保留并收取少量费用。Web+也支持释放环境来管理ECS,这样当释放环境或缩容ECS实例时,Web+会释放ECS实例。除控制台操作外您还可以通过CLI来使用释放ECS实例。
对于大规模、高可用的应用,您应该至少创建2个ECS实例,这样能在一部分ECS实例或程序发生问题时,会有多余的ECS实例仍然能提供服务。
- 设置安全组。
对于每个部署环境,Web+会自动创建一个相应的安全组,该安全组默认开通80和22端口的公网访问。您可以对此安全组的规则进行修改,譬如限制公网访问22端口的IP。Web+创建此默认安全组后不会对其进行修改,因此您如果手动修改其规则,请确认您所修改的规则不会影响到正常的业务流量。
除了默认安全组之外,您也可以设置额外的安全组。当提交变更后,Web+会将已有的ECS实例加入到您所指定的安全组中;新创建的ECS实例除了加入默认安全组之外,也会加入到您所设置的安全组。
- 设置登录凭证。
如果您希望SSH到Web+所创建的ECS实例上,那么您可以设置密钥对或者密码。提交变更后,Web+将会更新您的登录凭证。如果登录凭证为密钥对,则更新完成后您需要自行重启实例以使其生效。
- 设置系统盘大小。
Web+创建的ECS实例系统盘默认采取高效云盘(cloud_efficiency),大小为100GB。您可以修改系统盘的大小,但修改范围需设置在40GB~500GB之间。如果扩容系统盘时,Web+会直接更新您当前实例的系统盘规格以满足需要;如果缩容系统盘,Web+会创建带有新系统盘的ECS实例来替换当前的ECS实例。
- 启用公网IP。
当您启用公网IP时,Web+会创建带有公网IP的ECS实例,否则将创建无公网访问的ECS实例。
导入ECS实例
导入模式简介
当您选择导入时,您可以选择当前已有的ECS来进行导入。在导入时,Web+会检测您的ECS系统是否满足要求,如满足要求则可以直接导入,否则Web+需要重装该ECS的系统盘以提供服务。对于需要重装系统的ECS实例,请您手动备份数据后再进行提交变更操作。
当释放部署环境时,对于导入的ECS实例,Web+只会清理与Web+相关的配置,不会释放该ECS。
导入模式配置
- 在部署环境配置页面展开主机实例。
- 选择实例来源为导入。
- 在ECS实例列表中选择您已有的非Web+托管实例进行导入。
注意 如果ECS实例前面没有选择框,表示该ECS实例已导入Web+。
使用CLI配置ECS实例
CLI配置ECS需要通过Wpfile文件来进行,您可以通过wpctl dump命令来获取部署环境的Wpfile文件。您可以增加、修改或删除ECS的配置项,然后通过apply命令使其生效。
Wpfile文件中ECS配置项归类在resources.ecs.autoScaling下,配置项为:
配置项 | 有效值 | 默认值 | 描述 |
---|---|---|---|
imported | true / false | false | 是否导入ECS |
instanceChargeType | PrePaid 、PostPaid | PostPaid | 付费模式 |
periodUnit | Week、Month | Month | 包年包月实例时长单位 |
period |
|
1 | 包年包月实例时长 |
instanceNum | 0 ~ 100 | 1 | 所需的ECS数量 |
instanceType | 实例规格列表,YAML格式 | 无 | 实例规格列表 |
instanceIds | ECS实例ID列表,YAML格式 | 无 | ECS实例ID列表 |
securityGroupIds | 安全组ID列表,YAML格式 | 无 | 安全组列表 |
loginCredential | Password、Keypair、None | None | 登录凭证 |
password | 字符串 | 无 | ECS实例的密码。长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。特殊符号可以是:()` ~!@#$%^&*-_+=\|{}[]:;'<>,.?/ |
keyPairName | 密钥对名称 | 无 | 密钥对名称 |
systemDiskSize | 40 ~ 500 | 100 | 系统盘大小 |
enableInternet | true / false | true | 是否启用公网IP |