liujinlong
作者liujinlong联盟成员·2020-04-01 10:20
项目经理·china

IAAS技术方案参考

字数 7503阅读 2169评论 1赞 4

( 1 )系统软硬件建设要求

本章规定的各项技术规格若涉及到品牌、型号等,并不表明该标的被指定,而是仅供供应商做技术性的参考,供应商所投报的产品只要性能达到或超过采购文件要求(或没有重大偏离),都将被视为对采购文件作出了实质性响应。

1. 基础支撑能力

云平台作为管道云平台综合能力系统的提供者,主要具备云资源管理、运维管理、统一用户管理,实现基础支撑能力。

1.1 云资源管理平台建设方案(私有云 IAAS )

为了满足业务发展的需要,有效地解决资源利用率以及业务快速上线需求、集中管控、降低运维成本、快速部署、节能环保等问题。搭建云计算平台,通过虚拟化、自动化等互联网相关技术来解决现有数据中心的各种挑战,随着虚拟化及云计算的日益成熟,将应用服务器等部署在基于私有云的平台上,以达成如下建设目标。

l 使数据中心 IT 资源池化,统一以服务的方式提供给用户

l 根据业务负载,云平台自动弹性的分配计算,存储,网络资源给用户,快速帮助搭建业务应用。

l IT 资源可以快速部署,从月 / 天提升到分钟 / 秒级别,提高创新效率。

l 自动化运维管理企业数据中心 IT 资源,提高企业 IT 管理人员的运维效率。

1.1.1 总体方案设计
1.1.1.1 技术路线选择

随着云计算技术的不断成熟及用户对云计算技术的不断实践,目前大多数使用云计算技术的单位都已经从最初的虚拟化系统转向真正的云计算系统,实现了业务发放的自动化和服务化,所以云管理平台的重要性逐步体现,并得到快速发展。目前云管理平台技术发展有下面几个大的趋势:

从软、硬件设备兼容性以及系统快速成熟的角度考虑,各厂家开始放弃早期封闭研发的私有云管理平台,开始从私有平台转向采用开放架构的云管理平台,如 IBM 、 HP 等公司都开始推开放架构云管理方案。云计算系统的构建是需要多厂家软、硬件共同参与、逐步搭建的系统,私有云管理平台很容易在设备兼容性上遇到限制,主要是各厂家如果没有统一的标准,产品很难互相兼容,最终会限制用户云系统的功能,如果采用主流 IT 厂家支持的开放架构,各厂家设备在统一的架构下比较容易实现相互间的兼容。

本次项目需要选择具有技术前瞻性、架构稳定的云管理平台产品和解决方案,基于现有的软件、硬件和应用环境来统一集成,构建出统一平台基础环境,既能完全满足行业当前的业务诉求,又能在可预见的未来内持续可靠的支撑行业业务发展。

基于以上考虑,在本项目中,选择了目前技术发展方向主流的云管理方案 OpenStack 进行商用化增强形成完整的云管理解决方案,实现基础设施资源池的云运维管理功能和运营管理功能。

1.1.1.2 技术架构规划

本次总体设计架构基于开放云技术 OpenStack 、 KVM 虚拟化以及分布式存储技术,对各个功能组件经过深度优化开发,为业务系统提供基础承载平台。

本项目通过购置云计算服务所需硬件、软件设备,对底层服务器硬件及存储硬件进行统一规划部署,并进行资源整合,通过在硬件之上构建虚拟化平面,提供统一的计算资源池,网络资源池,存储资源池。其中计算支持 KVM 、 VMware 、裸机管理;网络通过 Linux bridge 、 OpenvSwitch 实现,底层网络可以是 VLAN 、 VXLAN 、 GRE ;存储可通过 CEPH 、商业存储实现。

IAAS 层通过 OpenStack Nova 、 Cinder 、 Neutron 、 ironic 、 Keystone 组件实现虚拟机/物理机管理、存储管理、网络管理、镜像管理,日志管理、用户管理,并实现云主机 HA , QoS 、弹性伸缩、负载均衡等功能,满足用户各类资源需求。

智能运维:实现自动批量装机、应用部署、任务自动化、资产管理等运维服务,使管理员获取高于手工运维几十倍的速度,大大提高了运维效率。

1.1.1.3 资源池设计

计算资源池

云平台的计算服务设计参考开源 OpenStack 的 Nova 实现,为最终用户提供计算资源服务, Nova 在计算节点侧,通过 libvirt 的方式,对本地的虚拟机进行管控,底层使用基于硬件的全虚拟化技术 KVM 。考虑到部分业务无法部署在虚拟机中,比如高性能数据库,可以使用物理资源独享的裸机来承载。为了实现裸机部署功能,利用 Nova 底层的驱动 ironic 来启动裸机节点,基于 ironic 驱动,用户可以像原来的虚拟机一样,对一台裸机实例进行整个生命周期的管理。

存储资源池

云平台的块存储服务设计参考开源 Openstack 的 Cinder 实现,为最终用户提供块存储资源。

云平台的各个服务区域有不同的存储要求,公共服务区域需要分布式存储的支持,内网和外网区域需要 FC 集中存储的支持,通过灵活的插件方式,提供不同驱动的支持。

Cinder 在存储节点侧,对于分布式存储,通过 librbd 开源驱动,和 Ceph 分布式存储集群通信,进行块设备的管理;对于集中式存储,通过商业存储的插件提供的商业驱动与集中式存储通信,进行块设备的管理。

针对特别重要的数据,用户可以选择在云平台上使用这种共享存储。 FC-SAN 采用高可用连接,保证每个 LUN 有 4 个 Active Path 。

网络资源池**

与传统解决方案不同,云平台的 SDN (软件定义网络)网络使用户的虚机的网络不再是一个扁平化、无法自定义的固定的网络结构,而是一个可以提供丰富的网络功能并能够灵活配置的网络。

基于 Neutron 、 OVS 、 VXLAN 、 NameSpace 等技术, SDN 网络将所有物理世界的网络设备都被设计成了可操作的网络对象。只需要在管理面板点击配置,就可以根据业务需要灵活快速地构建复杂的网络环境,使网络管理更加智能,仅仅使用传统交换机等网络设备,而无需网络设备支持 SDN ,支撑了更灵活便捷的网络扩展。

云平台允许不同项目 ( 租户 ) 创建属于自己的网络,并通过项目 ( 租户 ) 的边界路由器连接到外网。不同项目 ( 租户 ) 之间的网络是允许重叠,即不同项目 ( 租户 ) 都可以创建了 10.10.1.0/24 这个网段,都有一个 10.10.1.1 的网关。为了实现这样的逻辑,就需要在底层实现对不同项目 ( 租户 ) 网络之间的隔离。

云平台网络功能由 OpenStack 的 Neutron 提供,采用 ML2 Plugin 。二层采用 Ovs Agent ,由它提供二层的虚拟互联,来实现统一扁平的网路结构。

不同物理节点之间上的虚拟机通过 Ovs 的 GRE 虚拟隧道进行互联,网络之间的隔离是通过在物理节点的内部网桥 br-int 上,使用本地 vlan 的方式来实现隔离。

首先,不同项目 ( 租户 ) 创建不同的 private network ,为了在虚二层上对网络进行隔离,创建 private network 时,需要指定 segment id

在不同项目 ( 租户 ) 的 private network 上创建的虚拟机,连接到 br-int 上的时候都是带 vlan tag ,即 local vlan tag ,所以不同 tenant 的虚拟机,即便连接到同一个 br-int 上,因为 tag 不同,也是不能相互通信的。同一个机器上的 local vlan tag ,是局部有效的,即仅在本机有效。

一个计算节点上的 br-int 上的 vlan tag 1 和另一台计算节点上的 br-int 的 vlan tag1 很可能是不一样。而创建 private network 的时候指定的全局唯一 segment id ,它是在虚拟网卡 br-tun 上使用, openvswitch 会在 br-tun 上,根据 setment id ,将数据包的 local vlan id 转换成与 segment id 等值的 tun id ,通过建立好的 GRE 隧道发送出去。

总之, br-int 内部的网络流量隔离是通过设置数据包的 local vlan id 来实现, br-int 之间的网络流量隔离是通过设置数据包全局唯一的 segment id 来实现。虚拟机所有能直接看到的东西,仅在 br-int 上,它看不到打通 br-int 之间所要使用的 segmentid 。数据包流程如下:

1.1.2 云平台功能规划
1.1.2.1 管理员运营管理

l 资源展示

图形化显示全部的资源统计信息,包括了资源概况信息、计算资源统计信息、网络资源统计信息。

涵盖了物理主机个数信息统计、可分配内核信息统计、可分配内存统计信息、项目个数统计信息、用户数目统计等信息。

涵盖了云主机统计信息、虚拟内核统计信息、虚拟使用内存信息、快照信息、云硬盘数量统计信息、云硬盘快照信息、硬盘容量信息、镜像个数统计信息、系统比例信息与安全组策略文件等信息。

涵盖了虚拟网络信息统计、外网 IP 信息统计及虚拟路由器等网络资源的统计信息。

包括了对于用户名称、邮箱、密码、用户的角色信息、描述、每个用户对于资源使用的配额比例以及对于用户角色的权限修改添加的操作信息以及对于每页可显示虚拟条目数量的页数信息等信息。

l 资源管理 :

可以对全部的计算资源和网络资源进行维护和管理,查询每个硬件节点的资源使用情况进行信息汇总与统计并且显示整个可用域内可以进行使用的物理主机数量,对于不同用户角色进行不同可用域的划分,对于每个域的使用进行了详细的统计与显示。

l 资源配额设置 :

通过资源配额设置可以设定用户组,并且针对此用户组中的不同用户角色对其可以使用的虚拟内核个数、云主机数量、云硬盘大小、云硬盘数量、云硬盘快照个数、卷大小、可用内存大小、安全组规则个数、外网 IP 可使用个数、虚拟网络个数、可使用的虚拟路由器个数、可使用的子网个数等资源信息进行额度选择,从而控制每个用户角色对于平台资源使用的限制性权限。

1.1.2.2 镜像管理

可以对全部镜像资源进行创建、查看、更新镜像等操作,并且针对于自有镜像进行上传服务同时对于每个用户角色的镜像名称、容量、状态、格式等信息进行统计与显示、并可根据相应镜像创建云主机等动作信息汇总、方便云主机对于镜像方面的需求。

支持对已存在的云主机进行快照转镜像功能,减少镜像与云主机部署时间,提升部署效率。

1.1.2.3 云主机服务

可对云主机进行创建与管理,功能如下:

创建云主机:指定主机模版、配置、网络、主机名、密码后创建虚拟机等信息。

云主机详情:显示云主机 ID 、名称、状态、网络、配置等基本信息。

云主机性能监控:监控处理器和内存的资源使用率等信息。

云主机网卡进行实时热添加。

云主机远程访问:提供 Remote Console ,用户从界面直接登陆主机进行操作。

云主机安全访问: SSH 提供给用户快捷安全的登陆方式。

增加/减少主机磁盘:通过挂载和删除云硬盘的操作调整云主机的硬盘。

远程控制主机状态:远程关闭、重启、挂起、开启等操作。

修改主机信息:可以删除云主机,修改云主机名称等信息。

1.1.2.4 块存储服务

分布式存储技术将离散的存储资源进行抽象管理,按需为用户或云主机提供持久块存储服务;云存储具有独立的生命周期,基于网络进行分布式访问,为用户提供大并发数据访问、海量数据存储、高可靠和可扩展的弹性存储空间。针对不同的 I/O 性能要求,云平台可以通过设置 QOS 提供不同档次的存储资源给用户选择。

1.1.2.4 快照服务

云计算平台支持云主机的全量快照,用户及其管理员可以在平台中对相关云主机进行快照。

云平台 Snapshot ,其工作原理是对云主机的镜像文件(系统盘)进行全量备份,生成一个类型为快照的 image ,然后将其保存到分布式存储 Glance pool 存储池中。

1.1.2.5 弹性服务

由于业务在不同时段会出现不同业务压力的形式,云平台为了保证业务能够在业务高峰期对于相应服务与业务功能可以正常运行,减少运维人员的工作难度,推出弹性伸缩的功能,在业务高峰期间,针对不同云主机的压力参数,通过智能的监控平台,对高消耗的云主机进行自动弹性扩容,当业务压力减小时,自动进行相应资源回收,使得运维相比传统的方式更为简洁,平台使用方面更为便捷与安全。

弹性策略可为用户提供资源和服务,用户可以根据系统参数设置,随时增加和缩减 IT 基础设施资源规模,实时满足业务发展的需要,节约成本。

用户可以根据 CPU 平均负载进行阈值设置,当集群平均负载达到阈值时会根据规则进行资源弹性分配。

弹性分配分为弹性扩展和弹性收缩。当集群 CPU 平均负载大于用户设置的扩展阈值时,系统进行资源的弹性扩展;当集群 CPU 平均负载小于用户设置的收缩阈值时,会根据规则进行资源弹性收缩。

1.1.2.6 监控功能

运维监控支持对系统整体的运行保障,包括对物理服务器、云主机、存储、网络资源等使用情况的统一监控。云平台提供监控管理功能,为运维人员提供监控管理的界面;

对运维人员来说,运维监控应包含整个平台内资源的运行情况与性能,以及异常事件的监控与告警;

对用户来说,应提供对整个系统所申请资源的监控和管理;

对用户来说,应提供对服务实例的查询和操作界面,可以监控自己的实例的运行情况和性能指标。

l 物理主机实时监控

以曲线图的形式展现云主机的 CPU 、内存、硬盘、网卡资源实时使用情况等信息,并且针对不同监控周期显示不同监控内容,方便管理员对现有物理主机资源进行使用与维护

CPU :可选择展现物理主机 CPU 使用率或 CPU 负载的实时监控信息曲线图

内存:展现物理主机当前内存使用率统计监控信息曲线图

硬盘:可展现当前物理主机所有硬盘使用率 , 硬盘读写速度或硬盘 iops 监控信息曲线图

网络流量:展现当前物理主机所有网卡上行流量和下行流量监控信息曲线图。

l 物理主机历史监控

以曲线图的形式展现物理主机的 CPU 、内存、硬盘、网卡资源历史使用情况等信息。

CPU :可选择展现物理主机 CPU 使用率或 CPU 负载的历史监控信息曲线图

内存:展现物理主机内存使用率历史统计监控信息曲线图

硬盘:可选择展现物理主机所有硬盘使用率 , 硬盘读写速度或硬盘 iops 监控信息曲线图

网络流量:展现物理主机所有网卡上行流量和下行流量监控信息曲线图

l 云主机实时监控:

以曲线图的形式展现云主机的 CPU 、内存、硬盘、网卡资源实时使用情况等信息。针对于不同时期不同选项,使用不同的处理方式展现平台所有虚拟主机的监控信息并进行汇总。

CPU :可选择展现云主机 CPU 使用率的当前监控信息曲线图

内存:展现云主机内存使用率当前统计监控信息曲线图

硬盘:可选择展现云主机所有硬盘使用率 , 硬盘读写速度或硬盘 iops 监控信息曲线图

网络流量:展现云主机所有网卡上行流量和下行流量监控信息曲线图。

l 云主机历史监控:

以曲线图的形式展现云主机的 CPU 、内存、硬盘、网卡资源历史使用情况等信息。

CPU :可选择展现云主机 CPU 使用率的历史监控信息曲线图

内存:展现物理主机内存使用率云主机统计监控信息曲线图

硬盘:可选择展现云主机所有硬盘使用率 , 硬盘读写速度或硬盘 iops 监控信息曲线图

网络流量:展现云主机所有网卡上行流量和下行流量历史监控信息曲线图

1.1.2.7 迁移服务

云平台支持在线进行热迁移及其冷迁移操作,手动或者自动进行云主机迁移操作,基于模板 VM 自动迁移,自动感知各个节点状态,通过资源计算调度,可以自动迁移到资源空余的节点,实现整个云平台的资源平衡。

1.1.2.8 网络服务

云平台的网络采用 SDN 的方式,将网络控制和硬件数据转发部分解耦,满足快速创建网络,敏捷,可编程及精细化安全管理的需求,具体功能如下:

私有网络 (Subnet)-VLAN :扩大 2 层网络范围,多业务完全隔离。

网络地址转换 (NAT) : SNAT 与 DNAT 的方式,节省公网 IP 地址,确保内部服务安全

弹性 IP 池:根据不同需要,申请不同 IP 属性地址,资源灵活申请与释放

虚拟路由:根据不同业务需要,划分不同网段,灵活实现内部与外部网络通信。

1.1.2.9 访问与安全服务

通过设定安全组相关策略,实现云主机的安全隔离,创建安全策略,包含了端口、地址类型、 IP 协议类型、端口范围及远程连接方式等参数进行设定,规定云主机的安全策略方式,保证云主机的安全性。

1.2.2 监控告警

IAAS层监控告警方案包含以下内容:

l 物理硬件运行状态

l Openstack 组件服务状态

通过统一运维平台针对云平台 IAAS 的监控需求,可以实时监控物理节点运行状态、 OpenStack 服务状态和资源使用情况,同时也提供了实时的可视化监控指标展示。自动化运维平台的监控范围包括:

l 物理主机节点,包括 CPU 、内存、网络流量等

l Openstack 服务,包括服务状态、 Ceph 集群、控制器服务集群、 Rabbitmq 集群、 Mysql 集群等。

云应用层的监控告警方案包含了以下内容:

l 虚拟机运行状态监控

l 云应用状态监控

l 虚拟机资源监控

监控软件支持丰富的用户自定义告警触发规则。并且支持多种报警方式包括邮件、微信等。

1.2.4 自动化应用部署

运用模板规范化部署相关应用,如: Apache 、 web 应用服务、 Mysql 、云资源管理平台(云控制器、计算资源虚拟化、存储虚拟化、网络虚拟化)等。实现快速的、批量的部署。

ü 自动化手动任务:手工流程的自动化减少了部署工作量。

ü 减少脚本撰写和维护工作量:使用再构建集合而非撰写自己的脚本和工具有助于加快部署。

ü 错误预防:手动流程是极易出错的。无论是生产中还是生产前都可以看到收益。

ü 审计与可见性:能够更好地记录哪里发生了什么情况,缩短了缺陷类选的时间,可以更加顺利地开展审计工作。

ü 减少发布工程师的工作时间:生产力提高,错误更少,几乎不用返工。

1.2.5 系统分发

操作系统分发,为裸机安装操作系统,初始化系统配置。支持并不限于 CentOS 、 Redhat 、 Debian 、 Ubuntu 等操作系统,操作系统分发特性如下:

ü 无需在被管控主机上安装任何客户端;

ü 手工流程的自动化减少了部署工作量

ü 批量快速部署

ü 批量任务执行安装操作系统

ü 无须进入服务器端,直接点击 web 页面进行安装;

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

4

添加新评论1 条评论

admkingadmking技术经理互联网
2020-04-01 10:35
很全面的方案
Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

X社区推广