基于OpenStack构建网易云主机服务

上传人:油条 文档编号:45688392 上传时间:2018-06-18 格式:PDF 页数:37 大小:1,010.79KB
返回 下载 相关 举报
基于OpenStack构建网易云主机服务_第1页
第1页 / 共37页
基于OpenStack构建网易云主机服务_第2页
第2页 / 共37页
基于OpenStack构建网易云主机服务_第3页
第3页 / 共37页
基于OpenStack构建网易云主机服务_第4页
第4页 / 共37页
基于OpenStack构建网易云主机服务_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《基于OpenStack构建网易云主机服务》由会员分享,可在线阅读,更多相关《基于OpenStack构建网易云主机服务(37页珍藏版)》请在金锄头文库上搜索。

1、基于OpenStack构建网易 云主机服务 网易杭州研究院 张晓龙 内容 OpenStack项目介绍 网易私有云平台 网易云主机服务 OpenStack开发实践 配置部署情况 社区参与和未来工作 Q&A OpenStack项目 目标: 为公共及私有云建设提供一个开放、简单易实现、高可扩展性的云计算 平台 特征 开放源代码:由NASA和Rackspace联合开源 体系架构清晰、组件化,易定制及二次开发 社区发展迅速,6个月发行一个大版本 OpenStack生态系统日趋完善 OpenStack组件 核心项目组件 Compute (Nova) Networking (Quantum) Block S

2、torage (Cinder) Object Storage (Swift) Identity (Keystone) Image Service (Glance) Dashboard (Horizon) Orchestration Service (Heat) OpenStack VS. Amazon AWS OpenStackOpenStack AWSAWS Nova EC2 Quantum VPC Swift S3 Cinder EBS Keystone IAM Heat CloudFormation Horizon Console 网易私有云平台 目标:为网易公司大量的WEB类互联网产品

3、提供统 一的云计算平台 提高硬件资源利用率,促进资源共享,以降低硬件成本 提高资源管理与系统运维的自动化水平,以降低运维成本 提高资源使用弹性,以增强业务波动的适应能力 促进公共技术研发与应用,使业务获得更好的基础技术服 务 网易私有云平台 核心IaaS服务 提供计算、存储、网络等核心IT设备的虚拟化 核心PaaS服务 提供海量结构化与非结构化数据存储、管理与检索功能,满足互联网典型平台需求 网易云主机服务 目标 作为网易私有云平台核心服务,提供弹性、高效、 稳定可靠的虚拟机服务,满足公司产品上线、开发 测试等对IT基础设施的需求 现状 基于开源云平台OpenStack开发 对OpenStac

4、k进行了全面测试 修复了OpenStack若干Bugs 开发并优化了OpenStack若干功能 完成了与私有云其他服务的整合 目前已提供了稳定云主机服务 主要功能 云主机生命周期管理 云主机状态详情查看 镜像快照管理 网络与访问安全管理 云主机计费管理 云主机监控报警管理 开发部署历程 2012.3月开始研究OpenStack 2012.4月部署OpenStack E版本供网易相册试用 2012.11月发布基于OpenStack E版本开发的云主机 服务,随后网易相册和网易云课堂正式上线 2013.3月发布基于F版本开发的云主机服务 2013.4月完成网易博客的迁移上线 截止2013年7月 已

5、稳定运行8个多月 中间经历一次云主机服务的在线平滑升级 一共13个产品上线 规模:几十个物理节点,几百台云主机 OpenStack优化和新功能开发 云主机服务质量保证 镜像快照存储处理优化 调整云主机规格优化 用户自助服务和运维管理平台 云主机监控报警功能 云主机实例存储配额功能 云主机服务质量保证 云平台物理资源共享带来挑战 云主机性能指标变模糊,无法精确定义 云主机间以及云主机与宿主机竞争资源,使云主机性能 不稳定 目标 提供性能指标明确、性能稳定可靠的云主机 方案 明确定义云主机性能指标 控制云主机资源占用,避免云主机间相互影响 预留一定物理资源给宿主机,避免影响宿主机正常运行 当前实现

6、的服务质量保证(QoS) 计算(CPU)、网络带宽 计算资源 QoS 定义性能指标 提出以网易ECU为基本单位来衡量云主机计算能力 1ECU定义为1/4 Intel E5 2650单核或1/3 AMD 6276 单核 制定多种计算规格(1VCPU X 1ECU, 1VCPU X 2ECU, ), 以量化不同规格云主机计算能力 性能指标需求 相同规格云主机的计算能力基本相近 不同规格云主机的计算能力差异可量化 无论宿主机整体负载如何,云主机计算能力不应出现 大幅波动 计算资源 QoS 性能指标保证策略 利用cgroup cpu子系统控制云主机计算能力 根据规格配置cgroup参数:share/p

7、eriod/quota 根据ECU数目设置cpu.shares(ECU数 X 1024) cpu.cfs_period_us统一设置为100ms 测试确定各规格云主机在不同机型上cpu.cfs_quota_us值 将物理核分两类:宿主机保留以及云主机使用 保留物理核给宿主机以保障系统控制、网络I/O等 正常运行,同时也提升了虚拟化性能(20%+) 计算资源 QoS(续) 设定云主机虚拟CPU范围绑定到宿主机物理核集合上,可 减少云主机计算性能表现波动(10%内) OpenStack实现 将云主机计算能力(ECU)当做新资源有效管理 向云主机规格(Flavor)中加入ECU相关信息 往OpenS

8、tack调度器中增加新调度器ECUFilter 在计算节点上增加ECU资源信息上报流程,在控制节点上 增加ECU资源信息统计流程 在Libvirt Driver层支持设置ECU相关的cgroup参数 增加ECU配额管理功能 网络带宽资源QoS 性能指标需求 外网带宽、内网带宽 性能指标保证策略 利用Linux TC控制云主机对内外网带宽资源占 用 设置TC rate参数,保证云主机带宽性能 设置TC ceil参数,当带宽富余时提升云主机带宽 外网带宽:创建云主机时由用户指定 内网带宽:根据云主机计算能力(ECU)制定默认控制 策略,创建云主机时无需指定 网络带宽资源QoS(续) 预留一定带宽资

9、源给宿主机,保证其正常带宽需求 OpenStack实现 将网络带宽当做新资源有效管理 往OpenStack调度器中增加新调度器NetworkFilter 在计算节点增加带宽资源信息上报流程,在控制节 点增加带宽资源统计流程 增加网络带宽管理API,支持查看、修改带宽大小 增加外网带宽配额管理功能 镜像快照存储处理优化 问题 镜像快照太多太大,给存储系统带来巨大负担 上传下载镜像快照会占用云平台大量带宽资源 启发 不同镜像快照之间实际上会存在大量重复数据块 (50%+数据块重复) 解决方案 实现镜像快照分块处理策略:固定大小(4M)分块 增加数据块缓存以加速镜像快照下载 用户自助服务 运维管理平

10、台 OpenStack网络开发 云环境租户网络隔离 使用OpenStack FlatDHCP网络管理模式(简单灵活) 不用VLAN模式的原因: VLAN号受限(最大为4096) 需机房预分配VLAN号并配置物理交换机(不灵活) 实现:IPSET + IPTABLE 云环境与非云环境网络互通 引入内网浮动(Floating)IP OpenStack网络开发 私有云环境网络访问控制策略 云主机有三类IP:固定IP、内网浮动IP、外网浮动IP 利用云主机安全组(虚拟防火墙)控制网络访问该云主机 租户内云主机间网络访问不控制,以固定IP实现无条件网络互通 不同租户云主机间以及云主机与现有企业内网之间通

11、过内网浮动IP 访问互通,受安全组控制 公网用户通过外网浮动IP访问云环境云主机,受安全组控制 基本特征 高效管理IT物理资源 按需使用,弹性扩容 网络访问控制 服务质量保证 系统资源不超售 提供易用、友好的自助服务和运维平台 配置情况 平台相关配置 宿主机系统:Debian 7.0 + Linux 3.2.x内核 KVM虚拟化 + Qcow2镜像格式 宿主机系统盘RAID1,实例存储磁盘为RAID0 使用网易对象存储服务存储镜像快照 网络模式:FlatDHCP + multi_host 性能相关配置 打开VHostNet,利用内核加速KVM网络性能 打开宿主机透明大页支持,减少缺页及虚拟地址

12、 转换(性能提升10%+) 部署情况 物理硬件异构 CPU: Intel/AMD 机型:机架服务器/刀片 网络:万兆/千兆 服务高可用 RabbitMQ、Glance、Keystone、Nova-api 基于Puppet实现节点自动部署 错误日志监控 物理节点状态监控 参与社区情况 主要参与Nova、Glance组件 的社区开发 向社区报告若干Bugs,并及 时提交修复Commit 积极参与OpenStack社区的 代码Review 在G版本开发周期中,共向 Nova组件贡献16个Bugfixs 对H版本的贡献仍在继续 对Nova组件的贡献(G版本) 参与社区情况(续) 团队成员在社区上的经验

13、值(贡献度)已比较高 报告Bug及提交Bug Fixed情况 ComponentComponent # # of Testing APIof Testing API Bugs ReportedBugs Reported Bug FixedBug Fixed Nova 121121 2121 1616 Glance 1414 2 2 2 2 Keystone 4646 1616 1515 TotalTotal 181181 3939 2929 未来工作 研发网络虚拟化 Quantum、Vxlan、Open vSwitch 让OpenStack更好支持容器级虚拟机LXC 运维管理相关新功能开发 Q

14、 & A 线下交流:(Gtalk) image glance backend storage 3 4 1 2 3 4 5 6 上传镜像 0 0 image = 3+4+0 Metadata Database Upload: 1 4 3 glance 1 2 3 4 5 6 0 下载镜像 Download: image = 1+4+3 5 backend storage Metadata Database Chunk Cache 3 6 4 1 1 3 4 1 image 调整规格优化 社区调整规格操作的问题 调整规格(Resize)操作时间过长,代价高 安全性:配置让宿主机相互免密码ssh登陆访问 原因分析 Resize流程:将Qcow2格式镜像Base只读部分和Cow 修改部分合并成新镜像,再传输新镜像到目的宿主机 使用rsync shell工作模式,不安全 优化 不合并产生新镜像,只拷贝传输Cow部分 确保resize中传输新镜像的流量务必通过内网 使用rsync daemon模式 监控报警和实例存储配额 监控报警 监控:查看云主机运行状态,如CPU利用率、内存占 用量、网络带宽流量、磁盘分区使用等13个指标 报警:状

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号