1:openstack简介
OpenStack是一个由NASA(
美国国家航空航天局)和Rackspace
合作研发并发起的,以
Apache许可证授权的
自由软件和
开放源代码项目,
OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支
持几乎所有类型的云环境,项目目标是提供实施简单、
可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施
即服务(IaaS)的解决方案,每个服务提供API以进行集成。O
penStack是一个旨在为公共及
私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设
施即服务
(IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家
利用
OpenStack前端来设置及管理自己的公共云或私有云。OpenStack云计算平台,帮助服
务商和企业内部实现类似于 Amazon EC2 和 S3 的云基础架构服务(Infrastructure
as a Service,
IaaS)。OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是
Rackspace开发的分布式云存储模块
,两者可以一起用,也可以分开单独用。OpenStack除了有 Rackspace 和 NASA
的大力支持外,还有包括 Dell、Citrix、 Cisco、
Canonical等重量级公司的贡献和支持,
发展速度非常快,有取代另一个业界领先开源云平台 Eucalyptus 的态势。
适用范围:
OpenStack是IaaS(基础设施即服务)组件,让任何人都可以自行建立和提供云端运算服务。此外,OpenStack也用作建立防火墙内的“私有云”(
Private Cloud),提供机构或企业内各部门共享资源。
基本架构:
核心项目:
计算(Compute):Nova。一套控制器,用于为单个用户或使用群组管理虚拟机实例的整个生命周期,根据用户需求来提供虚拟服务。负责虚拟机创建、
开机、
关机、挂起、暂停、调整、迁移、重启、销毁等操作,配置CPU、内存等信息规格。自Austin版本集成到项目中。
对象存储(Object
Storage):Swift。一套用于在大规模可扩展系统中通过内置冗余及高容错机制实现对象存储的系统,允许进行存储或者检索文件。可为Glance
提供镜像存储,为Cinder提供卷备份服务。自Austin版本集成到项目中
镜像服务(Image
Service):Glance。一套虚拟机镜像查找及检索系统,支持多种虚拟机镜像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、
VDI、VHD、
VMDK),有创建上传镜像、删除镜像、编辑镜像基本信息的功能。自Bexar版本集成到项目中。
身
份服务(Identity
Service):Keystone。为OpenStack其他服务提供身份验证、服务规则和服务令牌的功能,管理Domains、Projects、
Users、Groups、Roles。
自Essex版本集成到项目中。
网络&地址管理(Network):Neutron。提供云计算的网络虚拟化技术,为OpenStack其他服务提供网络连接服务。为用户提供接
口,可以定义Network、Subnet、
Router,配置DHCP、DNS、负载均衡、L3服务,网络支持GRE、VLAN。插件架构支持许多主流
的网络厂家和技术,如OpenvSwitch。自Folsom版本集成到项目中
块存储 (Block Storage):Cinder。为运行实例提供稳定的数据块存储服务,它的插件驱动架构有利于块设备的创建和管理,如创建卷、删除卷,在实例上挂载和卸载卷。
自Folsom版本集成到项目中。
UI 界面 (Dashboard):Horizon。OpenStack中各种服务的Web管理门户,用于简化用户对服务的操作,例如:启动实例、分配IP地址、配置访问控制等。自Essex版
本集成到项目中。
测量 (Metering):Ceilometer。像一个漏斗一样,能把OpenStack内部发生的几乎所有的事件都收集起来,然后为计费和监控以及其它服务提供数据支撑。自Havana版
本集成到项目中
部署编排 (Orchestration):Heat。提供了一种通过模板定义的协同部署方式,实现云基础设施软件运行环境(计算、存储和网络资源)的自动化部署。自Havana版本集
成到项目中。
数据库服务(Database Service):Trove。为用户在OpenStack的环境提供可扩展和可靠的关系和非关系数据库引擎服务。自Icehouse版本集成到项目中。
2:硬件需求:
内存8G,,当然越大越好
两块磁盘
3:操作系统:
rhel-7.0
selinux enforcing
firewall stop
NetworkManager stop disable
4:网络配置:
# Generated by dracut initrd
DEVICE="eth0"
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.122.100
PREFIX=24
GATEWAY=192.168.122.1
5:设置 RDO 软件源(192.168..122.1是我在真机搭建的一个源)
[dvd]
name=rhel7.0
baseurl=ftp://192.168.122.1/pub/rhel7.0
gpgcheck=0
[openstack]
name=openstack
baseurl=ftp://192.168.122.1/pub/rhelosp5.0/x86_64/rhel7osp/
gpgcheck=0
[rht]
name=rht
baseurl=ftp://192.168.122.1/pub/rhelosp5.0/x86_64/rht
gpgcheck=0
6:内核更新,更新完后重启
7:配置 LVM
这一步是可选的,默认在安装时会自动使用文件模拟一个 cinder 存储,但这样性能不好,如果使用磁盘将会快不少,所以这里将建立 cinder-volumes 。
8:生成ssh的非对称加密公私钥,并将公钥给本机:
9:配置NTP服务:
修改其配置文件如下:
启动NTP服务
10:安装Opensta
ck
获取openstack安装的完整配置文件,并进行编辑:
进入到配置文件中,我们要对以下参数进行修改:
1)ntp服务器ip的指定;
2)keystone组件的密码(这个也是我们在登录web界面时管理员的密码);
3)打开ssl加密功能;
4) nagios 监控密码
5)不创建 demo 用户
完成了这些配置之后,我们要进行openstack的安装
这个过程时间比较长,我这里用了差不多20分钟,
安装完成后会产生keystonerc_admin文件,里面记录了登陆的用户名和密码
可以这样查看其状态和网络配置
11:重新设置网络,不然无法访问 Floating IP:
打开https://192.168.122.100/dashboard连接,调转到UI界面
12:新建一个名为project的项目
配额:
实例:2
内存:2048
浮动ip:5
13:创建一个名为redhat 的用户并将其加入project项目
以redhat身份登录会发现和project所设定的配额是一样的
14:创建网络拓扑,以便让以后的云主机能够接入外网:
内网:private
外网:public
这是我们可以看见现在的网络拓扑,由管理员身份public设置为外部网络,并设置网关
15:创建镜像
然后我们添加安全组并添加管理安全规则:
然后我们要下载密钥对,这样的话就可以通过ssh进行测试,访问我们的云主机:
注意将其权限修改为600
产生一个浮动ip,为我们以后制作的云主机绑定,可以访问云主机:
创建云主机类型
这时我们启动云主机
从控制台我们可以看见:
这样简单的openstack 就搭建完了
阅读(5833) | 评论(0) | 转发(0) |