九州云实战人员为您揭秘成功部署OpenStack几大要点
OpenStack的技术呈现了多样化状态,比如计算虚拟化、存储虚拟化、网络虚拟化、容器和超融合等都需要有相应的涉猎和技术储备,同时这些技术基于传统基础架构体系,但是又有别于传统解决方案。这就要求我们需要具有识别OpenStack平台本身的能力、理解所承载应用以及优化云平台的能力、改造迁移现有应用的能力[w1] 。
准确识别OpenStack平台四大能力
- 企业在落地云计算的时候,OpenStack作为一个开源解决方案,会遇到产品Bug、调优和组件选型,需要面对OpenStack的复杂性和部署困难的问题。
- 传统应用的高可用依赖于基础架构,OpenStack云平台如何实现平台自身高可用以及业务的高可用,同时面对互联网场景下的双态应用模式,需要解决传统业务的上云,又要满足基于容器的微服务架构实现。
- 在满足云平台的功能性需求的同时,还需要解决非功能性需求:异构环境的统一纳管,基于应用的性能要求,不可避免的云安全要求和数据中心内及数据中心之前的灾备和双活需求。
- OpenStack在上线及上线后相关的升级、运维能力的技术和人才储备。上线过程中的业务迁移,例如:P2V和V2V的能力等[w2] 。
直面问题解决问题,轻松部署OpenStack
针对以上遇到的上线投产要求和迁移升级需求,提供一些例子供大家参考:
- 从云平台的扩展能力和稳定性上来看,需要解决大规模使用过程中RabbitMQ队列堵塞的问题,可以通过基于新版本OpenStack Cell V2的架构实现云平台控制端相关服务的基于物理服务器的拆分和管理。同时根据集群的规模进行RabbitMQ的配置文件调优。
- Memcache的Token默认存储是64M,基于标准配置,如果有大量的API访问请求,就会造成memcache 存储不足 Token 被剔除,因此过期。所以需要根据云平台的实际情况进行优化调整,实现配置最优。
- MongoDB 默认配置是不限制内存使用的,在实际使用的过程中会消耗特别大的内存,这块需要进行限制。
- 在业务迁移场景下,需要保证原网络和迁移后的网络完全一致,存储数据不丢失、业务正常。为避免解决DHCP的混乱情况,系统需要建立独立的DHCP来进行迁移。
针对大型企业,我们可以提供面向内部的私有云,主要根据具体不同的业务需求,采用不同的可定制化的解决方案,比如存储的多样性定制化、网络的复杂多样性定制化、以及虚拟化层面不同类型的相互分离等等。另外,可以定制化内部私有云以及与公有云构建混合云的机制。这样不仅满足了内部云化的诉求,而且也解决了混合云对不同的业务需求进行不同管理的问题。
得力于OpenStack的快速发展,九州云实现了基于Ocata版本的OpenStack发行版,实现了容器化部署OpenStack的能力,解决了企业快速部署、升级和调优的问题,从而使得云平台可以大规模部署和扩展,提高企业基于云平台的业务连续性。同时为解决业务性能的不同需求,需要实现异构存储、异构SDN的纳管和定制化开发解决方案,从而满足不同规模的企业用户,以及存在存量异构设备的云化。例如:VMware、Nutanix、EMC Vplex等的纳管和集成。
九州云基于Ocata版本的OpenStack发行版
对于中小企业,我们提供了完整的基于通用业务的一套统一的私有云架构,采用统一的分布式存储、KVM虚拟化,OVS网络虚拟化的产品和解决方案,能够实现快速部署云平台及投产使用。
与此同时,为了企业能够驾驭OpenStack,九州云注重技术能力的输出,提供了丰富的OpenStack开发、使用和运维的培训。例如COA培训,通过培训,解决企业在部署和使用OpenStack的时候具有足够的技术和人才储备。
六大核心技术凸显九州云OpenStack实力
我们现有的核心技术包括以下几个方面:
- PaaS技术能力:支持云应用和PaaS平台的对接整合能力,实现IaaS的标准化接口为PaaS服务。
- 容器技术能力:基于容器化部署OpenStack的能力,实现原子化升级和快速部署扩展云平台能力。
- 运营服务能力:支持用户自助管理、应用商店、计费计量、配额分配、请求报障等云平台运营功能。
- Devops技术:基于OS技术的需求,具备源码,审查管理、应用构建及发布能力的DevOps模式。
- 超融合:能够实现基于开源技术的超融合架构的实现及大规模机柜部署,能够纳管商业超融合产品。
- NFV能力:以开源项目为基础,对网络关系及业务服务链的定义。具备部署、配置、监控、灵活编排NFV和异构区域RI的管理。
目前,我们通常采用的云架构主要是采用统一性的分布式存储,同时结合商业存储及超融合技术实现多样的后端虚拟化相互结合管理、多样的SDN网络模式。另外还有对于整个云环境的服务容器化,也为后续的无缝升级提供了保证。
在开发过程中,我们从最初的G 和H版本开始演化,到I版本这一较稳定的版本,在实际的开发过程中从Nova、Neutron到Cinder、Kolla,Swift、Trove等,从GlusterFS到Ceph的演进,在整个过程中,主要针对不同的OpenStack使用场景进行了大量的测试以及功能的改进,再针对具体的客户需求进行功能增加,包括多重服务的三节点的HA等。
成功部署OpenStack的经验之谈
OpenStack的成长以及整个云机构功能的演进都离不开客户的需求,有了不同的需求,才可以将整个云做的更加完善。
1、经验之谈
- 前期做好和客户的技术交流,以及需求收集。获取客户对于云平台的期望,根据技术发展和OpenStack组件的成熟度,逐步构建。
- 确定客户的业务形态,以及业务规模和后续的增长量。
- 根据不同的需求和业务形态采用不同的网络模式,以及增长量等判断分离以及超融合的架构模型。
2、教训之谈
- OpenStack的升级是一件大事,需要严谨的测试。
- OpenStack是开源软件,不可避免的会出现Bug等,要积极的与社区进行结合,完善整个过程。
- OpenStack 核心组件目前比较成熟,但更多的衍生组件还不是很完善,希望OpenStack能不断的产生更好更有用的功能,将整个OpenStack的框架做的越来越好,降低OpenStack的复杂度,提升适应性。
【作者介绍】
杨亚鹏 九州云99Cloud云计算产品服务工程师
Freezer项目核心开发者,带领九州云99Cloud实现全球 贡献第二,熟悉Ceph, GlusterFS, SaltStack