2021-01-05 09:44:56 阅读(245)
背景:OpenStack用户OpenStack开源的特点,远在天边,近在眼前,使其普及速度远快于想象。尤其受到电子商务的欢迎。携程是中国典型的OpenStack用户,自2012年以来一直在建设私有云。目前,该公司在OpenStack基础上部署了1000多个虚拟桌面,未来计划部署1.3万个。此外,爱奇艺也是参与OpenStack的用户。2012年,爱奇艺加入中国开源云联盟,与英特尔、新浪等企业开发OpenStack项目。目前,爱奇艺已成为中国视频行业最大的OpenStack技术应用程序,已应用于内容制作、广告、账户管理、用户支付和大数据分析。 不仅如此,京东商城还利用OpenStack平台接入了大量在线业务,实现了自动部署OpenStackHA、桌面云(CallCenter)以及ElasticscalingELB等功能。其中,在线业务和calcenter都是需要保持高度稳定的服务。JD.COM在OpenStack应用部署方面做出了相当大的努力,克服了OpenStack版本迭代过快和bug问题,达到了商业化运营的效果。 除JD.COM外,网易还利用OpenStack建立了自己的私人云网络服务,提供云主机支持,并将网易相册、博客等访问量较大的服务转移到云平台。目前已稳定运行近一年,中间经历了在线平稳升级和10多款新产品上线。此外,网易还根据产品自身的业务特点,开发了监控、报警、运维自动化等新功能。OpenStack简介OpenStack是一种开源IaaS实现,它由一些相关的子项目组成,主要包括计算、存储和网络。由于Apache协议的发布,自2010年项目成立以来,有200多家公司加入了OpenStack项目,包括AT&T、AMD、Cisco、Dell、IBM、Intel、RedHat等。目前,OpenStack项目的开发人员有17万人 ,来自139个国家,这一数字仍在增长。OpenStack与部分AWS接口兼容,同时还提供OpenStack风格的接口,以提供更强大的功能(RESTFulAPI)。与其他开源IaaS相比,松耦合、高可扩展性、分布式、纯Python和友好活跃的社区非常受欢迎。每六个月的开发峰会也吸引了来自世界各地的开发商、供应商和客户。OpenStack的主要子项目有:网易私有云使用Nova、Glance、Keystone、Neutron这四个组件。Compute(Nova)OpenStack的核心是提供计算虚拟化服务,负责管理和创建虚拟机。设计成便于扩展,支持多种虚拟化技术,并可部署在标准硬件上。ObjectStorage(Swift)提供对象存储服务,是一种分布式、可扩展、多副本的存储系统。BlockStorage(Cinder),提供块存储服务,为OpenStack虚拟机提供持久的块级存储设备。支持Ceph、EMC等多种存储后端。Networking(Neutron)提供网络虚拟化服务是一种可拔插、可扩展、API驱动的服务。Dashboard提供图形控制台服务,方便用户访问、使用和维护OpenStack中的资源。Image(glance)提供镜像服务,旨在发现虚拟机磁盘和镜像的注册和交付。支持多种后端。Telemetry(Ceilometer)OpenStack计费功能可以通过提供用量统计服务轻松实现。Orchestration(Heat)OpenStack中的许多组件集成,类似于AWS的CloudFormation,允许用户通过模板管理资源。Database(Trove)databasee基于OpenStack构建-as-a-service。网易私有云平台概况图1。网易私有云架构网易私有云平台由网易杭州研究院开发,主要提供基础设施资源、数据存储处理、应用开发部署、运维管理等功能,满足公司产品测试/上线的需求。图1显示了网易私有云平台的整体架构。整个私有云平台可分为三类:核心基础设施服务(IaaS)、基本平台服务(PaaS)以及运维管理支持服务,目前包括云主机(虚拟机)、云网络、云硬盘、对象存储、对象缓存、关系数据库、分布式数据库、全文检索、消息队列、视频转码、负载平衡、容器引擎、云计费、云监控、管理平台等15项服务。网易私有云平台充分利用云计算开源的最新结果,基于OpenStack社区的keystone、glance、nova、云主机和云网络服务是neutron组件研发部署的。为了深入整合其他服务(云硬盘、云监控、云计费等),满足公司产品使用和运维管理的具体需求,我们的团队在社区OpenStack版本的基础上独立开发了云主机资源质量保证(计算、存储、网络QOS)、镜像分块存储,云主机心跳报告,flat-在dhcp模式下,租户内网隔离等20多个新功能。与此同时,我们的团队在日常运维OpenStack和社区升级新版本中也总结了一些部署、运维规范和升级经验。两年多来,网易私有云平台OpenStack团队的研发坚持开源开放的理念,始终遵循"来源社区,回馈社区"的原则。在免费享受OpenStack社区不断开发新功能、修复bug的同时,我们的团队也积极为社区做出自己的贡献,帮助OpenStack社区的发展壮大。在过去的两年里,我们的团队向社区提交了近100个新功能开发/bug修复的commits和50多个社区bug修复。这些社区贡献涉及到Openstack的essex、Folsom、Havana、Icehouse、版本,如Juno。由于OpenStack的日益稳定和成熟,私有云平台已经稳定运行了两年多,为网易多达30家互联网和游戏产品提供服务。从应用效果来看,基于OpenStack开发的网易私有云平台实现了以下目标:提高公司基础设施资源利用率,降低硬件成本。以物理服务器CPU利用率为例,私有云平台将CPU平均利用率从不到10%提高到50%。提高了基础设施资源管理和运维自动化水平,降低了运维成本。借助Web自助资源的应用和分配以及云平台的自动部署服务,系统运维人员减少了50%。提高了基础设施资源的使用灵活性,提高了产品业务波动的适应性。私有云平台可以利用虚拟化技术将物理基础设施制成虚拟资源池,通过有效的容量规划和按需使用,很好地适应产品突发业务。在具体的生产环境中,为了兼顾性能和可靠性,keystone后端使用Mysql存储用户信息,并使用memcache存储token。所有服务都是为了减少对keystone的访问压力(nova,glance,neutron)keystoneclient均配置memcache作为token的缓存。由于网易私有云需要部署在多个机房中,每个机房在地理位置上自然隔离,这是上层应用的自然灾害容忍方法。此外,网易私有云还需要同时支持两种网络模式,以满足私有云的功能和运维需求:nova-network和neutron。针对这些需求,我们提出了企业级多区域部署方案,如图2所示。总的来说,多个区域之间的部署相对独立,但可以通过内网进行交换。每个区域包括一个完整的Openstack部署,因此可以使用独立的镜像服务和独立的网络模式,如区域A使用nova-network,区域B使用neutron,不相互影响,此外,为了实现用户的单点登录,区域间共享keystone,网络模式和地理位置是区域划分的主要依据。图2。多区域部署方法不同于典型的OpenStack部署,将硬件分为计算节点和控制节点。为了充分利用硬件资源,我们努力将部署设计成对称的,即任何节点的离线都不会影响整体服务。图2。多区域部署方法和典型的OpenStack部署将硬件分为计算节点和控制节点。不同的是,为了充分利用硬件资源,我们试图将部署设计成对称的,即任何节点离线都不会影响整体服务。因此,我们将硬件分为两类:计算节点和控制节点。计算节点部署nova-network,nova-compute,nova-api-metadata,nova-api-os-compute。除了计算节点的服务,控制计算节点还部署了nova-scheduler,nova-novncproxy,nova-consoleauth,glance-api,glance-registry和keystone,如图3所示。nova为外部API提供服务-api-os-compute,nova-novncproxy,glance-api,keystone。这类服务的特点是无状态,可以方便地横向扩展。因此,这类服务部署在负载均衡HAProxy后,Keepalived用于提高可用性。我们没有使用nova,以确保服务质量和维护方便-api,但分为nova-api-os-compute和nova-api-分别管理metadata。在外部依赖方面,网易私有云部署了高可用RabbitMQ集群、主备MySQL和memcache集群。图3.计算节点,控制计算节点网络规划,网易私有云主要使用nova-networkFlatDHCPManager multi-host网络模式分为虚拟机fixed-ip网络、内网浮动IP网络和外网网络。在运维方面,利用网易自主研发的运维平台进行监控和报警,功能与Nagios相似,但更强大。更重要的监控报警包括日志监控和过程监控。当日志监控保证服务异常时,第一时间发现进程监控保证服务正常运行。此外,网易私有云使用Pupet进行自动部署,并使用StackTach帮助定位bug。OpenStack各组件配置OpenStackHavana配置数百个,大部分配置都可以使用默认值,否则仅仅理解这么多配置的含义就足以让运维人员崩溃,尤其是那些不熟悉源代码的运维人员。以下将列出网易私有云中的几个关键配置项目,并解释它们如何影响服务的功能、安全性和性能。Nova关键配置my__ip=这个内网地址是用来在宿主机上生成novametadatapi请求转发iptables规则的,如果配置不当,通过169.254.169.254IP,虚拟机无法获取ec2/openStackmetadata信息;生成的iptable规则如下:-Anova-network-PREROUTING-d169.254.169.254/32-ptcp-mtcp--dport80-jDNAT\--to-destination${my_ip}:8775的另一个用途是虚拟机在resizeze、coldmigrate等操作时,与目的端宿主机进行数据通信。该项目的默认值为宿主机的外网IP地址,建议改为内网地址,避免潜在的安全风险。该项目的默认值为宿主机的外网IP地址,建议改为内网地址,避免潜在的安全风险。metadata_listen=内网地址这个项目是nova-api-从上述iptables规则可以看出,metadata服务监控的IP地址与my_ip的配置项有关,保持一致是最明智的选择。novncproxy_base_url=vncserver_proxyclient_address=${private_ip_of_compute_host}vncserver_listen=${private_ip_of_compute_host}novncproxy_host=${private_ip_of_host}novncproxy进程只在一些节点上部署,并将这些过程添加到HAProxy服务中,实现novnc代理过程的高可用性,多个HAProxy过程使用Keepalived实现HAProxy的高可用性,对外只需要暴露Keepalived管理的虚拟IP地址:这种部署方式的优点是:1)实现novnc代理服务的高可用性;2)不会暴露云平台相关节点的外网地址;3)容易扩展novnc代理服务,但也存在一些不足;1)虚拟机监控其计算节点的内网IP地址;一旦虚拟机与宿主机的网络隔离出现问题;所有虚拟机的VNC地址接口都会暴露出来。2)在线迁移会遇到问题,因为VNC监控的内网IP不存在于目的端计算节点
以上就是关于可借鉴经验:网易运用OpenStack部署云计算平台的相关介绍,更多可借鉴经验:网易运用OpenStack部署云计算平台相关内容可以咨询我们或者浏览页面上的推荐内容。我们将让你对可借鉴经验:网易运用OpenStack部署云计算平台有更深的了解和认识。
推荐阅读
最新文章
猜你喜欢以下内容:
一 客户顾问-张三 一