AWS 实例类型的选择对应用性能和成本都有关联, 所以选择合适的实例类型, 既能保证应用性能, 又节约成本, 获得最佳的性价比.
如果是本地迁移上云项目, 首先要做的是收集线下数据中心 X86 服务器的信息, 最基本的例如 CPU 核数, CPU 峰值利用率, 内存大小 (GB), 内存峰值利用率, 操作系统类型. 我们想根据这些基本信息估算一下在云上应该选择何种机型, 以及一年的费用大约是多少. 大多数客户在上云后都会购买一年标准 RI 实例以节省费用, 所以我们就以一年全部预付费标准 RI 的价格作为选择机型的依据. 选择机型的逻辑是: 满足内存和 CPU 需求的最便宜的机型.
当然, 由于我们买的是一年标准 RI 实例, 在一年之内不可改变机型配置, 所以也应该考虑预留一年的业务增长量. 因此, 在以上收集的基本信息的基础上, 我们还要加上两条: 我们期望的 CPU 利用率和内存利用率. 举例来说, 如果您目前的某个服务器的 CPU 和内存利用率是 90% 和 80%, 您预计在一年内业务会有 20% 的增长 (我们姑且认为业务增长与资源需求成正比), 当前的 CPU 是 4 核, 内存是 16GB. 如果你希望当业务增长 20% 后, 服务器的 CPU 和内存的利用率维持现状, 即 90% 和 80%, 选择的 EC2 机型应该在运行现有负载时的期望 CPU 利用率是 90%/1.2=75%, 期望的内存利用率是 80%/1.2=67%.
还有一点需要考虑的就是应用系统的特性, 是以计算能力为主的还是以内存大小为主. AWS EC2 最小的 CPU: 内存配比是 1:2, 最大的是 1:8.
? 如果是以计算为主的, 我们在选择服务器的时候只考虑满足 CPU 的计算能力, 我们会挑选满足计算能力的最经济的 EC2, 这时的 CPU: 内存配置至少是 1:2 (当然, 如果价格合适, 我们也会选择 CPU: 内存是 1:4 的机型. 但是, 前提条件是, CPU: 内存 = 1:2 的服务器已经可以满足内存需要).
? 如果是以内存为主的, 我们在选择服务器的时候只考虑满足内存的大小, 我们会挑选满足内存需求的最经济的 EC2, 这时的 CPU: 内存配置至少是 1:4 (当然, 如果价格合适, 我们也会选择 CPU: 内存是 1:8 的机型. 但是, 前提条件是, CPU: 内存 = 1:4 的服务器已经可以满足 CPU 需要).
? 当然, 你也可以要求同时满足内存和 CPU 的要求, 那么这时的选择逻辑就是同时满足内存和 CPU 要求的最便宜的 EC2 机型.
如果是新增的 EC2 需求, 如果没有可参照的数据, 我们可以先以经验进行估算, 然后通过 CloudWatch 对此实例进行监控, 设定 CPU, 内存, IOPS, 网络 监控值, 达到指定阈值后通知管理员调整. 也可以在 CloudWatch 中指定你关心的几个指标值重点监控, 经过一到两个业务峰值后根据监控结果再去评估实例的调整方案.
一般来说, 对于通用型计算需求, 并且负载是有明显高低起伏的应用, 例如 "web"" 小型数据库 " 等场景, 可以选择 T 系列实例类型以在性能和成本之间取得一个最佳平衡.
更多详细信息请参考: Amazon EC2 实例类型
- https://amazonaws-china.com/cn/ec2/instance-types/
- ![]
来源: http://www.bubuko.com/infodetail-3460173.html