OPENSTACK在小米的实践


OPENSTACK在小米的实践 潘晓东 OPENSTACK项目 . 目标: -- 为公共及私有云建设提供一个开放、简单易实现、高可扩展性的云计算平台 . 特征: -- 开放源码,社区活跃,大量公司参与开发 -- 组件化,除开核心组件,其他组件可以选择安装 -- 软件逐渐成熟,变得庞大和复杂 核心项目组件 . Compute (Nova) . Networking (Neutron) . Block Storage (Cinder) . Object Storage (Swift) . Identity (Keystone) . Image Service (Glance) . Dashboard (Horizon) OPENSTACK组件 OpenStac k AWS Nova EC2 Neutron VPC Swift S3 Cinder EBS Keystone IAM Horizon Console Sahara EMR 小米私有云 目标: 为全公司提供统一的云服务平台。提供弹性的资源分配和部署方式,同时 提高资源的分配和管理效率。减少服务资源的交付周期。 特点: 稳定第一:支撑公司多条产品线业务,力求稳定 性能优化:尽快可能的降低虚拟机的资源消耗,保证虚拟机的性能 内网互通:虚拟机需要和公司其他主机互联互通。对其他主机透明 业务定制:OpenStack需要和公司其他系统互通(监控和主机信息) 游戏 18% 平台 17% 测试 12%多看 11% 路由 11% MIUI 9% 电商 6% PAAS 5% 米聊 5% 小米云 5% CDN 1% 0% 业务使用情况 使用情况: 可用度:99.99%(运行16个月,2次故障) 使用率:平均40%(物理机利用率),1虚12 覆盖度:小米所有产品线 业务类型:开发,测试,线上(线下70%) 4个机房(2000+VM) 4500+核E5-2640 50T内存 1200T虚拟磁盘 480T块存储 120T对象存储 探索之路-机器 计算节点: DELL 720 . CPU: E5-2640v2*2(32核) . MEM:16G*24 . 磁盘:2*600G SAS(Raid1) + 6*4T(Raid5) SATA . 网卡: 1G* 2 + 10G*2 (Intel 82599EB 10-Gigabit SFI/SFP+ ) 控制节点: DELL_R620 . CPU: E5-2630v2*2 (24核) . MEM:16G*4 . 磁盘:2*600G SAS(Raid1) + 2*240G SSD(Raid1) . 网卡: 1G* 2 + 10G*2 (Intel 82599EB 10-Gigabit SFI/SFP+ ) 探索之路-版本 操作系统选择: Ubuntu vs Centos 发行版:RDO . 优点:简单快速部署,支持多种网络结构 . 缺点:添加计算节点是个坑,存在各种兼容性问题(packstack版本,qpid版 本,libvirt版本) . 解决方法:建立自己的源,手劢添加计算节点 探索之路-网络 组件选择:Neutron vs Nova-network 网络模型选择:FLAT,GRE,VLAN 网络节点选择:有 vs 无 结论:Vlan,无网络节点,高效稳定的虚拟网络 坑:Neutron的稳定性确实不高,经常断掉,导致OpenVswtich无法配 置网络策略 探索之路-块存储 组件选择:Ceph vs GlusterFS 原因:各有千秋,无完美方案,Ceph逐渐成熟,性能不够GlusterFS,GlusterFS 有Bug 好处:共享存储能够提供毫秒级别的实时迁移,对虚拟机的负载均衡、主机维护非 常有用。 坑:网络中断30s以上会造成文件系统Readonly,导致用户对共享存储失去信心 0 200 400 600 800 1000 1200 1400 4k 16k 64k 256k 1m 4m ceph gluster 块大小 0 20 40 60 80 100 120 140 160 180 4k 16k 64k 256k 1m 4m ceph gluster 块存储-性能测试 IOSP测试对比 网络流量对比 块大小 块存储-稳定性测试 0 200 400 600 800 1000 1200 1400 1 2 3 4 5 6 7 8 10 ceph gluster FIO 4KB IOPS测试 探索之路-对象存储 组件:Swift 优点:结构先进,无单点,所有借点配置相同,数据稳定性高(3copy) 坑:性能太差,作为CDN源服务器被轻易打死,没有请求是Swift本身会 占到1个核 Proxy ContainServer AccountServer Object Server 客户端 Proxy ContainServer AccountServer Object Server Proxy ContainServer AccountServer Object Server Proxy ContainServer AccountServer Object Server Proxy ContainServer AccountServer Object Server NOVA 计算网络 存储网络 CEPH 万兆光纤 交换机 控制节点 Control Center PC接入 手机接入 智能设备 接入层 计算层 存储层 私有云结构 Keystone Nova-Compute OpenvSwitch 其他网络 连接路由虚拟机网络[万兆] 管理网络 存储网络[万兆] 主控制节点 计算节点 物理路由器 LocalDisk Glance Nova Neutron RabbitMQ MySQL Nova-Compute OpenvSwitch 计算节点 LocalDisk Nova-Compute OpenvSwitch 计算节点 LocalDisk Nova-Compute OpenvSwitch 计算节点 LocalDisk Keystone Glance Nova Neutron RabbitMQ MySQL 备控制节点 HA 网络详细结构 eth2 其他网络 TRUNK连接路由虚拟机网络VLAN 管理网络 计算节点 物理路由器 Neutron-HDCP-Agent RabbitMQ 控制节点 br-eth2 br-int VM VM VM eth0OVS-Agent Neutron-L3-Agent Neutron-Server eth 0 Neutron- Metadata- agent eth2 计算节点 br-eth2 br-int VM VM VM eth0OVS-Agent eth2 计算节点 br-eth2 br-int VM VM VM eth0OVS-Agent 0 1000 2000 3000 4000 5000 6000 7000 3U8_8核32G MiStack_8核32G MiStack_8核16G AWS_8核16G UnixBench测试 注:分数越高越好 拟机性能测试 0 10000 20000 30000 40000 50000 60000 70000 Writer Re-writer Reader Re- reader MiStack_8核32G 3U8_8核32G 单位:KB/Sec IOZone磁盘性能测试 0 5000 10000 15000 20000 25000 30000 35000 HelloWorld 3u8_8核32G MiStack_8核32G 单位:QPS 0 500 1000 1500 2000 2500 3000 3500 PhpInfo 3u8_8核32G MiStack_8核32G 单位:QPS 网络性能测试 维护方案-虚拟机迁移 实时迁移: 采用precopy算法循环拷贝内存到目的机器,停机时间极短,但需要共享存储 带磁盘迁移: 将磁盘做快照后拷贝磁盘到目的机器,后面过程跟实时迁移一样,整个过程时 间取决于磁盘大小,停机时间稍长。 作用: 物理机故障维护,虚拟机负载均衡 维护方案-实时迁移 0 0.5 1 1.5 2 2.5 3 2G 4G 8G 16G NULL FIO GCC 内存大小 0 5 10 15 20 25 2G 4G 8G 16G NULL FIO GCC 停机时间 总迁移时间 内存大小 单位:秒 单位:秒 维护方案-带磁盘迁移 0 200 400 600 800 1000 1200 5G 10G 20G 50G 100G 准备时间 停机时间 磁盘大小 单位:秒 谢谢!
还剩25页未读

继续阅读

下载pdf到电脑,查找使用更方便

pdf的实际排版效果,会与网站的显示效果略有不同!!

需要 8 金币 [ 分享pdf获得金币 ] 0 人已下载

下载pdf

pdf贡献者

lpli

贡献于2015-09-04

下载需要 8 金币 [金币充值 ]
亲,您也可以通过 分享原创pdf 来获得金币奖励!
下载pdf