Eucalyptus的可维护性

By , January 16, 2013 3:43 am

译者注:

最近Eucalyptus公司的联合创始人Graziano Obertelli连续写了几篇关于云服务的可维护性方面的博客文章。译者读后觉得很受启发,并决定花点时间将这几篇文章翻译成中文。这些博客文章的原始出处如下:

[1] http://gobertelli.blogspot.com/2012/12/its-maintainability-stupid.html
[2] http://gobertelli.blogspot.com/2013/01/maintainability-and-eucalyptus.html
[3] http://gobertelli.blogspot.com/2013/01/will-my-internet-be-faster.html

最近我写了一篇博客文章讨论私有云的可维护性为何重要。在这篇文章中,我列出了成功部署一朵私有云需要采取的一些措施,并在部署和维护阶段用Eucalyptus作为IaaS管理软件的例子进行了讨论。

部署(Deploy)

我已经提过我们做很多工作,使得Eucalyptus的安装更加容易,在这里我做一个简单的小结。Eucalyptus为主要的Linux发行版制作了安装包,只需要简单配置一下软件仓库,就可以用yum install或者apt-get install命令来完成软件安装。Eucalyptus的配置还是稍微有点复杂,需要将各个组件进行注册,但是这些步骤是可以自动化的(在FastStart里面各个组件就是自动注册的)。

显而易见,对完美的追求是永无止境的。不过我敢说,从分布式系统的角度来看,我们已经已经把安装过程做得尽可能简单。此外,优秀的系统管理员们都在用软件来管理基础设施。所以,我认为能够用脚本来定制化并管理安装过程是至关重要的(例如Eucalyptus可以用ansiblechefpuppet来定制化和管理安装过程)。

维护(Maintain)

如果你关注我们的最新进展的话,你可能已经知道我们最近发布了Eucalyptus 3.2版本。RichMarten通过博客对这个版本进行了一些描述,DavidAndrewKyo也通过博客对某些特性进行了详细说明。作为一个云管理员,我觉得他们的博客文章并没有详细说明我们在改善Eucalyptus的可维护性方面所做的努力。

Screenshot from 2012-12-30 14_23_32
在Eucalyptus 3.2中修复的缺陷

Eucalyptus 3.2修复了350个缺陷 - 这里我指的是那些被记录在案的缺陷,还有一些缺陷是我们在对代码进行重构的时候直接修复的。各位可能注意到大部分的缺陷是与新特性相关的,但是还有大量的缺陷是与Eucalyptus的健壮性(也就是可维护性)相关的。不相信吗?我可以举几个例子:

  • 重写了存储控制器(Storage Controller,SC)的部分代码,防止云管理员意外地配置了一个不希望被使用的后端存储;
  • 为高可用(HA)功能增加了安全机制,防止云控制器(Cloud Controller,CLC)精神分裂(译者注:也就是两个云控制器都以为自己才是老大);
  • 为孤儿实例(如果节点控制器由于某种意外不能够及时地将该节点上的实例信息更新给云控制器的话,该节点上的实例可能成为无人照看的孤儿实例)提供了更健壮的处理方法;
  • 修复了内存泄漏和数据库连接池泄漏的问题(在特定的应用场景下,这样的缺陷可能需要重启某些组件,估计大家都不会喜欢的)。
你可能会觉得我们新的用户界面很酷。我认为这也是一个强大的基础设施令人喜欢的特性之一。
euca-console-dashboard
用户界面的屏幕截图,借用自David的博客

改进的空间(Are we there yet?)

前面我已经说过,对完美的追求是永无止境的。我们在Eucalyptus 3.2版本中的主要工作在于扩大质量测试(QA)的范围、使得代码更加健壮,能够适应更多的应用场景。这些工作对于大部分人来说是不可见的,但也正是这些工作使得一个基础设施能够经受时间的考验。
这些不可见的工作完成之后,我们接下来的工作就更容易理解和分类了。在Eucalyptus 3.3版本的研发计划中,我看到了许多令人期待的特性,例如自动扩展(AutoScaling)、 云监控(CloudWatch),以及弹性负载均衡(ELB)。如果你特别需要某个特性,请你告诉我们,或者在我们的缺陷跟踪系统中给这个特性投上一票。我们不会因为不断地增加新的特性而忘记了一个基础设施的根本。譬如说,我们在维护模式(Maintenance Mode)以及网络方面的工作能够使得我们更好地管理云计算资源,例如VM类型(vmtypes)和标签(tagging)。
还有其他改进的空间吗?我在前一篇博客文章里面提到,除非是一个基础设施已经被废弃,不然的话总有事情要做。的确,我们还有很大的改进空间,不过我们现在已经挺好用的。

Leave a Reply

Panorama Theme by Themocracy