OpenStack公有云案例分享
基于OpenStack构建公有云服务平台
基于OpenStack 构建公有云服务平台*王一秋,陈达,吕璐(中国移动通信集团公司政企客户分公司,北京 100083)摘 要 本文介绍了中国移动公有云平台——移动云的设计与实践成果。
移动云是基于业界主流的OpenStack架构,采用自主研发的方式,面向政府部门、企业客户和互联网客户推出的新型云计算平台。
除提供通用的IaaS、PaaS以及SaaS产品外,移动云还针对不同行业特点和客户需求,结合专线、CDN等运营商优质网络资源,提供针对政府、金融、医疗、教育、互联网等行业的个性化解决方案,提供一站式定制化政务云、行业云、混合云等解决方案。
自上线运营以来,移动云获得了业界和用户的认可,是可靠的公有云服务平台。
关键词 自主研发;公有云;OpenStack中图分类号 TP39 文献标识码 A 文章编号 1008-5599(2017)12-0035-05收稿日期:2017-11-09* 中国移动集团级一类科技创新成果,原成果名称为《基于自主知识产权构建服务全网的移动云平台》。
近年来随着国内“互联网+”的浪潮,各类企业对云端资源的需求与日俱增。
公有云服务平台因为其成本低、维护简单得到了各类企业和个人的青睐。
作为全球最大的通信运营商、信息领域的国家队,中国移动一直以来都有志于建立自有的公有云平台。
在2016年中国移动提出“大连接”的战略目标,将云作为“云、管、端”3个重要环节之一。
此外,信息安全一直是国家与国家、企业与企业之间的博弈点,完全引进国外技术难免遭遇类似“棱镜门”的信息后门。
向企业与公众提供可靠、可信的公有云服务平台,保护国家信息安全,是中国移动的使命所在。
中国移动在海内外拥有超过8亿个人用户和400万企业用户,客户对云资源的需求迫切,建设功能全面的公有云服务平台既能满足各类用户,同时也能为企业带来巨大的效益。
在这样的背景下,中国移动构建了具备自主知识产权且产品线完备的公有云服务平台——移动云。
1 总体架构1.1 产品体系公有云的服务类型一般分为IaaS、PaaS 以及SaaS 3层,移动云与同类竞争对手相比产品体系相对完整,能满足大多数用户的各类需求。
云计算基础架构平台应用 项目7-OpenStack网络服务
Neutron-LinuxBridge-Agent : 负责创建桥接网卡
Neutron-Dhcp-Agent:负责分配IP
Neutron-Metadata-Agent: 配合Nova-Metadata-Api实现虚拟机的定制化操作
L3-agent:实现三层网络vxlan(网络层)
OpenStack网络服务
目录 Contents
01
02
03
Байду номын сангаас04
05
思政课堂
任务
实训
笔记
习题
随着计算机的不断普及,网络及信息技术的广泛应用,提供了大量的互联网服务以及信息资源,从而也使更多的数据计算、存储以及应用等基本功能被人们应用在各项工作中,极大程度上方便了人们的生活,特别是进入云计算时代,将大量的个人信息、公司信息存储在网络上,存在一定的网络安全问题。所以我们在生活中要时刻保持网络安全意识,例如: 在使用WiFi时,不要随意接入陌生WiFi;在公共场所使用陌生的无线网络时,尽量不要进行与资金有关的银行转账与支付; 修改无线路由器默认的管理员用户名和密码,将家中无线路由器的密码设置得复杂些,并采用强密码,最好是字母和数字的组合; 不要轻易打开陌生人通过手机发送的链接和文件; 没有网络安全就没有国家安全,就没有经济社会稳定运行,广大人民群众利益也难以得到保障,全面形成“人人关注网络安全,人人参与网络安全”的良好网络环境
思政课堂
阿福所在公司的业务服务运行在公有云上,由于有些关于客户的重要信息等,公司便想将在公有云上的服务迁移至私有云上,老板便将想搭建一个OpenStack私有云平台,便于管理这些私密数据。由于阿福有着私有云的基础,老板就将搭建平台的任务交给了阿福,阿福在搭建了Keyston,Glance,Nova后终于到搭建Neutron,也由于网络结构的选择,阿福先对Neutron进行了详细的学习,阿福决定选择平面网络模式进行搭建Neutron并对网络进行了规划。 本次学习搭建OpenStack的Neutron网络服务,Neutron 的设计目标是实现“网络即服务(Networking as a Service)”。 为完成所设计的目标,在设计的原则上遵循了基于 SDN 实现网络虚拟化的原则,并在实现上充分利用了Linux系统上各种网络相关的技术来搭建Neutron。先创建关联好用户,并创建服务注册Api,再对Neutron进行安装。
OpenStack建设公有云平台实践
技术创新,变革未来
Why OpenStack?
Why OpenStack?
O目p录en Source
00 写上你的文字你的文字 01 02 03 04 05
Apache 2 License
O目p录en Design
00 写上你的文字你的文字 01 02 03 04 05
1. Network topology 2. Security Enhancement 3. Storage Solution 4. Identity Integration 5. Billing & Monitoring 6. Dashboard Improvement
Operate an production OpenStack
02
• Needs unified infrastructure & app platform to
host heterogeneous services and apps.
03
Sina We0ib4o
• twitter-like microblog service
• over 3500m5 users, #1 SNS in China.
7. Platform stack 8. Automated Deployment 9. Continuous Integration 10. Project Management
StackLab: A community OpenStack Public Cloud Summary
C目lo录ud Requirement
However They never tell you how to operate their public cloud based on OpenStack!
《2024年基于OpenStack构建私有云计算平台》范文
《基于OpenStack构建私有云计算平台》篇一一、引言随着信息技术的迅猛发展,云计算作为一种新型的计算模式,已成为企业和组织进行信息化建设的重要方向。
私有云计算平台作为一种安全、高效、灵活的云计算解决方案,被越来越多的企业所采用。
本文将详细介绍如何基于OpenStack构建私有云计算平台,以实现企业信息化的高效管理和应用。
二、OpenStack概述OpenStack是一个开源的云计算管理平台项目,它提供了一整套的管理工具,用于构建和管理大规模的云计算环境。
OpenStack具有高度的可扩展性、灵活性和可靠性,可以满足不同企业和组织的需求。
通过使用OpenStack,企业可以构建自己的私有云计算平台,实现计算资源的集中管理和动态分配。
三、构建私有云计算平台的步骤1. 需求分析:首先,根据企业的实际需求,进行需求分析,明确私有云计算平台的建设目标、功能需求、性能指标等。
2. 硬件准备:根据需求分析结果,选择合适的服务器、存储设备、网络设备等硬件设备,搭建云计算平台的物理基础。
3. 软件选择与安装:选择适合的OpenStack版本,并安装必要的软件和依赖库。
同时,还需要安装虚拟机管理程序(如KVM)等。
4. 网络配置:配置网络设备,建立内部网络和外部网络,确保云计算平台内部和外部的通信畅通。
5. 存储配置:根据需求,配置相应的存储设备,如SAN、NAS等,以满足云计算平台对存储的需求。
6. 部署服务:在云计算平台上部署必要的服务,如计算服务、存储服务、网络服务等。
7. 配置管理:通过OpenStack的管理工具,对云计算平台进行配置和管理,实现计算资源的动态分配和调度。
四、关键技术与挑战在构建私有云计算平台的过程中,需要掌握一些关键技术,如虚拟化技术、分布式存储技术、网络技术等。
同时,还需要面对一些挑战,如如何保证云计算平台的安全性和稳定性、如何实现计算资源的动态分配和调度等。
为了解决这些问题,需要采取一系列的措施,如加强安全防护、优化资源配置、定期维护等。
openstack创建实例
openstack创建实例1.介绍OpenStackOpenStack是一个开源的云计算平台,由OpenStack基金会开发管理,它的最初的重点是IaaS(基础架构即服务),后来也支持了虚拟化,PaaS(平台即服务), SaaS(软件即服务)等其他服务,使得用户可以实现PoC并使得几乎所有的IT工作流程得到自动化实施。
OpenStack是一个框架性开源软件,它是一个整合了计算、存储和网络云计算功能的开源软件,可以满足运行在可靠,可扩展的分布式计算环境中的应用程序设计和创建的需求。
2.OpenStack 能做什么?(1)OpenStack支持在规模上可伸缩的主机和网络资源管理;(2)OpenStack能够构建包括虚拟机、网络、私有云等在内的虚拟基础设施,使云计算的扩展变得容易;(3)OpenStack支持企业级服务管理,包括定制资源管理、安全控制、企业服务发现等;(4)OpenStack支持基础的可用性,可以提供数据保护、恢复、备份以及容错性;(5)OpenStack可以集成强大的第三方服务,加快企业数字化转型步伐。
3.OpenStack 创建实例(Instance)的步骤第一步:登陆OpenStack实例,这需要用户从网站或者API上登陆到OpenStack实例,然后进入资源管理界面;第二步:选择实例的可用区,确定实例将运行在哪个可用区,可以通过查看实例可使用的资源来进行选择;第三步:指定实例的配置,主要包括内存、磁盘配置等;第四步:指定实例的镜像,在OpenStack中,每个实例都会有一个操作系统镜像;第五步:指定实例的安全组,OpenStack实例可以访问一组定义的安全组中的网络资源;第六步:指定实例的网络,OpenStack实例关联的网络,实例可以访问的IP地址等;第七步:指定实例的配置脚本,主要是实例的初始化配置和实例的关机配置;第八步:单击“创建实例”按钮,这样OpenStack实例就创建成功了。
OpenStack高可用集群实施案例
OpenStack高可用集群实施案例1. 规划与部署本次分享提炼自我们在某企业部署OpenStack高可用集群的实际案例,初期平台面向公网给部分部门提供虚拟化基础设施,但仍属于私有云。
其中我借鉴了以往操作比如oVirt(RHEV)、VMWare、Citrix 等项目的经验。
考虑到时间关系,本次内容将以方法为主,减少细节描述。
还有本次涉及到的工具多以开源形式呈现,尽量不涉及到产品,以方便大家集成或开发。
架构简图可参考如下,稍后我们会就其中细节进行讲解。
两个架构图的区别在于控制节点的高可用方式。
因为客户网络环境复杂,为了节省部署时间与减少返工率,我们需要在去现场之前准备好以下三种安装方式:l PXE LiveCDl 定制系统安装盘l 安装包与安装脚本第一种方式即在用户网络环境下使用现场人员笔记本或者客户服务器启动PXE服务,配置好系统架构(服务器MAC地址、网络配置、存储配置、对应的OpenStack模块与角色、定制包、系统微调与优化措施等),然后开始全自动安装,功能与Mirantis类似,但对网络要求低很多。
第二种方式既是采用定制的系统安装盘,里面需要准备尽可能多的存储设备与网络设备的驱动,以尽可能适配客户服务器与实施人员的自带存储设备。
第三种方式作为前两种方式的替补选项,主要是因为某些客户环境中安装非标系统需要走很多流程,我们提前让客户准备好操作系统,再到现场安装。
如果给你准备的系统是RHEL、SUSE或者其他标准Linux 系统的倒还好,如果他有情怀地花了一两天给你现编译上了Gentoo甚至给你准备了一台小机,那就没办法了(开玩笑,尚未遇到过这样的客户,在进厂之前要把基本环境沟通清楚)。
另外,它也可以作为以上两种安装方式失败后的最佳选项。
这几种方式也不能说孰优孰劣,从效率上来说我推荐第一种,但针对难以定制的商业虚拟化我们就只能采取手动安装的方式了。
题外话:很多所谓“5分钟装完IaaS”的“神话”都不把服务器从启动到改BIOS配BMC/IPMI的时间算进去。
OpenStack解决方案制造行业最佳实践案例
云计算开源产业联盟OpenStack解决方案行业最佳实践制造行业 2016年度云计算开源产业联盟OpenSource Cloud Alliance for industry,OSCAR2016年6月目 录版权声明 (3)前言 (4)第一章 制造行业业务背景 (6)第二章 OpenStack解决方案制造行业最佳实践案例 (6)EasyStack基于OpenStack的联想私有云解决方案 (6)2.1客户需求 (6)2.2客户案例概述 (6)2.3解决方案概述 (6)2.3.1解决方案技术 (7)2.3.2解决方案服务能力 (10)2.3.3解决方案特点 (10)第三章 总结 (11)版权声明本调查报告版权属于云计算开源产业联盟,并受法律保护。
转载、摘编或利用其它方式使用本调查报告文字或者观点的,应注明“来源:云计算开源产业联盟”。
违反上述声明者,本联盟将追究其相关法律责任。
前言近两年,OpenStack开源云计算产业发展迅猛,产业环境日益完善,产业规模保持高速增长。
虽然OpenStack在互联网行业已经占据了重要地位,但传统行业用户对于如何使用OpenStack开源解决方案仍存在诸多方面的问题,比如功能完备性、服务可持续性、性能等。
因此,结合传统行业需求特点,给出OpenStack行业解决方案最佳实践报告成为促进OpenStack开源产业发展的重要任务。
云计算开源产业联盟对2016年度制造行业使用OpenStack的案例进行了搜集筛选,总结出典型案例。
本报告首先分析了制造行业业务背景,给出制造行业对OpenStack开源解决方案的构建需求。
最后,结合行业优秀解决方案案例,给出了OpenStack开源解决方案制造行业最佳实践的技术、服务能力以及特点等内容。
云计算开源产业联盟,是在工业和信息化部软件服务业司的指导下,2016年3月9月,由中国信息通信研究院牵头,联合各大云计算开源技术厂商成立的,挂靠中国通信标准化协会的第三方非营利组织,致力于落实政府云计算开源相关扶持政策,推动云计算开源技术产业化落地,引导云计算开源产业有序健康发展,完善云计算开源全产业链生态,探索国内开源运作机制,提升中国在国际开源的影响力。
《2024年基于OpenStack构建私有云计算平台》范文
《基于OpenStack构建私有云计算平台》篇一一、引言随着信息技术的快速发展,云计算已经成为现代信息技术的重要基石。
私有云计算平台的建设对于企业而言,不仅提高了IT 资源的利用效率,也为企业提供了更加灵活和可控的IT服务。
OpenStack作为一种开源的云计算管理平台,被广泛应用于私有云计算平台的构建。
本文将详细阐述基于OpenStack构建私有云计算平台的过程、技术选择及注意事项。
二、OpenStack概述OpenStack是一个由多个组件组成的开源云计算平台,用于构建私有云和公有云。
它提供了计算、存储、网络等基础资源的管理和调度功能,同时支持多种虚拟化技术,如KVM、Xen等。
OpenStack的模块化设计使得用户可以根据实际需求选择所需的组件,从而实现灵活的云计算平台构建。
三、构建私有云计算平台的步骤1. 需求分析:根据企业的实际需求,确定私有云计算平台的规模、功能、性能等要求。
2. 硬件准备:选择合适的服务器、存储和网络设备,搭建物理基础设施。
3. 软件选择:选择适合的OpenStack版本和组件,以及虚拟化技术。
4. 安装与配置:按照OpenStack的安装文档,进行软件的安装和配置。
5. 网络配置:搭建虚拟网络,实现计算节点之间的通信。
6. 存储配置:配置存储服务,如Cinder或Glance等。
7. 资源调度:配置OpenStack的调度器,实现资源的动态分配。
8. 安全策略:设置安全策略,确保云平台的安全运行。
四、技术选择与实施1. 虚拟化技术:选择适合的虚拟化技术,如KVM或Xen等。
2. OpenStack版本与组件:根据实际需求选择合适的OpenStack版本和组件。
建议选择稳定且支持广泛的版本。
3. 存储解决方案:根据业务需求选择适合的存储解决方案,如Ceph或NFS等。
4. 网络解决方案:采用SDN或传统网络架构,实现高效的网络通信。
5. 安全策略:实施多层次的安全防护措施,包括访问控制、数据加密等。
公有云构建与运维经验分享
Loss of nodes causes further issues Not horizontally scalable Reduced reliability with addition of nodes
Message Queue
用户界面和管理平台(Dashboard)
监控节点 Monitor Server 模版库 监控节点 Monitor Server DevOps Server 弹性卷存储 Volume Volume 运维服务
Starting From
8,300+
Regions
2013
8+ APAC
Typical Example
Typical Example
Total Cores Total Memory (GB)
16,000+ 3,2000+
Total Storage (TB) Resource Consumption
OpenStack公有云架构设计与运维 经验分享
马力(Nick) 北京海云捷迅科技有限公司
Agenda
l l l
OpenStack in Production Large Scale & High Available What’s More ?
OpenStack in Production
l
l
Solution
l l
https:///zzzeek/sqlalchemy/issue/3104/ transaction-replay-extension
OpenStack云计算实战第3章OpenStack基础环境课件
3.2 主机节点网络设置
禁用防火墙与SELinux
第3章 OpenStack基础环境
11
禁用防火墙
systemctl disable firewalld systemctl stop firewalld
禁用SELinux ➢ 编辑/etc/selinux/config文件,将“SELINUX”的值设置为“disabled”,重启系统 使禁用SELinux生效。
计算节点 ➢ 部署Nova计算服务的虚拟机管理器以运行虚拟机实例。 ➢ 可以部署不止一个计算节点。 ➢ 每个计算节点至少需要两个网络接口。
3.1 OpenStack云部署架构设计
示例架构的物理部署
第3章 OpenStack基础环境
4
块存储节点 ➢ 块存储节点是可选的。它包括Cinder块存储和Manila共享文件系统为虚拟机实 例提供的磁盘存储。 ➢ 可以部署不止一个块存储节点。 ➢ 每个块存储节点至少需要一个网络接口。
[root@node-a ~]# systemctl status redis ● redis.service - Redis persistent key-value database
➢ MariaDB配置文件为/etc/f以及/etc/f.d/*.cnf。
3.3 数据库服务器及其配置
SQL数据库
手动安装和配置SQL数据库
(1)安装SQL数据库。通常安装MariaDB。 yum install mariadb mariadb-server python2-PyMySQL
8
OpenStack云部署架构设计 主机节点网络设置 数据库服务器及其配置 消息队列服务及其配置
3.2 主机节点网络设置
NetworkManager服务
openstack创建实例实验报告
openstack创建实例实验报告OpenStack是一个开源的云计算平台,可以用于构建和管理私有云和公有云环境。
下面是使用OpenStack创建虚拟机实例的实验报告。
实验目标:1. 了解OpenStack的基本概念和组件。
2. 掌握使用OpenStack创建虚拟机实例的步骤。
3. 验证虚拟机实例的创建是否成功。
实验步骤:1. 安装和配置OpenStack环境:安装OpenStack的各个组件,如控制节点、计算节点、网络节点等。
配置网络,包括外部网络、内部网络和虚拟私有云(VPC)。
2. 登录OpenStack控制面板:使用命令行工具(如OpenStack client)或Web界面登录OpenStack控制面板。
3. 创建虚拟机实例:在控制面板中选择“计算”选项。
点击“创建实例”,填写虚拟机实例的相关信息,如名称、镜像、用户数据等。
选择虚拟机实例的网络和安全组,并配置存储和计算资源。
提交虚拟机实例的创建请求。
4. 验证虚拟机实例的创建:在控制面板中查看虚拟机实例的状态,确认实例是否已成功创建。
使用SSH等工具连接到虚拟机实例,验证其是否正常运行。
5. 删除虚拟机实例:在控制面板中选择“计算”选项。
找到并选择要删除的虚拟机实例。
点击“删除”按钮,确认删除请求。
确认虚拟机实例已成功删除。
实验结果:通过本次实验,我们成功地使用OpenStack创建了一个虚拟机实例,并验证了其正常运行。
在实验过程中,我们了解了OpenStack的基本概念和组件,掌握了使用OpenStack创建虚拟机实例的步骤,并学会了如何验证虚拟机实例的创建是否成功。
OpenStack云平台实践及案例
·· ·
补充:OpenStack部署方案
部署示意
Compute Node
nova-compute
Controller Node
dashboard
nova-compute
Network Node
neutron-server
keystone/mysql ovs/lbaas
HA(A+A) mysql rabbitmq haproxy controller (scheduler) Network (l3/dhcp/met a/agent)
x86服务器:
IBM Flex System一体化刀箱 IBM X3850四路服务器
·· ·
软件和方案
Openstack开源云管理软件 RHEL/KVM开源虚拟化 Sahara/Hadoop集群管理软件 GPFS并行文件系统 实施服务
存储
SVC存储虚拟化 SVC IO的增强 Openstack对SVC存储的支持 SVC的远程容灾 DS3500扩展盘柜
·· ·
OpenStack Practice Cases as known
• • • • • • • • • • • • • • • • • • • • • easystack: 未上线 99cloud:单集群, 十多个物理节点;几十多台VM awcloud:单集群, 150多个物理节点;2000多台VM unitedstack:单集群, 30多个物理节点;3000多台VM 鹏博士:单集群, 100多个物理节点;3000多台VM 东软:/cn/ , 和阿里云合作 锐捷网络:/ 浪潮,锐捷合作方案 顺联软件科技:/ 单集群,200多台VM 华胜天成:/ ,单集群,10多台物理服务器,500多台VM 华三通信:/portal/ , VFC融合产品 中标软件:/index.php?styleid=2 , 普华基础软件股份有限公司: i-VirtualCloud产品 数码港:http://www.cyberport.hk/zh_cn/ ,单集群,10多台物理服务器,200多台VM 山石网科:/about-us ,FWaaS(Firewall as a Service) 云络科技(ChinaNetCloud): 单集群,20多物理服务器,200多台VM 博隆兴中(BloomBase): VDI单集群,1000多台VM 格睿信息(国产桌面虚拟化):VDI单集群,3000多台VM 趣游(游戏):/ ,lightcloud, 单集群,800多台VM 微科思创(教育云管理平台):/ 嘉值科技:/ , VDI单集群,1000多台VM 云动科技:/en/index.aspx ,OpenStack实训云
1.3OpenStack 项目
项目小李经过云计算及相关的基本概念的学习,认为公司可以采用开源的OpenStack云计算解决方案搭建公司的私有云。
主要考虑以下几个有利因素:首先,开源的OpenStack云计算解决方案可以为公司节省很多费用;其次OpenStack 技术的发展日趋成熟,OpenStack 组件数据不断地增加,新支持的功能也是在不断丰富,能够满足公司对云计算平台应用的需求;第三,小李在校期间参加过全国高职院校云计算技术与应用的职业技能竞赛,对OpenStack的云平台搭建比较熟悉。
因此,小李需要重新认识一下OpenStack云计算的技术性能。
OpenStack的技术性能。
IaaS云服务商。
OpenStack 基金会。
OpenStack 项目调研。
1.OpenStack的技术性能OpenStack的快速发展得益于云计算技术的发展,也借助虚拟化革命的出现。
OpenStack为一个开源的云计算解决方案,我们可以将OpenStack简单理解成一个开源的操作系统,它是由Python语言编写的,主要通过命令行(CLI)、程序接口(API)或者基于Web界面(GUI)实现对底层的计算资源、存储资源和网络资源的集中管理功能。
在设计系统架构可以直接运用物理硬件作为底层,我们主要将其作为基础设施即服务(IaaS)作为方案使用。
OpenStack是云计算平台中的一个佼佼者,在云计算平台研发方面,国外有IBM、微软、Google以及OpenStack的鼻祖亚马逊的AWS等。
国内则有Ucloud、海云捷迅、UnitedStack、EasyStack、金山云、阿里云等。
现在比较流行的有CloudStack 、Eucalyptus、vCloud Director和OpenStack。
OpenStack在市场中占据了绝对的份额优势。
OpenStack 社区聚集着一批有实力的厂商和研发公司,他们把自己代码贡献给社区,不断完善和推动OpenStack技术的发展。
云计算管理平台之OpenStack启动虚拟机实例
云计算管理平台之OpenStack启动虚拟机实例在前边的博客中,我们主要聊了下openstack的基础环境、核心服务(认证服务keystone/镜像服务glance/计算服务nova/网络服务neutron)的安装配置;回顾请查看前边的博客;今天我们主要来聊一聊基于前边安装配置的服务来启动一个虚拟机实例;我们知道在openstack中要启动一个虚拟机实例,通常会经过这样几步,第一步我们要有一个用户登录到openstack上,进行创建虚拟机的操作,而这一步通常由keystone服务来验证登录的用户,并返回一个token给用户,如果keystone验证成功,则用户就可以到openstack上进行对应的操作,反之亦然;第二步,用户在keystone 上完成登录验证,并拿到keystone给的token后,用户就可以在openstack上进行创建虚拟机,在创建虚拟机之前,用户要选择创建的虚拟机用那个模板进行创建,用那个镜像来安装系统,选择什么网络,安全组策略等等;这些都必须事先创建好;用户选择好必要的组件后;用户就可以把创建虚拟机的需求发送给openstack 控制节点,由openstack的控制节点间的各服务调用,最后创建一个虚拟机实例;这里需要强调一点,在openstack上创建虚拟机不能像我们使用kvm-qemu工具创建虚拟机指定要使用的虚拟cpu,内存,磁盘等等信息;在openstack上创建虚拟机,它是通过模板来定义虚拟机的基础信息的;专业术语叫flavor;了解了创建虚拟机的大致过程后,我们基于之前配置的环境来跑一个虚拟机实例在openstack上;1、创建模板在控制节点上导出admin环境变量,创建flavor[root@node01 ~]# source admin.sh[root@node01 ~]# openstack flavor create --id 0 --vcpus 1 --ram 64 --disk 1 m1.nano+----------------------------+---------+| Field | Value |+----------------------------+---------+| OS-FLV-DISABLED:disabled | False || OS-FLV-EXT-DATA:ephemeral | 0 || disk | 1 || id | 0 || name | m1.nano || os-flavor-access:is_public | True || properties | || ram | 64 || rxtx_factor | 1.0 || swap | || vcpus | 1 |+----------------------------+---------+[root@node01 ~]#导出demo用户环境变量,创建一个keypair[root@node01 ~]# source demo.sh[root@node01 ~]# ssh-keygen -q -N ""Enter file in which to save the key (/root/.ssh/id_rsa):/root/.ssh/id_rsa already exists.Overwrite (y/n)? y[root@node01 ~]# openstack keypair create --public-key ~/.ssh/id_rsa.pub demo_key+-------------+-------------------------------------------------+| Field | Value |+-------------+-------------------------------------------------+| fingerprint | ed:28:2f:00:14:3d:f0:80:6d:0a:0c:ca:41:60:f9:e1 | | name | demo_key || user_id | 5453d68782a34429a7dab7da9c51f0d9 | +-------------+-------------------------------------------------+[root@node01 ~]#列出安全组[root@node01 ~]# openstack security group list+--------------------------------------+---------+------------------------+----------------------------------+------+| ID | Name | Description | Project | Tags |+--------------------------------------+---------+------------------------+----------------------------------+------+| 06b13f55-8beb-48d4-9994-490acc5488cf | default | Default security group | 1a918887f38a42c28f9d0d3774f34b16 | [] | +--------------------------------------+---------+------------------------+----------------------------------+------+[root@node01 ~]#查看default安全组中的规则[root@node01 ~]# openstack security group rule list+--------------------------------------+-------------+----------+------------+--------------------------------------+--------------------------------------+| ID | IP Protocol | IP Range | Port Range | Remote Security Group | Security Group | +--------------------------------------+-------------+----------+------------+--------------------------------------+--------------------------------------+| 361377d6-c836-416f-a00b-245d4f62baf2 | None | None | | 06b13f55-8beb-48d4-9994-490acc5488cf | 06b13f55-8beb-48d4-9994-490acc5488cf || 65618465-214b-49ae-8516-888380a0475c | None | None | | 06b13f55-8beb-48d4-9994-490acc5488cf |06b13f55-8beb-48d4-9994-490acc5488cf || 72796899-293a-40fc-ba1a-4d67f0009af9 | None | None | | None | 06b13f55-8beb-48d4-9994-490acc5488cf || 870614db-372d-4f10-8b81-71b473f586ad | None | None | | None | 06b13f55-8beb-48d4-9994-490acc5488cf |+--------------------------------------+-------------+----------+------------+--------------------------------------+--------------------------------------+[root@node01 ~]#提示:openstack上的安全组我们可以理解为一个虚拟的防火墙,里面的rule我们可以理解为iptabels规则;从上面查看default安全组中的规则来看,它默认是禁止任何ip任何协议连接内部虚拟机;这很显然不符合我们需求,至少我们应该把ssh端口开放出去;添加开放ssh端口的rule到default安全组中[root@node01 ~]# openstack security group rule create --proto tcp --dst-port 22 default+-------------------+--------------------------------------+| Field | Value |+-------------------+--------------------------------------+| created_at | 2020-10-31T09:12:25Z || description | || direction | ingress || ether_type | IPv4 || id | 703d962b-7321-4103-be77-4f1383f6d97d || name | None || port_range_max | 22 || port_range_min | 22 || project_id | 1a918887f38a42c28f9d0d3774f34b16 || protocol | tcp || remote_group_id | None || remote_ip_prefix | 0.0.0.0/0 || revision_number | 0 || security_group_id | 06b13f55-8beb-48d4-9994-490acc5488cf || updated_at | 2020-10-31T09:12:25Z |+-------------------+--------------------------------------+[root@node01 ~]#提示:这里创建安全组规则还是使用demo用户的环境变量;添加开放icmp协议rule到default安全组中[root@node01 ~]# openstack security group rule create --proto icmp default+-------------------+--------------------------------------+| Field | Value |+-------------------+--------------------------------------+| created_at | 2020-10-31T09:14:29Z || description | || direction | ingress || ether_type | IPv4 || id | f00b068c-fe94-4aa5-af81-83e6d94c6ec4 || name | None || port_range_max | None || port_range_min | None || project_id | 1a918887f38a42c28f9d0d3774f34b16 | | protocol | icmp || remote_group_id | None || remote_ip_prefix | 0.0.0.0/0 || revision_number | 0 || security_group_id | 06b13f55-8beb-48d4-9994-490acc5488cf || updated_at | 2020-10-31T09:14:29Z |+-------------------+--------------------------------------+[root@node01 ~]#提示:这一步不是必须,我们这里添加icmp到default安全组是方便后面测试用;验证:查看default安全组中的规则,看看我们添加到规则是否都添加上了?[root@node01 ~]# openstack security group rule list+--------------------------------------+-------------+-----------+------------+--------------------------------------+--------------------------------------+| ID | IP Protocol | IP Range | Port Range | Remote Security Group | Security Group | +--------------------------------------+-------------+-----------+------------+--------------------------------------+--------------------------------------+| 361377d6-c836-416f-a00b-245d4f62baf2 | None | None | | 06b13f55-8beb-48d4-9994-490acc5488cf | 06b13f55-8beb-48d4-9994-490acc5488cf || 65618465-214b-49ae-8516-888380a0475c | None | None | | 06b13f55-8beb-48d4-9994-490acc5488cf | 06b13f55-8beb-48d4-9994-490acc5488cf || 703d962b-7321-4103-be77-4f1383f6d97d | tcp | 0.0.0.0/0 | 22:22 | None | 06b13f55-8beb-48d4-9994-490acc5488cf || 72796899-293a-40fc-ba1a-4d67f0009af9 | None | None | | None | 06b13f55-8beb-48d4-9994-490acc5488cf || 870614db-372d-4f10-8b81-71b473f586ad | None |None | | None | 06b13f55-8beb-48d4-9994-490acc5488cf || f00b068c-fe94-4aa5-af81-83e6d94c6ec4 | icmp | 0.0.0.0/0 | | None | 06b13f55-8beb-48d4-9994-490acc5488cf |+--------------------------------------+-------------+-----------+------------+--------------------------------------+--------------------------------------+[root@node01 ~]#提示:可以看到default安全组里多了两条rule;2、基于provider network创建虚拟机实例在控制节点导出demo用户的环境变量,验证是否有可用模板?[root@node01 ~]# source demo.sh[root@node01 ~]# openstack flavor list+----+---------+-----+------+-----------+-------+-----------+| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |+----+---------+-----+------+-----------+-------+-----------+| 0 | m1.nano | 64 | 1 | 0 | 1 | True |+----+---------+-----+------+-----------+-------+-----------+[root@node01 ~]#验证是否有可用镜像?[root@node01 ~]# openstack image list+--------------------------------------+--------+--------+| ID | Name | Status |+--------------------------------------+--------+--------+| 94dd2ba0-1736-4307-865d-7cb86b85d32e | cirros | active | +--------------------------------------+--------+--------+[root@node01 ~]#验证是否有安全组?[root@node01 ~]# openstack security group list+--------------------------------------+---------+------------------------+----------------------------------+------+| ID | Name | Description | Project | Tags |+--------------------------------------+---------+------------------------+----------------------------------+------+| 06b13f55-8beb-48d4-9994-490acc5488cf | default | Default security group | 1a918887f38a42c28f9d0d3774f34b16 | [] | +--------------------------------------+---------+------------------------+----------------------------------+------+[root@node01 ~]#验证是否有可用网络?[root@node01 ~]# openstack network list[root@node01 ~]#提示:这里显示为空,表示没有任何可用网络;创建provider network在控制节点导出admin用户的环境变量,创建provider network [root@node01 ~]# source admin.sh[root@node01 ~]# openstack network create --share --external > --provider-physical-network provider > --provider-network-type flat provider-net+---------------------------+--------------------------------------+| Field | Value |+---------------------------+--------------------------------------+| admin_state_up | UP || availability_zone_hints | || availability_zones | || created_at | 2020-10-31T09:27:26Z || description | || dns_domain | None || id | d4732915-a968-499d-b34b-00a6fa4c401d || ipv4_address_scope | None || ipv6_address_scope | None || is_default | False || is_vlan_transparent | None || mtu | 1500 || name | provider-net || port_security_enabled | True || project_id | b4e56eeb160948c581e98d685133d19a || provider:network_type | flat || provider:physical_network | provider || provider:segmentation_id | None || qos_policy_id | None || revision_number | 1 || router:external | External || segments | None || shared | True || status | ACTIVE || subnets | || tags | || updated_at | 2020-10-31T09:27:26Z |+---------------------------+--------------------------------------+[root@node01 ~]#提示:--share表示创建一个共享网络(桥接网络),--external 表示创建一个外部的网络,如果希望创建的是内部网络,可以使用--internal选项来指明即可;--provider-network-type flat表示创建的网络类型为平面网络;最后是给我们创建的网络起一个名称叫provider-net;这里需要注意一点,--provider-physical-network这个选项的值要和我们在配置neutron服务时,在ml2_conf.ini文件中【ml2_type_flat】配置段中的flat_networks 的值保持一致;如下所示提示:/etc/neutron/plugins/ml2/ml2_conf.ini 这个配置文件中的【ml2_type_flat】配置段中的flat_networks的值要和/etc/neutron/plugins/ml2/linuxbridge_agent.ini配置文件中的【linux_bridge】配置段中的physical_interface_mappings中的provider名称保持一致;如下所示提示:以上两个配置文件中标记的部分都需要同这里创建网络时指定的--provider-physical-network 选项的值保持一致;创建子网[root@node01 ~]# openstack subnet create --network provider-net > --allocation-pool start=192.168.0.100,end=192.168.0.150 > --dns-nameserver 61.139.2.69 --gateway 192.168.0.1 > --subnet-range 192.168.0.0/24 provider-net-sub+-------------------+--------------------------------------+| Field | Value |+-------------------+--------------------------------------+| allocation_pools | 192.168.0.100-192.168.0.150 || cidr | 192.168.0.0/24 || created_at | 2020-10-31T09:48:35Z || description | || dns_nameservers | 61.139.2.69 || enable_dhcp | True || gateway_ip | 192.168.0.1 || host_routes | || id | 08341b97-47d0-4c81-bb04-385f36c6b609 | | ip_version | 4 || ipv6_address_mode | None || ipv6_ra_mode | None || name | provider-net-sub || network_id | d4732915-a968-499d-b34b-00a6fa4c401d || project_id | b4e56eeb160948c581e98d685133d19a | | revision_number | 0 || segment_id | None || service_types | || subnetpool_id | None || tags | || updated_at | 2020-10-31T09:48:35Z |+-------------------+--------------------------------------+[root@node01 ~]#提示:--network使用来指定使用那个网络来创建子网,或者说给那个网络创建子网,这个名称要和我们创建网络时给的名称保持一致;这里需要说明一点,provider network是桥接到物理网卡上,所以这里的子网要根据你物理网络来划分子网;验证:导出demo环境变量,看看demo用户是否有可用网络?[root@node01 ~]# source demo.sh[root@node01 ~]# openstack network list+--------------------------------------+--------------+--------------------------------------+| ID | Name | Subnets | +--------------------------------------+--------------+--------------------------------------+| d4732915-a968-499d-b34b-00a6fa4c401d | provider-net | 08341b97-47d0-4c81-bb04-385f36c6b609 |+--------------------------------------+--------------+--------------------------------------+[root@node01 ~]#创建虚拟机[root@node01 ~]# openstack server create --flavor m1.nano --image cirros > --nic net-id=d4732915-a968-499d-b34b-00a6fa4c401d --security-group default > --key-name demo_key demo_vm1+-----------------------------+-----------------------------------------------+| Field | Value |+-----------------------------+-----------------------------------------------+| OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | | | OS-EXT-STS:power_state | NOSTATE | | OS-EXT-STS:task_state | scheduling | | OS-EXT-STS:vm_state | building | | OS-SRV-USG:launched_at | None | | OS-SRV-USG:terminated_at | None | | accessIPv4 | || accessIPv6 | || addresses | || adminPass | kCjHs82pTgRp || config_drive | || created | 2020-10-31T09:55:13Z || flavor | m1.nano (0) || hostId | || id | a9f76200-0636-48ab-9eda-69526dab0653 || image | cirros (94dd2ba0-1736-4307-865d-7cb86b85d32e) || key_name | demo_key || name | demo_vm1 || progress | 0 || project_id | 1a918887f38a42c28f9d0d3774f34b16 || properties | || security_groups | name='06b13f55-8beb-48d4-9994-490acc5488cf' || status | BUILD || updated | 2020-10-31T09:55:13Z || user_id | 5453d68782a34429a7dab7da9c51f0d9 || volumes_attached | |+-----------------------------+-----------------------------------------------+[root@node01 ~]#查看虚拟机状态[root@node01 ~]# openstack server list+--------------------------------------+----------+--------+----------------------------+--------+---------+| ID | Name | Status | Networks | Image | Flavor |+--------------------------------------+----------+--------+----------------------------+--------+---------+| a9f76200-0636-48ab-9eda-69526dab0653 | demo_vm1 | ACTIVE | provider-net=192.168.0.103 | cirros | m1.nano |+--------------------------------------+----------+--------+----------------------------+--------+---------+[root@node01 ~]#提示:可以看到demo_vm1处于active状态,使用的网络上provicder-net,ip地址为192.168.0.103,使用的镜像是cirros镜像,使用的模板是m1.nano;验证:在计算节点使用virsh命令看看是否能够看到启动的虚拟机?[root@node03 ~]# virsh listId Name State----------------------------------------------------1 instance-00000001 running[root@node03 ~]#提示:在计算节点上用virsh命令查看虚拟机,它有它自己的命名;从上面的命令结果可以看到,在计算节点上有一个虚拟机实例处于running状态;验证:使用其他主机ping虚拟机的ip地址,看看是否能够ping通?[root@node02 ~]# ping 192.168.0.103PING 192.168.0.103 (192.168.0.103) 56(84) bytes of data.64 bytes from 192.168.0.103: icmp_seq=1 ttl=64 time=7.14ms64 bytes from 192.168.0.103: icmp_seq=2 ttl=64 time=1.92ms64 bytes from 192.168.0.103: icmp_seq=3 ttl=64 time=0.905 ms^C--- 192.168.0.103 ping statistics ---3 packets transmitted, 3 received, 0% packet loss, time 2002msrtt min/avg/max/mdev = 0.905/3.325/7.148/2.735 ms[root@node02 ~]#查看虚拟机实例的vnc地址[root@node01 ~]# openstack console url show demo_vm1 +-------+-------------------------------------------------------------------------------------------+| Field | Value | +-------+-------------------------------------------------------------------------------------------+| type | novnc | | url | http://controller:6080/vnc_auto.html?path=%3Ftoken%3Dbe38c bc9-7742-41b4-aef4-2d94ea510ca8 |+-------+-------------------------------------------------------------------------------------------+[root@node01 ~]#使用浏览器访问上述命令返回的url,看看是否能够访问到对应虚拟机的vnc控制台?提示:使用windows访问,需要在windows上对controller做地址解析;验证:登录虚拟机系统,看看虚拟机是否可正常访问外部网络?提示:可以看到使用虚拟机ping外部网络能够正常ping通,并且虚拟机获取到地址和我们宿主机在同一网段中;说明我们基于provider network启动的虚拟机实例运行正常;验证:使用控制节点用ssh连接虚拟机,看看是否是免密登录?[root@node01~]#*****************.0.103The authenticity of host '192.168.0.103 (192.168.0.103)' can't be established.ECDSA key fingerprint is SHA256:NnU0otuUa4VYObeLL4BmFMdHEvgsdvMzZadGnP/xcW4.ECDSA key fingerprint is MD5:e3:b5:be:67:99:cb:12:f4:3f:dd:ad:af:2c:86:7d:c7.Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.0.103' (ECDSA) to the list of known hosts.$ sudo su -# ifconfigeth0 Link encap:Ethernet HWaddr FA:16:3E:03:80:17inet addr:192.168.0.103 Bcast:192.168.0.255 Mask:255.255.255.0inet6 addr: fe80::f816:3eff:fe03:8017/64 Scope:LinkUP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:173 errors:0 dropped:0 overruns:0 frame:0TX packets:177 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:20633 (20.1 KiB) TX bytes:17495 (17.0 KiB)lo Link encap:Local Loopbackinet addr:127.0.0.1 Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING MTU:65536 Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0TX packets:0 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)# exit$ exitConnection to 192.168.0.103 closed.[root@node01 ~]#提示:在控制节点使用ssh命令能够免密登录到虚拟机,是因为在控制节点上有对应虚拟机的密钥对,在创建虚拟机时我们创建的密钥对会通过openstack把密钥注入到虚拟机里;从上面的验证过程也说明了我们在default安全组添加的放行ssh 22端口也是生效了;到此基于provider network启动一个虚拟机实例就完成了;3、基于self-sevice network创建虚拟机实例在控制节点导出demo用户环境变量,创建self-service network [root@node01 ~]# source demo.sh[root@node01 ~]# openstack network create demo_selfservice_net+---------------------------+--------------------------------------+| Field | Value |+---------------------------+--------------------------------------+| admin_state_up | UP || availability_zone_hints | || availability_zones | || created_at | 2020-10-31T10:33:55Z || description | || dns_domain | None || id | ad433d82-6fe1-4e51-9fe2-4cfa0fa2040d || ipv4_address_scope | None || ipv6_address_scope | None || is_default | False || is_vlan_transparent | None || mtu | 1450 || name | demo_selfservice_net || port_security_enabled | True || project_id | 1a918887f38a42c28f9d0d3774f34b16 || provider:network_type | None || provider:physical_network | None || provider:segmentation_id | None || qos_policy_id | None || revision_number | 1 || router:external | Internal || segments | None || shared | False || status | ACTIVE || subnets | || tags | || updated_at | 2020-10-31T10:33:55Z |+---------------------------+--------------------------------------+[root@node01 ~]#提示:创建self-service network请确保/etc/neutron/plugins/ml2/ml2_conf.ini配置文件中的【ml2】配置段中配置的tenant_network_types = vxlan,以及【ml2_type_vxlan】配置段中配置的有vxlan的标识范围,如下所示创建子网[root@node01 ~]# openstack subnet create --network demo_selfservice_net > --dns-nameserver 61.139.2.69 --gateway 10.0.0.254 > --subnet-range 10.0.0.0/8demo_selfservice_net_sub+-------------------+-----------------------------------------------+| Field | Value |+-------------------+-----------------------------------------------+| allocation_pools | 10.0.0.255-10.255.255.254,10.0.0.1-10.0.0.253 || cidr | 10.0.0.0/8 || created_at | 2020-10-31T10:42:52Z || description | || dns_nameservers | 61.139.2.69 || enable_dhcp | True || gateway_ip | 10.0.0.254 || host_routes | || id | 1f2e1eca-d827-4d30-8c33-2ed1a5420d86 || ip_version | 4 || ipv6_address_mode | None || ipv6_ra_mode | None || name | demo_selfservice_net_sub || network_id | ad433d82-6fe1-4e51-9fe2-4cfa0fa2040d || project_id | 1a918887f38a42c28f9d0d3774f34b16 || revision_number | 0 || segment_id | None || service_types | || subnetpool_id | None || tags | || updated_at | 2020-10-31T10:42:52Z |+-------------------+-----------------------------------------------+[root@node01 ~]#提示:这里我们创建子网就不用admin用户的环境变量,用demo用户的环境变量即可;因为self-service network创建的就是一个租户网络,由租户自行管理;创建虚拟路由器[root@node01 ~]# openstack router create demo_selfservice_net_sub_router1+-------------------------+--------------------------------------+| Field | Value |+-------------------------+--------------------------------------+| admin_state_up | UP || availability_zone_hints | || availability_zones | || created_at | 2020-10-31T10:48:53Z || description | || external_gateway_info | None || flavor_id | None || id | 2c288a0c-c2ce-4bca-b0a8-d795844ea3e6 || name | demo_selfservice_net_sub_router1 || project_id | 1a918887f38a42c28f9d0d3774f34b16 || revision_number | 1 || routes | || status | ACTIVE || tags | || updated_at | 2020-10-31T10:48:53Z |+-------------------------+--------------------------------------+[root@node01 ~]#将上面创建的子网添加到路由器[root@node01 ~]# openstack router add subnet demo_selfservice_net_sub_router1 demo_selfservice_net_sub [root@node01 ~]#提示:openstack router add subnet 后面跟虚拟路由启动名称(或id)和子网的名称(或id);设置虚拟路由器的上游网络,有点类似设置路由器的wlan口网络[root@node01 ~]# openstack router set demo_selfservice_net_sub_router1 --external-gateway provider-net[root@node01 ~]#到此虚拟路由器就创建和配置完成验证:在控制节点导出admin用户环境变量,查看网络名称空间信息[root@node01 ~]# source admin.sh[root@node01 ~]# ip netnsqrouter-2c288a0c-c2ce-4bca-b0a8-d795844ea3e6 (id: 2)qdhcp-ad433d82-6fe1-4e51-9fe2-4cfa0fa2040d (id: 1)qdhcp-d4732915-a968-499d-b34b-00a6fa4c401d (id: 0)[root@node01 ~]#提示:能看到一个qrouter名称空间和两个qdhcp名称空间。
openstack dashboard 创建实例
OpenStack是一个开源的云计算评台,它提供了强大的功能,可以帮助用户轻松地管理云环境中的计算、网络和存储资源。
其中,OpenStack的Dashboard是一个方便用户进行操作的Web用户界面,用户可以通过Dashboard来创建、管理云实例,进行网络设置等操作。
本文将介绍如何在OpenStack的Dashboard中创建云实例。
一、登录OpenStack Dashboard打开浏览器,在位置区域栏中输入OpenStack Dashboard的URL,然后输入账号和密码进行登录。
登录成功之后,你将会看到OpenStack Dashboard的主界面,这里包括了各种云计算资源的管理功能。
二、创建项目在OpenStack中,项目是一个逻辑隔离的资源单位,用来隔离不同用户和不同业务的资源。
在Dashboard中创建项目非常简单,只需要点击“项目”菜单,然后选择“创建项目”,填写项目的名称和描述等信息即可。
三、创建网络在创建云实例之前,我们需要先创建一个网络,以便云实例能够正常通信。
在Dashboard中,点击“网络”菜单,然后选择“创建网络”,填写网络的名称、子网和网关等信息即可创建网络。
四、创建云实例接下来就是创建云实例了。
在Dashboard中,点击“实例”菜单,然后选择“启动实例”,填写实例的名称、镜像、规格和网络等信息,点击“启动”按钮即可创建云实例。
在这一步骤中,用户可以根据自己的需求选择不同的镜像和规格来创建云实例,以满足不同的计算需求。
五、管理云实例一旦创建了云实例,用户可以在Dashboard中通过“实例”菜单来管理已经创建的云实例。
用户可以对实例进行开机、关机、重启等操作,也可以查看实例的资源使用情况和性能数据。
总结通过OpenStack Dashboard,用户可以方便地创建、管理云实例,进行网络设置等操作。
OpenStack Dashboard提供了直观、易用的用户界面,使得用户可以轻松地进行云计算操作。
04-搭建Openstack 多节点的企业私有云平台1
7/8
第四章 案例:搭建OpenStack
多节点的企业私有云平台
理论讲解
本章结构
案例概述 案例前置知识点 案例环境 案例实施
2/8
案例概述
企业环境中部署OpenStack
在部署方案的选择上,除了单节点部署外,还可以选择多节点部 署,尤其是在生产环境中。单节点的计算资源远远无法满足企业 的真实需求,OpenStack可以通过添加计算节点的方式横向扩展 所需的计算资源,也可以将不同的服务部署到多个节点以减轻负 载,提高效率
4/8
案例环境
案例拓扑图
节点配置信息
主机名 controller compute1 block1
IP地址 192.168.9.250 192.168.16.128 192.168.9.37 192.168.16.129
192.168.9.34
用途 控制节点 计算节点 存储节点
5/8
案例实施
3/8
案例前置知识点
OpenStack核心组件
Compute(Nova):提供计算服务 Object Storage(Swift):提供对象存储服务 Identity(Keystone):提供认证服务 Dashboard(Horizon):提供Web管理控制台服务 Block Storage(Cinder):提供块存储服务 Network(Neutron):提供网络服务 ImageService(Glance):提供镜像服务
最佳公有云服务的8个应用案例
最佳公有云服务的8个应用案例(原稿)胡经国本文作者的话本文是根据有关文献和资料编写的《漫话云计算》系列文稿之一。
现作为云计算学习笔录,奉献给云计算业外读者,作为进一步学习和研究的参考。
希望能够得到大家的指教和喜欢!下面是正文公有云解决方案,陷入无穷无尽的不信任困境之中。
因为,它不能解除对企业治理和可靠性等问题的担心。
尽管如此,如果这些公有云解决方案能够向支持它们的业务主管展示具体的业务解决方案,那么它们仍然可以进入企业。
公有云解决方案很可能在目前的商业环境中取得成功。
在目前的商业环境中,公有云提供商能够从中学到什么以增强未来的应用?首先提供一个解决方案,提供企业不能拒绝的经济好处。
一些公有云解决方案正在这方面获得吸引力。
这些公有云解决方案是:一、应用开发、测试和分段实施公有云IaaS(基础设施即服务),使企业能够放弃建造新的数据中心,或者扩建目前的数据中心。
企业这样做,是因为它把应用开发、测试和分段实施等工作量,卸载到了第三方云提供商。
由于企业可以按照使用情况增加或者减少付费,企业不会增加新的资本开支;并且在应用开发、测试和分段实施活动减缓的时候避开资源闲置的风险。
只要云提供商拥有满足企业标准的治理和数据保护政策,外包对于企业CIO(首席信息官)和CFO(首席财务官)来说,是一个极为诱人的选择。
二、临时处理和存储需求在假日零售季节等处理高峰期,企业可以从云服务商那里“租赁”所需资源,以便增加处理和存储能力。
这个好处与应用开发、测试和分段实施很相似。
三、数据存档假设云提供商能够满足企业治理标准,一些企业愿意把历史数据从自己的数据中心卸载到云服务中。
这个假设是:这些数据是不需要用于大数据趋势分析的,并且仅仅用于长期存储目的。
四、虚拟桌面基础架构虚拟桌面基础架构(VDI)目前还尚无定论。
VDI最初是作为减少办公软件许可证费用的一个“热门的”想法。
但是,后来导致了性能和管理的问题。
不过,企业CIO(首席信息官)仍在考虑使用VDI。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
STRICTLY CONFIDENTIAL
‹#›
公有云平台OpenStack架构设计
公有云前端平台
Nova Nova
Nova API
Keystone
Keystone Server
Compute Node
Queue
Keystone DB Neutron VM
Neutron Server
Nova
Nova-Compute
网络设备
管理段和业务段隔离是必须的。 内外⺴网网数据的流向要在前期都做 好规划。特别是存储数据。
安全设备
硬件作为第一层防护是必要的,出 口防火墙需要对DDOS、TCP/UDP 等做防护。流量的QoS也是安全防 护重要环节
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
OpenStack公有云解决方方案介绍
用户界面 公网IP管理 自助流程 支付集成 工单管理 备案管理 计费模块 资源管理
前端模块
OpenStack层
物理架构
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
公有云界面面功能
新建、管理、资源监控、配 置更改 虚拟Vlan划分、IP分 配、路由分配
虚机管理
网络管理
计费系统
按需付费、预付费、阶 梯式价格、组合式价格
容量分配、块存储、 S3、IO性能
存储管理
安全控制
内外网隔离、备份策略、 流量QoS
‹#›
公有云平台监控设计
• nagios的统一一监控 • 无无agent通过libvirt获取数据 • 有agent通过logstash采集数据 • OpenStack服务监控 • 故障告警服务 • email通知机制
Copyright © 2013 99Cloud. All rights reserved.
Hypervisor
Scheduler Conductor Nova Cell
Plugin /Agent
Nova DB Cinder Block Storage Node
Queue Storage
Network
Neutron DB
Plugin /Agent
Glance
Glance API
Cinder API Scheduler
NOVA-COMPUTE! OVS-AGENT
VM VM
VM
Private Switch
Copyright © 2013 99Cloud. All rights reserved. STRICTLY CONFIDENTIAL ‹#›
公有云平台⺴网网络架构设计(NEUTRON)
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
公有云运营规划建议
成熟期
准确定位公有云产品地位。预估用户数量、制定 软硬件更新计划、基础设备资源存量等。并在增 值服务上继续挖掘用户需求;
Solaris
Glance Registry
Network Node
DHCP/IPAM
zfs pool
Cinder DB
Cinder Vol
Router/GW
Glance DB
zfs Disk
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
OpenStack公有云解决方方案介绍
用户界面 公网IP管理 自助流程 支付集成 工单管理 备案管理 计费模块 资源管理
前端模块
OpenStack层
物理架构
Copyright © 2013 99Cloud. All rights reserved.
发展期
挖掘用户需求和功能的筛选,对用户体验和应用 做进一步开发测试。增加产品完整性
建设期
稳定性为主,不追求过多用户数量。 以实际运营数据和性能数据来检验架构完整性和 合理性。了解负载情况和临界值;
Copyright © 2013 99Cloud. All rights reserved.
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
公有云平台演示示介绍
• 用用户平台 • 管理员平台
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
为什么选择OpenStack
OpenStack公有云案例
全球最多的开发者 Source:
Copyright © 2013 99Cloud. All rights reserved.
OpenStack公有云案例分享
2014年5月月 @CSDN公开课 章津楠/吴彧铖
Copyright © 2013 99Cloud. All rights reserved.
STRICTLY CONFIDENTIAL
‹#›
课程⺫目目标
• 为什么选择OpenStack构建公有云 • 如何用用OpenStack构建公有云 • OpenStack公有云架构设计 • OpenStack公有云运维经验 • OpenStack公有云常⻅见问题及解决方方案 • 怎么获得基于OpenStack公有云平台软件
eth1 VLAN TAG qr-c0bfa11f-fe(tag=1) br-eth1(veth) eth1 qr-c0bfa11f-ae(tag=1)
br-int
VM
br-int
br-eth1(veth)
qr-c0bfa11f-ce(tag=1) qr-c0bfa11f-a1(tag=1) qr-c0bfa11f-e2(tag=1) qr-c0bfa11f-ca
STRICTLY CONFIDENTIAL
‹#›
公有云平台前端架构设计
• 基础服务层:包括数据 库与虚拟化平台,提供 数据存储服务和计算资 源虚拟化等,同时包括 对各类计算资源用用量进 行行计量。 • 业务层:包括用用户/租 户管理,账单管理,订 单管理以及计算资源管 理等。 • 访问层:向系统管理 员、经销商和最终用用户 提供基于WEB的访问界 面面,供各种角角色色进行行业 务操作。
VM VM
VM
Private Switch
Copyright © 2013 99Cloud. All rights reserved. STRICTLY CONFIDENTIAL ‹#›
公有云平台⺴网网络架构设计(NOVA-‐NETWORK)
! !
COMPUTE NODE!
Portal UI
访 问 层
用用户 租户管理
计费 组建
订单 管理
虚拟资源 管理
业 务 层
libvirt 数据库
OpenStack API Hypervisor
基 础 服 务 层
Copyright © 2013 99Cloud. All rights reserved.
NOVA-COMPUTE! NOVA-NETWORK! Floating IP vlan101@eth0 eth1 iptables
Dnsmasq vlan100@eth0
Dnsmasq
br100
vnet1
br101
vnet2
eth0
eth0
VM1
VM2
Router
eth0
Copyright © 2013 99Cloud. All rights reserved. STRICTLY CONFIDENTIAL ‹#›
STRICTLY CONFIDENTIAL
‹#›
公有云运营规划建议
计算节点
选择适合应用的服务器,必要时定制 服务器配置。评估现成产品可用性, 避免盲目选择
存储节点
直接文件共享或NAS在中后期无法 符合IO读写,存在性能瓶颈和单点 故障。尽量考虑分布式存储或冗余 性高的产品。
Infrastructure
STRICTLY CONFIDENTIAL
‹#›
公有云平台部署架构
各阶段配置
阶段 建设期 发展期 成熟期 物理环境 单数据中心心 双数据中心心 多数据中心心 基本配置 3~5机柜 15~20机柜 30机柜以上 规模 500台VMs 2500~4000台VMs 6000台VMs以上
以建设期为例-‐基础资源
STRICTLY CONFIDENTIAL
‹#›
公有云平台⺴网网络架构设计(NOVA-‐NETWORK)
Public Switch
!
CONTROLLER!
! ! ! ! !
COMPUTE NODE!
!
!
KEYSTONE! NOVA-COMPONENTS! GLANCE! CINDER
NOVA-COMPUTE! NOVA-NETWORK
STRICTLY CONFIDENTIAL
‹#›
OpenStack公有云解决方方案介绍
用户界面 公网IP管理 自助流程 支付集成 工单管理 备案管理 计费模块 资源管理
前端模块
OpenStack层
物理架构
Copyright © 2013 99Cloud. All rights reserved.
br-ex