OpenStack 图形化服务 Horizon介绍和部署(十二)
Horizon介绍
Horizon是一个web接口,使得云平台管理员以及用户可以管理不同的OpenStack资源以及服务。
- 提供一个Web界面操作OpenStack系统
- 使用Django框架基于OpenStack API开发
- 支持将session存储在DB、Memcached
- 支持集群
虚拟机创建流程
- 第一步,图形界面输入用户名密码到keystone进行认证,认证通过之后会分配一个token,然后使用该token即可访问其他服务;
- 第二步,将创建虚拟机的REST API请求发送给nova-api(携带token);
- 第三部,nova-api拿着此token到keystone查询是否合法;
- 第四步,nova-api和数据库进行交互,将要创建的虚拟机信息写入到数据库;
- 第五步,nova-api发送请求至rabbitMQ消息队列;
- 第六步,nova scheduler监听消息队列,获取请求信息,根据算法指定的具体的计算节点,将虚拟机生成信息放入消息队列;
- 第七步,nova scheduler和数据库进行交互,将虚拟机生成的信息写入到数据库;
- 第八步,被指定的nova computer监听消息队列,获取nova scheduler消息,进行虚拟机创建;
- 第九步和第十步,新版的openstack,nova computer到数据库查询需要通过nova conductor,nova computer与nova conductor通过消息队列进行交互;
- 第十一步,nova conductor更新数据库信息,然后nova computer从数据库获取到虚拟机的创建信息后进行下一步创建虚拟机的操作;
- 第十二步,联系glance获取镜像;
- 第十三步,glance联系keystone进行认证;
- 第十四步,联系neutron获取网络;
- 第十五步,neutron联系keystone进行认证;
- 第十六步,nova computer联系cinder获取磁盘;
- 第十七步,cinder联系keystone进行认证;
- 最终,nova computer调用KVM创建虚拟机。
部署
- 安装软件包
yum install openstack-dashboard -y
配置
编辑文件 /etc/openstack-dashboard/local_settings 并完成如下动作
- 在控制节点上配置仪表盘以使用 OpenStack 服务
OPENSTACK_HOST = "192.168.137.11"
- 启用第3版认证API
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
- 配置角色
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
- 允许所有主机访问仪表板
ALLOWED_HOSTS = ['*', ]
- 配置API版本
OPENSTACK_API_VERSIONS = {
# "data-processing": 1.1,
"identity": 3,
"volume": 2,
"compute": 2,
}
- 启用对域的支持
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
- 创建用户时的默认域配置为 default
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = 'default'
- 使用单一扁平网络,禁用支持3层网络服务
OPENSTACK_NEUTRON_NETWORK = {
'enable_router': False,
'enable_quotas': False,
'enable_ipv6': False,
'enable_distributed_router': False,
'enable_ha_router': False,
'enable_lb': False,
'enable_firewall': False,
'enable_vpn': False,
'enable_fip_topology_check': False,
- 修改时区
TIME_ZONE = "Asia/Shanghai"
- Apache服务重启
systemctl restart httpd
- 页面访问
访问地址:http://192.168.137.11/dashboard
默认域:default 用户名:demo 密码:demo
OpenStack 图形化服务 Horizon介绍和部署(十二)的更多相关文章
- OpenStack 图形化服务 Horizon使用(十三)
构建一台云主机 上图中Count可以选择同时创建多台 最终“启动实例” 创建成功后,可以进入控制台,操作新建云主机
- 微服务从设计到部署(二)使用 API 网关
链接:https://github.com/oopsguy/microservices-from-design-to-deployment-chinese 译者:Oopsguy 本书的七个章节是关于设 ...
- openstack(Pike 版)集群部署(二)--- Keystone 部署
一.介绍 参照官网部署:https://docs.openstack.org/keystone/queens/install/ 继续上一博客进行部署:http://www.cnblogs.com/we ...
- WCF学习之旅—WCF服务的WAS寄宿(十二)
上接 WCF学习之旅—WCF服务部署到IIS7.5(九) WCF学习之旅—WCF服务部署到应用程序(十) WCF学习之旅—WCF服务的Windows 服务程序寄宿(十一) 八.WAS宿主 IIS ...
- Scrum立会报告+燃尽图(十二月十一日总第四十二次):贡献分配和收集用户报告
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2484 项目地址:https://git.coding.net/zhang ...
- Scrum立会报告+燃尽图(十一月二十四日总第三十二次):视频剪辑
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2284 项目地址:https://git.coding.net/zhang ...
- spring cloud微服务快速教程之(十二) 分布式ID解决方案(mybatis-plus篇)
0-前言 分布式系统中,分布式ID是个必须解决的问题点: 雪花算法是个好方式,不过不能直接使用,因为如果直接使用的话,需要配置每个实例workerId和datacenterId,在微服务中,实例一般动 ...
- openstack controller ha测试环境搭建记录(十二)——配置neutron(计算节点)
在计算节点配置内核参数:vi /etc/sysctl.confnet.ipv4.conf.all.rp_filter=0net.ipv4.conf.default.rp_filter=0 在计算节点使 ...
- Typora-yes:typora最舒适的使用-优化主题+图床服务+自动上传图片插件
转载注明出处:https://www.cnblogs.com/nreg/p/11992678.html,谢谢 开源项目下载:https://github.com/nreg/typora-yes 云盘: ...
随机推荐
- zabbix问题之snmp监控端口流量断图
zabbix之snmp监控端口断图问题 在使用zabbix的snmp方式的监控端口流量时,某一个图总是断断续续的(被监控设备有较大的端口流量),经常会出现几分钟内没有图像的问题. 端口流量断图原因: ...
- docker之故障问题解决方案
1.报错如下一 Error response from daemon: driver failed programming external connectivity on endpoint lnmp ...
- 访问kubernetes ingress-controller
ingress-controller可以理解为一套反向代理系统,本身需要暴露端口到集群外部,以便客户端访问. 根据实际使用,给出两种暴露端口的方式,如下: 方案一 拓扑 说明 ingress-cont ...
- IOTA price analysis
Iota coinchart Look at the trendline drawn in red color, at the very first beginning of this month, ...
- Notes of Daily Scrum Meeting(12.20)
今天是周六,大家空余的时间还是挺多的,也都主动完成了当天工作,最后由于我的失误,在晚上12点 之前没有把进度签入进TFS里面,所以周六的燃尽图是错误的,我把进度加进周日,总的进度会在周日的燃尽 图里面 ...
- 【SE】Week1 : 个人博客作业
快速看完整部教材,列出你不懂的 5 - 10 个问题,发布在你的个人博客上. 1)针对书中提到的NABCD模型中的N,如何发掘市场不明确的潜在用户需求? 2)PM是否负责团队职责的分配以及工程模块的设 ...
- No.1101_第十次团队会议
今天项目进展很多,大家都在现在的成果而开心,信心高涨,后面的任务的完成也基本都能指日可待.之前团队出现了各种问题,沟通出现了很多障碍,导致各方面受阻.现在大家再面对面坦诚相对,交流了一下自己的想法,结 ...
- js生成uuid代码
function uuid() { var s = []; var hexDigits = "0123456789abcdef"; for (var i = 0; i < 3 ...
- Thymeleaf 学习笔记
(一)Thymeleaf 是个什么? 简单说, Thymeleaf 是一个跟 Velocity.FreeMarker 类似的模板引擎,它可以完全替代 JSP .相较与其他的模板引擎,它有如下三个极吸引 ...
- php redis 的基本操作
前言: 断断续续的接触了redis的使用.但是也就简单的记住了几个set.get方法,用的还是太少了吧.所以来做个笔记,记录下一些常用的命令. 内容: 首先是php连接redis. $redis = ...