horizon服务

一、horizon 介绍:

理解 horizon

Horizon 为 Openstack 提供一个 WEB 前端的管理界面 (UI 服务 )通过 Horizone 所提供的 DashBoard 服务 , 管理员可以使用通过 WEB UI 对 Openstack 整体云环境进行管理 , 并可直观看到各种操作结果与运行状态。

DashBoard 与其他组件的关系

 

登陆 Dashboard 界面

启动客户端浏览器,于地址栏输入:

http://Horizone_server_ip/dashboard

 

 二、区域(Region)

1、地理上的概念,可以理解为一个独立的数据中心,每个所定义的区域有自己独立的Endpoint;
2、区域之间是完全隔离的,但多个区域之间共享同一个Keystone和Dashboard(目前Openstack中的Dashboard还不支持多个区域);
3、除了提供隔离的功能,区域的设计更多侧重地理位置的概念,用户可以选择离自己更新的区域来部署自己的服务,选择不同的区域主要是考虑那个区域更靠近自己,如用户在美国,可以选择离美国更近的区域;
4、区域的概念是由Amazon在AWS中提出,主要是解决容错能力和可靠性;

三、可用性区域(Availability Zone)

1、AZ是在Region范围内的再次切分,例如可以把一个机架上的服务器划分为一个AZ,划分AZ是为了提高容灾能力和提供廉价的隔离服务;
2、AZ主要是通过冗余来解决可用性的问题,在Amazon的声明中,Instance不可用是指用户所有AZ中的同一个Instance都不可达才表明不可用;
3、AZ是用户可见的一个概念,并可选择,是物理隔离的,一个AZ不可用不会影响其他的AZ,用户在创建Instance的时候可以选择创建到那些AZ中;

四、Host Aggreates

一组具有共同属性的节点集合,如以CPU作为区分类型的一个属性,以磁盘(SSD\SAS\SATA)作为区分类型的一个属性,以OS(Windows\Linux)为作区分类型的一个属性;

 

五、Cell

nova为了增加横向扩展以及分布式、大规模(地理位置级别)部署的能力,同时又不增加数据库和消息中间件的复杂度,引入了cell的概念,并引入了nova-cell服务。
1、主要是用来解决OpenStack的扩展性和规模瓶颈;
2、每个Cell都有自己独立的DB和AMQP,不与其他模块共用DB和AMQP,解决了大规模环境中DB和AMQP的瓶颈问题;
3、Cell实现了树形结构(通过消息路由)和分级调度(过滤算法和权重算法),Cell之间通过RPC通讯,解决了扩展性问题;

六、horizon服务部署

 

#第一步 下载openstack-dashboard

yum install openstack
-dashboard
#第二步 配置dashboard配置文件
vim
/etc/openstack-dashboard/local_settings
#159行 OPENSTACK_HOST
= "127.0.0.1" 改为OPENSTACK_HOST = "controller"
#28行 ALLOWED_HOSTS
= ['horizon.example.com', 'localhost']
改为 ALLOWED_HOSTS
= ['horizon.example.com', 'localhost','*']
#128行插入SESSION_ENGINE
= 'django.contrib.sessions.backends.cache'
#
131-135行注释打开
CACHES
= { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': 'controller:11211', }, }
#137至141行注释
#CACHES
= { # 'default': { # 'BACKEND': 'django.core.cache.backends.locmem.LocMemCache', # }, #}
#161行OPENSTACK_KEYSTONE_URL
= "http://%s:5000/v2.0" % OPENSTACK_HOST
改为OPENSTACK_KEYSTONE_URL
= "http://%s:5000/v3" % OPENSTACK_HOST
#65行注释删除#OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT
= False
改为OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT
= True
#
54-60行注释删除 55行注释不用删除
OPENSTACK_API_VERSIONS
= {
#
"data-processing": 1.1, "identity": 3, "image": 2, "volume": 2, "compute": 2, }
#73行#OPENSTACK_KEYSTONE_DEFAULT_DOMAIN
= 'Default'
改为OPENSTACK_KEYSTONE_DEFAULT_DOMAIN
= 'Default'
#282至291行改为
OPENSTACK_NEUTRON_NETWORK
= { 'enable_router': True, 'enable_quotas': True, 'enable_ipv6': True, 'enable_distributed_router': False, 'enable_ha_router': False, 'enable_lb': True, 'enable_firewall': True, 'enable_vpn': True, 'enable_fip_topology_check': True,
#417行改为TIME_ZONE
= "UTC"
#重启服务

systemctl restart httpd.service memcached.service
#访问
http:
//controllerIP /dashboard

 

posted @ 2019-06-12 21:47  冷漠铁锤王富贵  阅读(388)  评论(0编辑  收藏  举报