对于MySQL在云中的使用,大致分为两类:
IaaS:基础设施即服务,IaaS 为你的MySQL server提供基础服务,你可以购买虚拟server资源来安装MySQL server 实例。你可以按照自己的要求设置os 和MySQL server,但是你不能与之相关的硬件设施。
DbaaS (Database as a Server)
MySQL 本身是云所管理的资源,你只有一个访问MySQL 的凭证,你只能对MySQL 进行设置,但是不能看到os和虚拟的资源。Amazon 的RDS就是这样一个例子,他们提供的服务不是真正的MySQL,只是和MySQL和查询语言兼容。
我们大部分集中在第一类。(我们的目标是帮助您避免您可能会遇到的一些缺陷,如果你不是一个MySQL在云端的专家。)
优点,缺陷,对云的误解
云计算有很多好处,其中一些是使用MySQL的时候特定的。
优点:
1、所有的基础设施都外包出去,不用未管理而费心,您不必购买硬件和开发供应链关系。不用替换坏掉的硬件等等
2、付费是按照自己的需求来说,可以将前期资本投入转换为当前项目运营上。
3、云服务器提供的价值随着时间而增加,因为他们会提供新的服务并降低成本。你不必做向升级服务事就能从他们的价值中获益。
4、对硬件资源管理方便,可随时增加或退订任何资源,省去处理或回收的成本。
5、云带来了对基础设施的重新思考与定位,资源可以通过API来展现,并且更加自动化。同样你也能搭建自己的私有云。
缺点:
1、资源是共享的并且不固定。我们获得的资源不能像我们付费那样公平的使用,并且云服务器也不能给出满意的答案
2、对于业务容量和可靠性是无法保证的。并不能完全按照自己业务需求来购买新的资源,可能会收到供应商资源限制或者“超额并购”
3、虚拟、共享的资源是不好进行故障排除。尤其是不能看到相关硬件设施并得知他们的状态。举例:当我们查看系统时,iostat 显示IO正常,vmstat显示CPU正常,当我们真正测试发现问题的时候是因为系统上的其他程序导致系统负载高。当出现问题的真的不好判断。