OpenStack 图形化Dashboard [七]OpenStack 图形化Dashboard [七]

openstack
时间:2016年11月28日

部署openstack管理服务
Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务。

Dashboard
提供一个web界面操作openstack的系统,使用Django框架基于openstack API开发,支持session存储在DB memcached 支持集群

安装软件包:

[root@linux-node1~]#yuminstallopenstack-dashboard-y

虚拟机创建流程

第一步,图形界面输入用户名密码到keyston进行认证,认证通过之后会分配一个token,然后使用该token即可访问其他服务,第二步将创建虚拟机的请求转换给REST API并发送给NOVA API,然后其拿着此token到keyston查询是否合法,第四步NOV api和数据库进行交互,将要创建的虚拟机信息写入到数据库,第五步发送消息大rabbitMQ,消息会发送给nova scheduler,第六步nova scheduler算法确认虚拟机将被创建在哪个物理机上,第七步nova scheduler和数据库进行交互,将虚拟机生成的信息写入到数据库,第八步nova computer接收到消息进行虚拟机创建,第九步nova computer到数据库查询该虚拟机要创建的信息,第十步nova conductor和数据库进行沟通,新版的openstack使用nova conductor代替第九步的操作,第十一步nova conductor更新数据库信息,然后nova computer从数据库获取到虚拟机的创建信息后进行下一步创建虚拟机的操作,第十二步联系glance获取镜像,第十三步glace联系keyston进行认证,第十四步联系neutron获取网络,第十五步neutron联系keyston进行认证,第十六步nova computer再联系cinder获取磁盘,第十七不cinder再到keyston进行认证,第十八步mova computer调用KVM创建虚拟机。

查看角色

[root@linux-node1~]#openstackrolelist+----------------------------------+-------+|ID|Name|+----------------------------------+-------+|4161dec8714f468f832a55a6ec2abb9e|user||c934dad680e142d09c434e2301b2a9bf|admin|+----------------------------------+-------+

编辑文件/etc/openstack-dashboard/local_settings

[root@linux-node1~]#vim/etc/openstack-dashboard/local_settings

允许所有主机访问仪表板

30ALLOWED_HOSTS=['*',]

配置API版本

55OPENSTACK_API_VERSIONS={56#"data-processing":1.1,57"identity":3,58"volume":2,59"compute":2,60}

controller节点上配置仪表盘以使用 OpenStack 服务:158 OPENSTACK_HOST = "192.168.56.11"

启用第3版认证API

159OPENSTACK_KEYSTONE_URL="http://%s:5000/v3"%OPENSTACK_HOST

通过仪表盘创建的用户默认角色配置为 user

160OPENSTACK_KEYSTONE_DEFAULT_ROLE="user"

启用对域的支持

64OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT=True

通过仪表盘创建用户时的默认域配置为 default

72OPENSTACK_KEYSTONE_DEFAULT_DOMAIN='default'

如果您选择网络参数1,禁用支持3层网络服务:

提示:如果不禁用,一会可能会出现错误

260OPENSTACK_NEUTRON_NETWORK={261'enable_router':False,262'enable_quotas':False,263'enable_ipv6':False,264'enable_distributed_router':False,265'enable_ha_router':False,266'enable_lb':False,267'enable_firewall':False,268'enable_***':False,269'enable_fip_topology_check':False,

修改时区

TIME_ZONE="Asia/Shanghai"修改为亚洲上海

保存重启

[root@linux-node1~]#systemctlrestarthttpd

登陆页面
默认域:default
用户名:demo
密码:demo
提示:我们也可以使用admin用户登陆
登陆地址:http://192.168.56.11/dashboard

管理界面

admin用户需要在管理员窗口进行控制

云主机介绍

admin用户可以管理所有用户创建的所有云主机,可以进行管理

主机聚合介绍

可以创建一个主机组将它们放在一块

云主机
除了无法对云主机进行名称的修改,其他的修改都可以的

云主机类型
我们可以进行添加、删除

网络等等。。

用户验证

我们演示删除云主机

我们切换到demo用户上,准备删除云主机,在从新添加一个

构建一台云主机

点击下方+号,加入。
这里可以使用镜像、实力快照、卷、卷快照等

我们可以在管理进行添加

添加网络

添加安全组

添加密钥对

然后我们启动实例就可以了

我们刚刚创建了2个,现在它在启动

我们的虚拟机是使用kvm启动的,那么使用kvm启动就会在计算节点产生2个进程

查看计算节点进程

要监听vnc的端口,vnc默认端口从5900开始

在openstack环境下,桥接网卡名字都一样

都会桥街到本地网卡eth0

虚拟机保存在/var/lib/nova/instances

[root@linux-node2~]#tree/var/lib/nova/instances//var/lib/nova/instances/├──10ea5ada-150a-42fb-bebf-dd99936f08a2│├──console.log│├──disk│├──disk.info│└──libvirt.xml├──3bb362fb-464b-40ad-b564-628387944c4a│├──console.log│├──disk│├──disk.info│└──libvirt.xml├──_base│└──e24c82eb013841010cf48ebfe8281d09ed4b251a├──cc7f38cd-29e4-492f-b72b-e60bb3f4bed2│├──console.log│├──disk│├──disk.info│└──libvirt.xml├──compute_nodes└──locks├──nova-e24c82eb013841010cf48ebfe8281d09ed4b251a└──nova-storage-registry-lock5directories,16files[root@linux-node2~]#

console.log控制台日志disk虚拟磁盘disk.info虚拟磁盘信息libvirt.xmlKVM生成的一个文件base镜像路径e24c82镜像ID

提示:虽然我们的虚拟机分配了1G硬盘,但是缺没有达到1G的用量,因为这样可以节省空间,增加启动速度。真的是空间全在镜像里面

[root@linux-node2~]#ll/var/lib/nova/instances/10ea5ada-150a-42fb-bebf-dd99936f08a2/total1824-rw-rw----1qemuqemu19760Nov2323:31console.log-rw-r--r--1qemuqemu1835008Nov2323:41disk-rw-r--r--1novanova79Nov2323:27disk.info-rw-r--r--1novanova2653Nov2323:27libvirt.xml[root@linux-node2~]#file/var/lib/nova/instances/10ea5ada-150a-42fb-bebf-dd99936f08a2/disk/var/lib/nova/instances/10ea5ada-150a-42fb-bebf-dd99936f08a2/disk:QEMUQCOWImage(v3),hasbackingfile(path/var/lib/nova/instances/_base/e24c82eb013841010cf48ebfe8281d09e),1073741824bytes

我们还可以使用qemu命令进行详细查看

[root@linux-node2~]#qemu-imginfo/var/lib/nova/instances/10ea5ada-150a-42fb-bebf-dd99936f08a2/diskp_w_picpath:/var/lib/nova/instances/10ea5ada-150a-42fb-bebf-dd99936f08a2/diskfileformat:qcow2virtualsize:1.0G(1073741824bytes)disksize:1.8Mcluster_size:65536backingfile:/var/lib/nova/instances/_base/e24c82eb013841010cf48ebfe8281d09ed4b251aFormatspecificinformation:compat:1.1lazyrefcounts:falserefcountbits:16corrupt:false

提示:文件disk.info就是一个路径

云计算与虚拟化工具之KVM
http://www.abcdocker.com/abcdocker/1627

console.log我们登陆云主机显示的

libvirt.xml是动态生成的,无法进行修改

待更新