openstack一键部署
前言
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权的开源代码项目
NIST的云计算定义
在总结了各种云计算定义和描述的基础上,NIST的Peter Mell和Tim Grance在2009年4月(到2009年10月已是第15.0版)提出了一个云计算的定义,这可能是目前唯一一个得到广 泛认同和支持的定义。
云计算是一种能够通过网络以便利的、按需付费的方式获取计算资源(包括网络、服务器、存储、应用和服务等)并提高其可用性的模式,这些资源来自一个共享的、可配置的资源池,并能够以最省力和无人干预的方式获取和释放。这种模式具有5个关键功能,还包括3种服务模式和4种部署方式。
云计算概述
概念
- 狭义的云计算是指IT基础设施的交付和使用模式
- 广义的云计算是指服务的交付和使用模式
云计算资源
- 网络资源
- 存储资源
- 计算资源
云计算服务模型
laaS (基础架构即服务)
- 提供底层IT基础设施服务,包括处理能力、 存储空间、网络资源等
- 面向对象一般是IT管理人员
PaaS (平台即服务)
- 把安装好开发环境的系统平台作为- -种服务通过互联网提供给用户
- 面向对象一般是开发人员
SaaS (软件即服务)
- 直接通过互联网为用户提供软件和应用程序等服务
- 面向对象一-般 是普通用户
OpenStack概述
- NASA (美国国家航空航天局)和Rackspace共同发起
- 以Apache许可证授权的自由软件和开放源代码项目
- 为公有云及私有云的建设与管理提供软件的开源项目
- 覆盖了网络、虚拟化、操作系统、服务器等各个方面
OpenStack服务
服务 | 项目名称 | 描述 |
---|---|---|
Compute(计算服务) | Nova | 负责实例生命周期的管理,计算资源的单位。对Hypervisor进行屏蔽,支持多种虚拟化技术(红帽默认为KVM),支持横向扩展 |
Network(网络服务) | Neutron | 负责虚拟网络的管理,为实例创建网络的拓扑结构。是面向租户的网络管理,可以自己定义自己的网络,各个租户之间互不影响 |
ldentity(身份认证服务) | Keystone | 类似于LDAP服务,对用户、租户和角色、服务进行认证与授权,且支持多认证机制 |
Dashboard(控制面板服务) | Horizon | 提供一个Web管理界面,与OpenStack底层服务进行交互 |
Image Service(镜像服务) | Glance | 提供虚拟机镜像模板的注册与管理,将做好的操作系统拷贝为镜像模板,在创建虚拟机时直接使用,可支持多格式的镜像 |
Block Storage(块存储服务) | Cinder | 负责为运行实例提供持久的块存储设备,可进行方便的扩展,按需付费,支持多种后端存储 |
Object Storage(对象存储服务) | Swift | 为OpenStack提供基于云的弹性存储,支持集群无单点故障 |
Telemetry(计量服务) | Ceilometer | 用于度量、监控和控制数据资源的集中来源,为OpenStack用户提供记账途径 |
OpenStack优势
控制性
完全开源的平台,提供API接口,方便与第三方技术集成
兼容性
OpenStack兼容其他公有云,方便用户进行数据迁移
可扩展性
模块化设计,可以通过横向扩展,增加节点、添加资源
灵活性
根据自己的需要建立相应基础设施、增加集群规模
行业标准
众多IT领军企业已经加入到OpenStack项目
OpenStack 一键部署体验
1、 环境需求
CentOS 7.6 系统
CPU:双核双线程/开启虚拟化功能
内存:4G
硬盘:30G+300G
网卡:NAT模式
选做:net.ifnames=0 biosdevname=0 (创建时可修改为eth0网卡)
2、配置静态地址、主机名
BOOTPROTO=static
IPADDR=192.168.15.50
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=192.168.15.2
DNS2=8.8.8.8
3、关闭(设置开机不启动)防火墙、核心防护、NetworkManager
systemctl stop firewalld
systemctl disable firewalld
systemctl stop NetworkManager
setenforce 0
4、安装时间同步服务、同步阿里云时钟服务器
yum install -y ntpdate
ntpdate ntp.aliyun.com >>/var/log/ntpdate.log
5、配置yum源
[root@openstack ~]# cd /etc/yum.repos.d/
[root@openstack yum.repos.d]# mkdir bak
[root@openstack yum.repos.d]# mv C* bak/
[root@openstack yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@openstack yum.repos.d]# yum -y install centos-release-openstack-train
[root@openstack yum.repos.d]# yum clean all
[root@openstack yum.repos.d]# yum makecache (fast)
6、重启、查看服务状态
reboot
7、下载OpenStack 管理工具包、在线部署OpenStack
yum -y install openstack-packstack
packstack --allinone
创建br-ex网卡配置文件
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-br-ex
sed -i "100d" ifcfg-br-ex
cat <<EOF >> ifcfg-br-ex
TYPE=Ethernet
BOOTPROTO=none
NAME=br-ex
DEVICE=br-ex
ONBOOT=yes
IPADDR=172.24.4.1
PREFIX=24
EOF
systemctl restart network
ifconfig 查看
8、查看用户信息
cd /root && cat keystonerc_admin
9、网页登陆
访问http://192.168.15.50/dashboard/查看效果
10、上传镜像
第一种——命令行
openstack image create "cirros" --file cirros-0.3.5-x86_64-disk.img --disk-format qcow2 --container-format bare --public
建议使用第一种
第二种——控制台
创建成功
总结
OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。