云基础及其运维 10_第1页
云基础及其运维 10_第2页
云基础及其运维 10_第3页
云基础及其运维 10_第4页
云基础及其运维 10_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

私有云基础架构与运维项目11OpenStack云平台仪表盘(Dashboard)服务在云计算平台的日常运维中,直观高效的管理界面是提升工作效率的关键工具。OpenStackDashboard(Horizon)是OpenStack项目的用户界面组件,提供了一个图形界面。作为OpenStack云平台的核心Web门户,不仅为管理员和用户提供了资源全生命周期管理的统一入口,还能通过可视化操作降低运维复杂度。本项目以企业真实云平台场景为主线,围绕Dashboard服务的部署、配置及权限管理展开实战教学。1.知识目标(1)理解并掌握Dashboard服务的组件架构;(2)掌握Dashboard服务的基本工作流程;(3)掌握Dashboard服务的安装配置命令。2.技能目标(1)具备在Apache服务器上部署Dashboard服务的能力;(2)具备采用Dashboard服务工具来运维OpenStack云平台的能力;(3)具备运维和管理OpenStack云平台Dashboard服务的能力。3.素质目标(1)具备自我学习、探究学习和创新学习的能力;(2)养成探索问题、独立思考解决综合问题的方法和能力;(3)具备资料检索、举一反三、触类旁通的方法能力,提升职业迁移与长远目标发展能力。学习目标学习导图目录任务11.1项目需求分析任务11.2认识Dashboard服务任务11.3部署Dashboard服务任务11.1项目需求分析

OpenStack云平台可以通过命令管理工具使用,或者其他应用通过应用程序接口(ApplicationProgramInterface,API)被其他程序调用。但是它们使用起来都比较麻烦,不够直观。OpenStack需要一个更加友好的组件,提供直观的图形化界面来管理OpenStack云平台,用于简化云资源的创建、配置和监控,提升OpenStack平台的易用性,降低用户对命令行和API的直接依赖。OpenStackDashboard(代号Horizon)是OpenStack的官方Web管理界面,为用户提供图形化统一的资源管理入口,简化云资源管理流程,提升用户体验感,同时,提升运维管理效率、安全性与扩展性。项目需求分析任务11.2认识Dashboard服务11.2.1Dashboard的基本概念OpenStackDashboard(Horizon)是OpenStack项目的一部分,它提供了一个Web界面,使得用户可以通过图形用户界面(GUI)来管理OpenStack云平台。Horizon允许用户执行各种操作,包括创建和删除虚拟机(VMs)、管理网络、存储卷、镜像等。Horizon中主要提供了一个Web前端控制台,该控制台软件被称为Dashboard,因此通常也以Dashboard来称呼Horizon。Dashboard的主要功能是让用户通过图形化的界面操作完成对云计算平台的配置与管理。它是OpenStack项目中用户友好的一部分,使得非技术用户也能相对容易地管理云资源。11.2.2Dashboard的组件架构Dashboard是一个用Python编写的支持WSGI协议的网络应用,部署在Apache服务器上。OpenStack云计算平台及其核心组件也支持WSGI协议,因此Dashboard可以通过WSGI与OpenStack云计算平台框架及其他组件相连。Dashboard是无法脱离Web服务器而单独运行的Web应用,它和OpenStack的其它组件一样都运行在httpd服务器中。Dashboard安装完成后,其主要的网站文件路径为“/usr/share/openstack-dashboard/”,需要将其和httpd服务器建立关系后再使用。11.2.3Dashboard的基本工作流程

(1)用户访问Horizon界面

-用户通过浏览器访问Horizon的URL。

-Horizon返回登录页面,用户输入凭证(用户名、密码、项目/域信息)。

(2)身份认证(Keystone交互)

-Horizon将用户凭证发送至Keystone(OpenStack身份服务)。

-Keystone验证凭证合法性,返回一个认证令牌(Token)和用户权限信息(角色、可访问的服务列表)。

(3)加载仪表板与菜单

-Horizon根据用户权限动态生成导航菜单(如普通用户仅看到虚拟机管理,管理员看到所有资源)。

-用户界面展示与权限匹配的操作选项(如启动实例、创建网络等)。

(4)用户发起操作请求

-用户执行操作(例如创建虚拟机):

-选择镜像(Glance)、配置规格(NovaFlavor)、网络(Neutron)等参数。11.2.3Dashboard的基本工作流程

(5)Horizon调用OpenStackAPI-Horizon将用户请求转换为对应的OpenStackRESTAPI调用,例如:

-NovaAPI:创建虚拟机实例。

-NeutronAPI:配置网络和子网。

-GlanceAPI:获取镜像列表。

-所有API请求均携带Keystone返回的认证令牌(Token),用于服务间的鉴权。

(6)后端服务处理请求

-各OpenStack服务处理请求并与其他服务协作:

-Nova调用Glance获取镜像,Neutron分配网络,Cinder挂载卷(若需要)。

-服务间通过消息队列(如RabbitMQ)或直接API调用通信。

(7)异步结果返回与状态更新

-操作结果(成功/失败)通过API返回给Horizon。

-Horizon更新界面状态(例如虚拟机列表、任务进度条)。

-用户可通过界面实时查看资源状态(如虚拟机启动中、运行中、错误)。

(8)日志与审计

-Horizon记录用户操作日志(可选),并与OpenStack的审计日志(如Ceilometer)集成。11.2.3Dashboard的基本工作流程Dashboard可以对OpenStack的各个组件分别进行管理。Dashboard唯一依赖的是Keystone,如果Keystone服务出现问题,则Dashboard将无法登录系统。而其它组件服务出现问题时不会影响Dashboard管理其它组件,只是与问题组件服务相关的操作无法执行而已。安装好Dashboard后,按照下面的方法查看httpd的日志文件目录,可以看到在该目录下有两个关于Keystone的日志文件“error_log.log””keystone-access.log”,它们记录了在Dashboard运行期间对Keystone的使用情况。任务11.3部署Dashboard服务11.3.1安装与配置Dashboard服务1.安装Dashbord软件包使用yum命令安装Dashboard服务所需要的软件包。命令如下所示。[root@controller~]#yuminstallopenstack-dashboard-y11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改(1)备份配置文件Dashboard的配置文件为“/etc/openstack-dashboard/local_settings”,对该配置文件进行备份。操作命令如下:[root@controller~)]#cp/etc/openstack-dashboard/local_settings/etc/openstack-dashboard/local_settings.bak(2)打开配置文件,配置Web服务器的基本信息 设置允许任意主机访问Web服务。操作命令如下:[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改ALLOWED_HOSTS=['*'] 指定控制节点的位置配置用于指定控制节点的位置。操作命令如下[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改OPENSTACK_HOST="controller"11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改 配置时区将当前时区指向“亚洲/上海”。操作命令如下:[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改TIME_ZONE="Asia/Shanghai" 配置访问目录增加页面的访问路径,操作命令如下。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#增加WEBROOT='/dashboard/'11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改(3)配置缓存服务可以在原有代码基础上进行修改,配置缓存服务。操作命令如下:[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改SESSION_ENGINE='django.contrib.sessions.backends.cache'CACHES={'default':{'BACKEND':'django.core.cache.backends.memcached.MemcachedCache','LOCATION':'controller:11211',}}11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改(4)启用对多域的支持[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT=True(5)指定OpenStack组件的版本新增如下信息,分别对应OpenStack的认证、镜像、存储组件的版本号。操作命令如下所示。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#增加OPENSTACK_API_VERSIONS={"identity":3,"image":2,"volume":3,}11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改(6)设置通过Dashboard创建的用户所属的默认域通过在配置文件中增加以下内容指定创建的用户所属的默认域。这里设置域为“Default”域。操作命令如下。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#增加OPENSTACK_KEYSTONE_DEFAULT_DOMAIN="Default"(7)设置通过Dashboard创建的用户的默认角色为“user”在配置文件中新增如下一行,设置默认角色为“user“,操作命令如下。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#增加OPENSTACK_KEYSTONE_DEFAULT_ROLE="user"(8)设置通过Dashboard访问的Keystone组件的URL通过配置配置文件中OPENSTACK_KEYSTONE_URL的值,使Dashboard组件访问的Keystone组件的URL地址。操作命令如下。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改OPENSTACK_KEYSTONE_URL="http://%s:5000/v3"%OPENSTACK_HOST11.3.1安装与配置Dashboard服务2.Dashboard服务配置文件修改(9)设置如何使用Neutron网络在配置文件中按照以下代码修改“OPENSTACK_NEUTRON_NETWORK“的配置。操作命令如下。[root@controller~)]#vi/etc/openstack-dashboard/local_settings#修改OPENSTACK_NEUTRON_NETWORK={'enable_router':True,'enable_quotas':True,'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,}11.3.1安装与配置Dashboard服务3.Dashboard服务修改支持协议在配置文件“/etc/httpd/conf.d/openstack-dashboard.conf“前三行下增加,使Apache支持WSGI协议(用来支持Web服务器和Web应用程序交互)。操作如下。[root@controller~)]#vi/etc/httpd/conf.d/openstack-dashboard.conf#增加WSGIApplicationGroup%{GLOBAL}4.重启Apache服务、会话存储服务重新启动Apache服务和会话存储服务,使配置生效,并查看这两个服务的状态是否启动。操作如下。[root@controller~]#systemctlrestarthttpd.servicememcached.service[root@controller~]#systemctlstatushttpd.servicememcached.service11.3.2发布Dashboard服务1.重建Dashboard的Web应用配置文件(1)进入Dashboard的网站目录[root@controller~)]#cd/usr/share/openstack-dashboard(2)编译生成Dashboard的Web服务配置文件[root@controller~)]#python3manage.pymake_web_conf--apache>/etc/httpd/conf.d/openstack-dashboard.conf(3)查看生成的配置文件,可以看到运行Dashboard需要的各项参数[root@controller~)]#cat/etc/httpd/conf.d/openstack-dashboard.conf11.3.2发布Dashboard服务1.重建Dashboard的Web应用配置文件<VirtualHost*:80>ServerAdminwebmaster@ServerNameopenstack_dashboardDocumentRoot/usr/share/openstack-dashboard/LogLevelwarnErrorLog/var/log/httpd/openstack_dashboard-error.logCustomLog/var/log/httpd/openstack_dashboard-access.logcombinedWSGIScriptReloadingOnWSGIDaemonProcessopenstack_dashboard_websiteprocesses=5WSGIProcessGroupopenstack_dashboard_websiteWSGIApplicationGroup%{GLOBAL}WSGIPassAuthorizationOnWSGIScriptAlias//usr/share/openstack-dashboard/openstack_dashboard/wsgi.py<Location"/">Requireallgranted</Location>Alias/static/usr/share/openstack-dashboard/static<Location"/static">SetHandlerNone</Location></Virtualhost>其中“DocumentRoot”代表网站主目录,可以看到网站主目录已经指向了Dashboard的网站目录。11.3.2发布Dashboard服务2.建立策略文件的软链接在“/etc/openstack-dashboard”中内置了一些策略文件,它们是Dashboard与其它组件交互时的默认策略。通过以下命令查看该目录下的策略文件。[root@controller~)]#ls/etc/openstack-dashboard/cinder_policy.jsonglance_policy.jsonkeystone_policy.jsonlocal_settingslocal_settings.bakneutron_policy.jsonnova_policy.dnova_policy.json为了让这些策略文件生效,需要将它们放置到Dashboard项目中。下面采用软链接的方式将这些策略文件放入项目。[root@controller~)]#ln-s/etc/openstack-dashboard//usr/share/openstack-dashboard/openstack_dashboard/conf最后,查看Dashboard的网站目录。[root@controller~)]#ll/usr/share/openstack-dashboard/op

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论