5) “杀手级”特性
直接用开源代码生成的产品功能几乎完全相同,因此,如何利用对开源OpenStack的理解和掌握,结合本企业的业务特长以及已有的产品,开发出杀手级的特性(如果更好的监控特性,更高的安全,面向AI的解决方案等),是每个OpenStack企业发行版的产品经理应该仔细考虑的问题。
6) 参考架构
经过测试的参考架构对客户来讲具有非常重要的意义,因为这将提升用户部署相似架构的信心。
在这方面,Red Hat提供了一个很好的榜样:General-Purpose Architecture, Compute-Focused Architecture, DataAnalytics Architecture, High-Performance Database Architecture, Cloud Storageand Backup Architecture, 和Large-Scale Web Application Architecture.
7) Day-2 解决方案
规划和部署一个OpenStack环境固然是一件不小的工作,但是并非部署完成就万事大吉。后面的运维工作对于保障私有云或公有云的正常工作至关重要,因此,一个良好的监控及Log集中管理方案必不可少。
目前来看,典型监控方案是利用Nagios或Zabbix来监控物理机器以及存储和网络,但是也有更灵巧化的开源方案,比如,在可用性方面采用Sensu RabbitMQ Uchiwa;在性能方面采用Collectd Graphite whisperdb Grafana;在Log的集中管理方面采用Fluentd ElasticSearch Kibana。
8) 混合云
一个现代的云数据中心中,物理机,虚拟机,容器大概率共同存在为业务提供服务;同时,用户的一部分业务或者数据可能运行在公有云上面;还有,很多客户可能有用VMware的虚拟机。这可能带来一个需求:要么用OpenStack统一纳管(这样可能需要进行大量的改造);要么结合用户的IT流程,提供一个额外的云管平台。
9) 安全
安全之于IT,如同空气之于人类。用户不一定时刻感知,但绝对是必不可少。在云计算的环境下,传统的安全威胁依然存在:SQL injection, DDOS攻击,病毒,恶意软件,木马,僵尸网络,身份入侵,暴力破解,以及网络,应用本身的漏洞,当然还有现在流行的APT攻击。
同时,云计算本身又扩大了安全攻击面,导入了新的安全威胁:
- 虚拟化和容器带来的安全问题:虚拟机边界缺乏保护,虚拟机逃逸,隐蔽信道,数据残留,流量不可见,容器共用内核;
- SDN带来的安全问题:控制器安全,API接口的安全,协议交互的安全以及数据转发面的安全。
在安全方面除了对OpenStack本身进行代码以及配置文件的静态和动态的检查以确保没有安全漏洞之外,还有如下几个方面:1)对虚拟机进行安全加固;2)对SDN网络进行构建虚拟防火墙,或者采取硬件防火墙。
构建一个OpenStack企业发行版是件可大可小的事情。三四个人的小团队把Horizon的界面进行修改,加上企业的标志,可成为一个OpenStack发行版;把OpenStack的代码进行测试和加固,按上面的8个方面进行增强,则需要更多的人力和更长的时间;完全拥抱OpenStack upstream代码是一种方式,比如Mirantis;也有企业部分采用OpenStack的代码再进行二次开发集成原有的解决方案。
归根结底,一切取决于企业的商业目标。