什么是云计算
• 基于互联网的相关服务的增加、使用和交付模式
• 这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池
(资源包括网络,服务器,存储,应用软件,服务)
• 这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互
• 通常涉及通过互联网来提供状态易扩展且经常是虚拟化的资源
IaaS
• IaaS(Infrastructure as a Service),即基础设施即服务
• 提供给消费者的服务是对所有计算基础设施的利用,包括处理CPU、内存、存储、
络和其它基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序
• 消费者不管理与控制任何云计算基础设施,但能控制操作系统的选择、存储空间、部署的应用
• IaaS通常分为三两种用法:公有云共的和、私有云的和混合云
PaaS
• PaaS是Platform-as-a-Service的缩写,意思是平台即服务
• 云计算时代相应的服务器平台戒者开发环境作为服务迚行提供就成为了PaaS
• PaaS运营商所需提供的服务,不仅仅是单纯的基础平台,而且包括针对该平
台的技术支持服务,甚至针对该平台而进行的应用系统开发、优化等服务
• 简单地说,PaaS平台就是指云环境中的应用基础设施服务,也可以说是中间件即服务
SaaS
• SaaS是Software-as-a-Service(软件即服务)的简称
• 它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,
客户可以根据自己实际需求,通过互联网向厂商定购所需的应用软件服务
• 用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活劢,
且无需对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户
提供互联网应用的同时,也提供软件的离线操作和本地数据存储,
让用户随时随地都可以使用其定购的软件和服务
Openstack简介
什么是Openstack
• OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的项目
• OpenStack是一套IaaS解决方案
• OpenStack是一个开源的云计算管理平台
• 以Apache许可证为授权
Openstack主要组件
• Horizon {喔立存}
– 用于管理Openstack各种服务的、基于web的管理接口
– 通过图形界面实现创建用户、管理网络、启动实例等操作
• Keystone {k s dong}
– 为其他服务提供认证和授权的集中身份管理服务
– 也提供了集中的目录服务
– 支持多种身份认证模式,如果密码认证、令牌认证、以及AWS(亚马逊Web服务)登陆
– 为用户和其他服务提供了SSO认证服务
• Neutron {牛存}
– 一种软件定义网络服务
– 用于创建网络、子网、路由器、管理浮动IP地址
– 可以实现虚拟交换机、虚拟路由器
– 可用于在项目中创建VPN
• Cinder {s森 的}
– 为虚拟机管理存储卷的服务
– 为运行在Nova中的实例提供永久的块存储
– 可以通过快照迚行数据备份
– 经常应用在实例存储环境中,如果数据库文件
• Nova {no 沃}
– 在节点上用于管理虚拟机的服务
– Nova是一个分布式的服务,能够不Keystone交互实现认证,与Glance交互实现镜像管理
– Nova被设计成在标准硬件上能够进行水平扩展
– 启劢实例时,如果有需要则下载镜像
• Glance {格烂是}
– 扮演虚拟机镜像注册的角色
– 允许用户为直接存储拷贝服务器镜像
– 这些镜像可以用于新建虚拟机的模板
NTP服务
时区
• 时区:由于同一个时间点上面,整个地球的时间应该都不一样,为了解决这个问题,
地球就被分成了24个时区
• 由于地球被人类以『经纬度』坐标来迚行定位,而经度为零的地点在英国
『格林威治』这个城市所在纵剖面上
• 地球一圈是 360 度角,这 360 度角共分为 24 个时区,一个时区就是 15 度角
UTC时间
• 计算时间的时候,最准确的计算应该是使用『原子震荡周期』所计算的物理时钟了
( Atomic Clock, 也被称为原子钟 ),这也被定义为标准时间
• 我仧常常看见的 UTC 也就是 Coordinated Universal Time (协和标准时间)就是利用这种
Atomic Clock 为基准所定义出来的正确时间
• UTC 标准时间是以 GMT 这个时区为主,本地时间不UTC 时间的时差就是本地时间不 GMT 时间的时差
# 环境检查
sestatus 检查 selinux 是否关闭了
是否卸载了 NetworkManager 和 firewalld
chronyc sources -v 检查时间服务器是否可用
nslookup 检查 dns 服务器是否可用
yum repolist 检查包 9591 个
free -m 查看服务器内存是否够 8 G
lsblk 查看是否有 20G 的 vdb 设备
ifconfig 查看是否两块网卡,而且都能 ping 通 需要两个网卡
vim /etc/sysconfig/network-scripts/ifcfg-eth1
还需要在配置文件里面添加
virsh edit node1
添加网卡
<interface type='bridge'>
<source bridge='private1'/>
<model type='virtio'/>
</interface>
配置yum客户端
• 将RHEL7光盘作为基础的yum源
• 将RHEL7-extars光盘作为扩展的yum源
• 将RHEL7OSP光盘中所有目录作为yum源
# 配置 openstack yum 源 共 12 个 10731 包
挂载yum 源
mount '/root/桌面/12.cloud/cloud 2/RHEL7-extras.iso' /var/www/html/yum
mount '/root/桌面/12.cloud/cloud 2/RHEL7OSP-10.iso' /var/www/html/yum10
mount: /dev/loop4 写保护,将以只读方式挂载
cd /var/www/html/
createrepo ./ 当前目录下创建索引
[root@node1 ~]# yum repolist
centos centos 9,591
yum yum 76
yum10 yum10 1,064
repolist: 10,731 ===>>>>有这么多就可以
部署 openstack
1、配置卷组,安装依赖软件包
• Openstack为虚拟机提供的云硬盘,本质上是本地的逻辑卷
• 逻辑卷创建于名为cinder-volumes的卷组
• 没有物理卷可以使用 loop 文件替代
yum install -y lvm2 pvcreate /dev/vdb vgcreate cinder-volumes /dev/vdb vgs
安装额外软件包
• 安装openstack期间,有些软件包所依赖的软件包,并没有在安装过程中安装
• 这些软件包需提前安装
• 本地RPM包也可以通过yum进行安装
yum install -y qemu-kvm libvirt-daemon libvirt-client libvirt-daemon-driver-qemu python-setuptools
2、安装 openstack
yum install -y openstack-packstack
3、生成配置文件
packstack --gen-answer-file answer.ini
Packstack changed given value to required value /root/.ssh/id_rsa.pub 得出以下信息
配置文件在当前目录 answer.ini
vim answer.ini
配置默认密码
11: CONFIG_DEFAULT_PASSWORD=Taren1
设置禁用 swift (对象存储) 模块
42: CONFIG_SWIFT_INSTALL=n
NTP 服务器地址
75: CONFIG_NTP_SERVERS=192.168.1.254
计算节点IP地址
98: CONFIG_COMPUTE_HOSTS=本机ip地址 默认已经生成
需要配置vxlan网络的 IP 地址
102: CONFIG_NETWORK_HOSTS=本机ip地址 默认已经生成
禁用自动创建 cinder-volumns 卷组
554: CONFIG_CINDER_VOLUMES_CREATE=n
设置网络支持协议
840: CONFIG_NEUTRON_ML2_TYPE_DRIVERS=flat,vxlan
设置组播地址
876: CONFIG_NEUTRON_ML2_VXLAN_GROUP=239.1.1.5
设置虚拟交换机
910: CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex
设置虚拟交换机所连接的物理网卡
921: CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth0
设置隧道网络使用的网卡
936: CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1
禁用测试的DEMO
1179:CONFIG_PROVISION_DEMO=n
一键部署Openstack
• 如果前期环境准备无误,只要耐心等待安装结束即可
• 根据主机配置不同,安装过程需要20分钟左右或更久
• 如果出现错误,根据屏幕上给出的日志文件进行排错
vim /var/tmp/packstack/latest/openstack-setup.log
开始部署
packstack --answer-file answer.ini
如有报错 检查
1. 禁用 selinux
2. 卸载 firewalld
3. 卸载 NetworkManager
4. 配置主机IP地址
5. 配置主机yum客户端
6. 创建cinder-volumes的卷组
7. 导入公钥
8. 安装依赖的软件包
9. 内存不少于 8 G
网络配置
默认已经存在
• 配置br-ex为外部OVS网桥
cat /etc/sysconfig/network-scripts/ifcfg-br-ex
• 配置eth0为外部OVS网桥的端口
cat /etc/sysconfig/network-scripts/ifcfg-eth0
验证OVS配置
1. ovs-vsctl show 2. ip -o addr show
Openstack 下一章 Openstack操作基础