Iass
公有云:
企业自建的:私有云 联通 电信
既有自建的 也有网上买的 叫混合云
Paas
针对平台
Saas
安卓市场中的软件不是一人写的。 苹果商店所有的软件
云计算说到底就是云服务。云服务就是我们用的这些日常的东西
安装openstack
导入公钥(两台机器):
下载RPM-GPG-KEY-CentOS-7
wget http://192.168.1.254/centos7/RPM-GPG-KEY-CentOS-7
rpm --import RPM-GPG-KEY-CentOS-7
yum install lftp lrzsz
两台机器都要挂载12个yum源
CentOS-1708.iso
[1]
name=“ooxx”
baseurl=
enabled=1
gpgcheck=0
RHEL7OSP-10.iso
RHEL7-EXTRAS.iso
[2-12]
name=“ooxx”
baseurl=
enabled=1
gpgcheck=0
修改/etc/hosts让机器可以相互ping通
192.168.1.10 openstack
192.168.1.11 nova01
Openstack上初始化openstack的卷存储,卷组名称必须叫cinder-volumes
yum -y install lvm2
pvcreate /dev/vdb
vgcreate cinder-volumes /dev/vdb
vgs
Openstack上安装openstack依赖的软件包
qemu-kvm 通过动态二进制转换来模拟cpu,并提供一系列硬件模型
https://www.cnblogs.com/echo1937/p/7138294.html
libvirt-client
libvirt-daemon
libvirt-daemon-driver-qemu
python-setuptools
yum -y install qemu-kvm libvirt-client libvirt-daemon
yum -y install libvirt-daemon-driver-qemu
yum -y install python-setuptools
Openstack上安装openstack工具包 openstack-packstack
yum -y install openstack-packstack
检查openstack的环境
1.一台真机、两台虚拟机都禁用selinux
[root@node2 ~]# sestatus------用于检查selinux 是否关闭
SELinux status: disabled
2.两台虚拟机卸载firewalld
yum remove firewalld-*
3.两台虚拟机卸载NetworkManager(stop后卸载掉)
systemctl stop NetworkManager
yum remove NetworkMangager-*
4.检查配置主机IP地址 192.168.1.11 192.168.4.11
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.11 netmask 255.255.255.0 broadcast 192.168.1.255
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.4.11 netmask 255.255.255.0 broadcast 192.168.4.255
5.配置主机yum客户端 12个 并且名为1708的光盘必须为pgpcheck为1
[root@openstack ~]# cat /etc/yum.repos.d/centos7.repo
[1]
name=1
baseurl=ftp://192.168.1.254/centos
enabled=1
gpgcheck=1
[2]
name=2
baseurl=ftp://192.168.1.254/rhel7ext
enabled=1
gpgcheck=0
[3]
name=3
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-openstack-10-devtools-rpms
enabled=1
gpgcheck=0
[4]
name=4
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-openstack-10-optools-rpms
enabled=1
gpgcheck=0
[5]
name=5
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-openstack-10-rpms
enabled=1
gpgcheck=0
[6]
name=6
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-openstack-10-tools-rpms
enabled=1
gpgcheck=0
[7]
name=7
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhceph-2-mon-rpms
enabled=1
gpgcheck=0
[8]
name=8
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhceph-2-osd-rpms
enabled=1
gpgcheck=0
[9]
name=9
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhceph-2-tools-rpms
enabled=1
gpgcheck=0
[10]
name=10
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-agent-rpms
enabled=1
gpgcheck=0
[11]
name=11
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-installer-rpms
enabled=1
gpgcheck=0
[12]
name=12
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-main-rpms
enabled=1
gpgcheck=0
[8]
name=8
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhceph-2-osd-rpms
enabled=1
gpgcheck=0
[9]
name=9
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhceph-2-tools-rpms
enabled=1
gpgcheck=0
[10]
name=10
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-agent-rpms
enabled=1
gpgcheck=0
[11]
name=11
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-installer-rpms
enabled=1
gpgcheck=0
[12]
name=12
baseurl=ftp://192.168.1.254/rhel7osp/rhel-7-server-rhscon-2-main-rpms
enabled=1
gpgcheck=0
6.创建cinder-volumes的卷组
[root@openstack ~]# vgs-----查看一下
VG #PV #LV #SN Attr VSize VFree
cinder-volumes 1 0 0 wz--n- <20.00g <20.00g
7.导入公钥(两台机器必须导入公钥)
[root@openstack ~]# ls
answer.txt keystonerc_admin RPM-GPG-KEY-CentOS-7
[root@node2 ~]# ls
RPM-GPG-KEY-CentOS-7
8.检查是否已安装依赖的软件包
rpm -qa | grep -P "qemu-kvm|libvirt-client|libvirt-daemon|libvirt-daemon-driver-qemu|python-setuptools"
python-setuptools-0.9.8-7.el7.noarch
qemu-kvm-common-rhev-2.6.0-28.el7_3.6.x86_64
libvirt-daemon-3.2.0-14.el7.x86_64
libvirt-daemon-driver-qemu-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-logical-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-gluster-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-core-3.2.0-14.el7.x86_64
libvirt-daemon-driver-nwfilter-3.2.0-14.el7.x86_64
libvirt-daemon-driver-secret-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-rbd-3.2.0-14.el7.x86_64
qemu-kvm-rhev-2.6.0-28.el7_3.6.x86_64
libvirt-daemon-driver-nodedev-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-mpath-3.2.0-14.el7.x86_64
libvirt-daemon-driver-interface-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-disk-3.2.0-14.el7.x86_64
libvirt-daemon-kvm-3.2.0-14.el7.x86_64
libvirt-daemon-driver-network-3.2.0-14.el7.x86_64
libvirt-client-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-iscsi-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-3.2.0-14.el7.x86_64
libvirt-daemon-config-nwfilter-3.2.0-14.el7.x86_64
libvirt-daemon-driver-storage-scsi-3.2.0-14.el7.x86_64
创建应答文件
例如:packstack --help | grep answ
--gen-answer-file=GEN_ANSWER_FILE 创建应答文件模板
--answer-file=ANSWER_FILE 使用应答文件模板
packstack --gen-answer-file answer.ini
vim answer.ini
配置默认密码
11: CONFIG_DEFAULT_PASSWORD=haha1
设置禁用 swift (对象存储) 模块
42: CONFIG_SWIFT_INSTALL=n
NTP 服务器地址
75: CONFIG_NTP_SERVERS=192.168.1.254
计算节点IP地址
98: CONFIG_COMPUTE_HOSTS=192.168.1.19
需要配置vxlan网络的 IP 地址
102: CONFIG_NETWORK_HOSTS=192.168.1.19
禁用自动创建 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
安装openstacklibvirt
packstack --answer-file=answer.ini
[root@openstack ~]# vim /etc/httpd/conf.d/15-horizon_vhost.conf
WSGIProcessGroup apache------该行后加此行
WSGIApplicationGroup %{GLOBAL}
勾选cpu
开放式虚拟交换机简写(ovs) 全写:openvswitch
找到log
两台机器上网
备注:两台安装openstack的机器让上网
117 ping baidu.com ping不通
118 route -n
119 ifconfig
120 ping baidu.com
121 host baidu.com
122 vim /etc/resolv.conf
123 ping 176.233.4.243
124 vim /etc/resolv.conf
125 host baidu.com
126 yum -y install host
127 yum provides host
128 yum -y install bind-utils-9.9.4-50.el7.x86_64
129 host baidu.com
130 ping baidu.com
131 route
132 ifup eth0
133 ifup eth1
134 ifdown eth1
135 ifup eth1
136 route
137 route -e
138 ping baidu.com
排错思路
/etc/sys 服务执行的什么命令出错的
/proc/cpuinfo 看下cpu grep -i /proc/cpuinfo sss3
官网文档找到相关配置记录
翻源码
访问控制页面
1.创建项目:
2.创建用户:修改密码等
[root@openstack ~]# source keystonerc_admin
[root@openstack ~(keystone_admin)]# openstack user list
+----------------------------------+------------+
| ID | Name |
+----------------------------------+------------+
| 5161b29301f745c2a7b91883796a5b5d | admin |
| b16d68354428429f92305627c773ec86 | neutron |
| f155fd61a1574c789adb280acb4f0b75 | gnocchi |
| 6a5d102e5e864bcca78b65102da7170d | aodh |
| aba3e45b0329435b9249dce78ba989ad | nova |
| e78956c0d5d94689aa806bbdb7b2091b | glance |
| 26206e12717d44dda4f402cbcffee644 | ceilometer |
| 4e02e415faf04aeaa7ce35347b1f31da | cinder |
| d8d269b2d5c547a6bb0625abf3ccd3ee | u1 |
+----------------------------------+------------+
[root@openstack ~(keystone_admin)]# openstack user set --password "a" u1----------修改密码
3.创建模板:
项目——》镜像——》创建镜像——》输入名称——》选择类型——》选择文件——》选择镜像格式qcow2——》创建镜像
4.创建云主机类型:
管理员——》云主机类型——》创建云主机类型——》选择cpu、内存、根磁盘等——》
5.创建网络:
管理员——》网络——》创建网络——》输入名称、选择项目、供应商网络(flat)、物理网络(physnet1)、勾选共享的和外部网络,提交
6.创建项目子网:
项目用户登陆(不是admin)——》项目——》网络——》后面的增加子网,不用勾选dhcp(输入名称、网段地址、网关IP,点击下一步;不用DHCP)
项目用户登陆(不是admin)——》项目——》网络——》创建网络(输入网络名称后下一步;输入子网名称,网络地址,网关IP;输入地址池,dns服务器)
网络——》选择网络——》新建路由(输入名称:r1;选择网络)——》创建成功
网络——》路由——》选择名称:r1——》添加接口
项目用户登陆——》云主机数量——》创建云主机()
登陆云主机:
点h1——》控制台——》用户名:root,密码:redhat——》
编辑访问规则:
项目—计算—访问和安全——》点击“管理规则”——》添加规则
编辑安全组:
云主机数量——》创建快照旁边的小箭头——》编辑安全组
绑定浮动IP:
设置安全组:让机器之间可以ping通
注:另存镜像为本地文件需要单独记忆一下。
openstack image save --file /tmp/small_rhel6.img small_rhel6
1、什么是云计算(云计算简介)
基于互联网的相关服务的增加、使用和交付模式
这种模式提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务)
这些资源能够被快速提供,只需要投入很少的管理工作,或与服务供应商进行很少的交互
通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。
- Iaas(基础设施即服务)(公有云、私有云和混合云)
- Paas(平台即服务)
- Saas(软件即服务)
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的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件,软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其定购的软件和服务
2、什么是openstack(openstack简介)
是一套Iaas解决方案;是一个开源的云计算管理平台;以Apache许可证为授权。
Openstack有七大组件
• Horizon(一个web页面)
– 用于管理Openstack各种服务的、基于web的管理接口
– 通过图形界面实现创建用户、管理网络、启劢实例等操作
• Keystone(集中提供认证和授权)
– 为其他服务提供认证和授权的集中身份管理服务
– 也提供了集中的目录服务
– 支持多种身份认证模式,如果密码认证、令牌认证、以及AWS(亚马逊Web服务)登陆
– 为用户和其他服务提供了SSO认证服务
• Neutron(创建一个私有网络)
– 一种软件定义网络服务(SDN)
– 用于创建网络、子网、路由器、管理浮动IP地址
– 可以实现虚拟交换机、虚拟路由器
– 可用于在项目中创建VPN
• Cinder()
– 为虚拟机管理存储卷的服务
– 为运行在Nova中的实例提供永久的块存储
– 可以通过快照进行数据备份
– 经常应用在实例存储环境中,如数据库文件
• Nova(物理机上管理虚拟机的服务)
– 在节点上用于管理虚拟机的服务
– Nova是一个分布式的服务,能够与Keystone交互实现认证,与Glance交互实现镜像管理
– Nova被设计成在标准硬件上能够进行水平扩展(可以装很多台)
– 启动实例时,如果有需要则下载镜像
• Glance(qcow2后端文件为模板启动虚拟机。rpm通过yum,镜像通过glance)
– 扮演虚拟机镜像注册的角色
– 允许用户为直接存储拷贝服务器镜像
– 这些镜像可以用于新建虚拟机的模板
从2010年几乎每6个月更新一个版本,一个版本生存周期大约两年
Openstack学习安装、学习概念
命令的背诵,不是主要学习手段。太多了,而且会一直变。
怎么装openstack(部署安装环境)
先要配置yum 仓库
• RHEL7光盘信息必须提供
• RHEL7OSP光盘拥有众多目录,每个目录都是一个仓库,因此,需要把这些目录都配置为yum源
• RHEL7-extras 扩展包光盘在安装的时候也是需要的
案例1:配置yum仓库
1. RHEL7光盘内容作为仓库源
2. 配置 RHEL7-extars 内容加入仓库源
3. RHEL7OSP 光盘中包含多个目录,每个目录都是仓库源(可以使用脚本生成)
设置dns服务器()
• 系统环境准备
– openstack 安装时候需要使用外部 dns 来解析域名,并且还需要外部时间服务器来保证所有节点的时间保持一致
– 我们需要创建一个 dns 服务器,并且为我们的主机提供域名解析哦
– 将 openstack.tedu.cn 域名对应的 IP 解析到我们的安装openstack 的服务器
• 注:DNS 服务器不能与 openstack 安装在同一台主机上
案例2:配置DNS服务器
1. 允许DNS服务器为所有的客户端提供服务
2. 解析域名 openstack.tedu.cn
3. 解析域名 nova01.tedu.cn
配置时间同步
时区
• 时区:由于同一个时间点上面,整个地球的时间应该都不一样,为了解决这个问题,地球就被分成了24
个时区
• 由于地球被人类以『经纬度』坐标来进行定位,而经度为零的地点在英国『格林威治』这个城市所在纵剖面上
• 地球一圈是 360 度角,这 360 度角共分为 24 个时区,一个时区就是 15 度角
UTC时间
• 计算时间的时候,最准确的计算应该是使用『原子震荡周期』所计算的物理时钟了( Atomic Clock, 也被
称为原子钟 ),这也被定义为标准时间
• 我们常常看见的 UTC 也就是 CoordinatedUniversal Time (协和标准时间)就是利用这种Atomic Clock 为基准所定义出来的正确时间
• UTC 标准时间是以 GMT 这个时区为主,本地时间与UTC 时间的时差就是本地时间与GMT 时间的时差
配置NTP服务
• 安装
[root@vh01 ~]# yum install -y chrony
• 修改配置文件
[root@service ~]# vim /etc/chrony.conf
// 设置同步网络时间服务器
pool asia.pool.ntp.org iburst prefer
# Ignore stratum in source selection.
bindacqaddress 0.0.0.0
allow 0/0
cmdallow 127.0.0.1
启动服务
[root@service ~]# systemctl start chronyd
[root@service ~]# systemctl enable chronyd
在另一台服务器上测试校准时间
[root@service ~]# vim /etc/chrony.conf
server time.tedu.cn iburst
[root@service ~]# systemctl start chronyd
[root@service ~]# chronyc sources -v
案例3:配置NTP服务器
1. 将NTP服务与DNS服务部署在同一台主机上
2. 确认NTP服务器的时区是东八区
3. 确认NTP服务器的时间准确
4. 计划安装openstack的服务器与NTP服务器进行时间校正
部署openstack
配置IP地址
• 配置eth0为公共网络,网络地址192.168.1.0/24
• 配置eth1为隧道接口,网络地址192.168.2.0/24
• 关闭NetworkManager服务
• 禁用 SELINUX
• 卸载 firewalld
配置yum客户端
• 将RHEL7光盘作为基础的yum源
• 将RHEL7-extars光盘作为扩展的yum源
• 将RHEL7OSP光盘中所有目录作为yum源
[root@nova ~]# yum repolist
源标识 源名称 状态
Calamari calamari 15
Common common 76
Director director 39
Extra extra 54
......
配置卷组
• Openstack为虚拟机提供的云硬盘,本质上是本地的逻辑卷
• 逻辑卷创建于名为cinder-volumes的卷组
• 没有物理卷可以使用 loop 文件替代
– losetup loop0 /var/disk.img
– pvcreate /dev/loop0
– vgcreate cinder-volumes /dev/loop0
[root@nova ~]# vgs
VG #PV #LV #SN Attr Vsize VFree
cinder-volumes 1 0 0 wz--n- 1020.00m 1020.00m
导入公钥
• 安装openstack期间,系统会要求密钥验证
• 我们手工导入系统密钥
• 密钥文件在光盘中提供
[root@nova ~]# rpm --import RPM-GPG-KEY-CentOS-7
安装额外软件包
• 安装openstack期间,有些软件包所依赖的软件包,并没有在安装过程中安装
• 这些软件包需提前安装
• 本地RPM包也可以通过yum进行安装
[root@nova ~]# yum install -y qemu-kvm libvirt-client libvirt-daemon
libvirt-daemon-driver-qemu python-setuptools
案例4:基础环境准备
1. 禁用 selinux
2. 卸载 firewalld
3. 卸载 NetworkManager
4. 配置主机IP地址
5. 配置主机yum客户端
6. 创建cinder-volumes的卷组
7. 导入公钥
8. 安装依赖的软件包
安装openstack
配置packstack
• 安装packstack
[root@vh02 ~]# yum install -y openstack-packstack
[root@vh02 ~]# packstack --gen-answer-file answer.txt
• 修改应答文件
[root@nova ~]# vim answer.txt
CONFIG_DEFAULT_PASSWORD=Taren1
CONFIG_SWIFT_INSTALL=n
CONFIG_NTP_SERVERS=192.168.1.253
CONFIG_CINDER_VOLUMES_CREATE=n
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=flat,vxlan
CONFIG_NEUTRON_ML2_VXLAN_GROUP=239.1.1.5
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex
CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth0
CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1
CONFIG_PROVISION_DEMO=n
一键部署Openstack
• 如果前期环境准备无误,只要耐心等待安装结束即可
• 根据主机配置不同,安装过程需要20分钟左右或更久
• 如果出现错误,根据屏幕上给出的日志文件进行排错
[root@vh02 ~]# packstack --answer-file answer.txt
案例5:部署Openstack
1. 通过packstack部署Openstack
2. 根据相关日志文件进行排错
网络配置
网络拓扑
• 多计算节点的拓扑如下所示
配置外部OVS网桥
• 配置br-ex为外部OVS网桥
[root@nova ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex
ONBOOT="yes"
NM_CONTROLLED="no"
IPADDR="192.168.1.66"
PREFIX="24"
GATEWAY="192.168.1.254"
DEVICE=br-ex
NAME=br-ex
DEVICETYPE=ovs
OVSBOOTPROTO="static"
TYPE=OVSBridge
配置外部OVS网桥端口
• 配置eth0为外部OVS网桥的端口
[root@nova ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
NAME=eth0
DEVICETYPE=ovs
TYPE=OVSPort
OVS_BRIDGE=br-ex
ONBOOT=yes
BOOTPROTO=none
验证OVS配置
1. ovs-vsctl show
2. ip -o addr show
[root@nova ~]# ovs-vsctl show
Bridge br-ex
Controller "tcp:127.0.0.1:6633"
is_connected: true
fail_mode: secure
... ...
Port br-ex
Interface br-ex
type: internal
Port "eth0"
Interface "eth0"
Openstack操作基础
Horizon配置
概述
• Horizon是一个用以管理、控制OpenStack服务的Web控制面板,也称之为Dashboard仪表盘
• 可以管理实例、镜像、创建密匙对,对实例添加卷、操作Swift容器等。除此之外,用户还可以在控制面板中使用终端(console)或VNC直接访问实例
• 基于python的django web框架进行开发
功能与特点
• 实例管理:创建、终止实例,查看终端日志,VNC连接,添加卷等
• 访问与安全管理:创建安全群组,管理密匙对,设置浮动IP等
• 偏好设定:对虚拟硬件模板可以进行不同偏好设定
• 镜像管理:编辑或删除镜像
• 用户管理:创建用户等
• 卷管理:创建卷和快照
• 对象存储处理:创建、删除容器和对象
Horizon
• Horizon BUG 处理
• 安装虽然没有报错,但默认无法打开 Horizon,这是一个软件的配置 BUG
– /etc/httpd/conf.d/15-horizon_vhost.conf
– WSGIApplicationGroup %{GLOBAL}
ServerAlias localhost
WSGIDaemonProcess apache group=apache processes=3
threads=10 user=apache
WSGIProcessGroup apache
WSGIApplicationGroup %{GLOBAL} <--- 这里添加
• 重新载入配置文件 apache graceful
基本配置
项目管理
基本概念
• 项目:一组隔离的资源和对象。由一组关联的用户进行管理
• 在老的版本里,也用租户(tenant)来表示
• 根据配置的需求,项目对应一个组织、一个公司或是一个使用客户等
• 项目中可以有多个用户,项目中的用户可以在该项目创建、管理虚拟资源
• 具有admin角色的用户可以创建项目
• 项目相关信息保存到MariaDB中
• 缺省情况下,packstack安装的openstack中有两个独立的项目
– admin:为admin账户创建的项目
– services:与安装的各个服务相关联
在Horizon中管理项目
• 通过Horizon可以进行项目的创建和删除
命令行接口基础
• 初始化环境变量
[root@vh02 ~]# source ~/keystonerc_admin
[root@vh02 ~(keystone_admin)]# env | grep OS
HOSTNAME=vh02.tedu.cn
OS_REGION_NAME=RegionOne
OS_PASSWORD=redhat
OS_AUTH_URL=http://192.168.4.2:5000/v2.0
OS_USERNAME=admin
OS_TENANT_NAME=admin
• 使用帮助
[root@vh02 ~(keystone_admin)]# openstack help
通过命令行管理项目
• 创建名为myproject项目
[root@vh02 ~(keystone_admin)]# openstack project create myproject
• 列出所有项目
[root@vh02 ~(keystone_admin)]# openstack project list
• 查看myproject详细信息
[root@vh02 ~(keystone_admin)]# openstack project show myproject
• 禁用与激活项目
[root@vh02 ~(keystone_admin)]# openstack project set --disable myproject
[root@vh02 ~(keystone_admin)]# openstack project set --enable myproject
• 查看项目配额
[root@vh02 ~(keystone_admin)]# nova quota-show --tenant myproject
• 更新可用vcpu数目为30
[root@vh02 ~(keystone_admin)]# nova quota-update --cores 30 myproject
• 删除myproject
[root@vh02 ~(keystone_admin)]# openstack project delete myproject
案例7:管理项目
• 通过Horizon完成以下操作
1. 创建名为myproject的项目
2. 查看项目信息
3. 更新vcpu配额为30
4. 删除myproject