设为首页 收藏本站
查看: 2045|回复: 0

[经验分享] [转]Openstack Havana Dashboard测试和使用

[复制链接]

尚未签到

发表于 2015-4-12 09:11:55 | 显示全部楼层 |阅读模式
  转贴一篇陈沙克老师的文章:http://www.chenshake.com/openstack-havana-dashboard-to-test-and-use/

Openstack Havana Dashboard测试和使用

Openstack的Havana将要2013年10月17日发布,目前Redhat和Ubuntu 的包都已经基本准备好,正式版本发布后,Redhat和Ubuntu 对新版本的支持,应该会在一个星期内就搞定。
  这次我是使用Redhat的RDO来搭建http://www.chenshake.com/centos-6-4-rdo-test/,尽量全面测试一下Dashboard的功能,让大家对Dashboard的功能有一定的了解,这也算是给Openstack做点贡献
  Openstack的Dashboard,是基于OpenStack各个组件开发的web管理后台,项目名字是Horizon。目前Dashboard并没有实现全部的API功能,很多功能可能是API提供,但是Dashboard没有去实现。同时Dashboard还欠缺不少功能,等待大家一起完善。在Openstack的各个项目里,如果是一个小的功能,会做作为一个bug的方式去修复。大的功能,才会作为Blueprint。当你希望做某个功能的时候,不只是把Blueprint看一遍,还需要把Bug列表看一遍,这样才能避免重复造轮。
  写这个文档,我也基本尽量把各个项目的bug列表和Blueprint过一遍,加上相关的链接,各位开发者如果感兴趣,可以去修复。给Openstack贡献代码,其实对个人的好处是很多的,能力和视野都会提高很多,在国内,如果你是某个项目的Core,那么你基本就是去各大外企都不是问题,成为Core,并不是想象中那么高难度,尤其一些新项目。对于新手,如何提交第一个patch给Openstack,其实可以参考文章提到的各种bug和功能,这样会更快成为一个Commiter.
  
  



Contents [hide]


  • 1 登陆
  • 2 Setting

    • 2.1 用户设置
    • 2.2 修改密码


  • 3 Admin(管理员权限)

    • 3.1 System Panel(系统面板)

      • 3.1.1Overview(概况)
      • 3.1.2 Resouce Usage(资源使用情况)
      • 3.1.3Hypervisors(虚拟机管理器)
      • 3.1.4Instances(云主机)
      • 3.1.5 Volumes(云硬盘)
      • 3.1.6 Flavors(云主机类型)
      • 3.1.7 Images(镜像)
      • 3.1.8Networks(网络)
      • 3.1.9 Routers(路由)
      • 3.1.10Defaults(默认值)
      • 3.1.11 System Info(系统信息)


    • 3.2 Identity Panel(认证面板)

      • 3.2.1Domains(域)
      • 3.2.2 Projects(项目)
      • 3.2.3 Users(用户)
      • 3.2.4Groups(组)
      • 3.2.5 Roles(角色)




  • 4 Project(普通用户)

    • 4.1 创建网络
    • 4.2 创建路由器
    • 4.3 Set Gateway
    • 4.4 查看网络拓扑
    • 4.5 设置安全组
    • 4.6 创建秘钥
    • 4.7 申请Floating Ip
    • 4.8 创建虚拟机



登陆
DSC0000.jpg
  用户注册的功能,这个并不难,可以自己开发。不过目前是不支持用户找回密码,这个是需要keystone的支持https://bugs.launchpad.net/keystone/+bug/884451  ,Dashboard才能实现取回密码。

Setting
  

用户设置
  基本所有的系统,都是右上角 “setting” 进行用户的设置
DSC0001.jpg
  对于Dashboard来说,分为3栏,项目,管理员和Settings,
  不过目前来说,用户设置里的语言和时区的设置,只是保存在cokie里,没没有存放在数据库里。默认语言是根据浏览器的语言来决定。用户的个性化的设置,都是无法保存。因为目前keystone无法存放这些数据。你也无法修改用户的邮箱,所以也就导致你无法实现取回密码功能。https://bugs.launchpad.net/horizon/+bug/884492
  如果希望修改默认时区,你需要修改 /etc/openstack-dashboard/local_settings 文件,不过我尝试修改,重启Apache,并不生效,还没确认这是否是bug。

#TIME_ZONE = "UTC"
TIME_ZONE = "Asia/Chongqing"
  
  例如虚拟机的数量太多,需要分页,多少条一页,这个目前还是无法实现。https://blueprints.launchpad.net/horizon/+spec/v3-pagination-support
  据说这次香港峰会,会集中讨论这个问题,因为各个组件都有类似的需求。

修改密码
  
DSC0002.jpg
  在最新的H版本,用户已经可以修改自己的密码,修改完密码后,会强行退出再登陆,因为token需要update。很难想象,这样简单的功能,居然是到H版本才实现。
  密码强度要求,这个其实可以在前端去实现,不过密码过期的功能,目前是没有,这个也是需要keystone提供的功能。https://blueprints.launchpad.net/keystone/+spec/user-password-expiration
  用户操作日志也是没有的,用户的所有操作,都有消息提醒,不过这些消息,都没有记录下来,对于Dashboard来说,他是不知道记录在哪里,目前看来应该是Ceilometer该做的事情。有一个stacktach的项目,可以将notification持久化,并且可以在web页面上进行搜索,或者使用cli做分析。

Admin(管理员权限)
  这个tab,只有管理员权限的用户才能访问。

System Panel(系统面板)

Overview(概况)
  Overview:这里会列出所有的系统的虚拟机使用情况。包括删除的虚拟机。可以下载Excel表格,其实简单的计量功能。对于起步阶段,应该是可以满足计费的需求。目前我下载的CSV,中文是乱码,这也是一个bug:https://bugs.launchpad.net/horizon/+bug/1226910
  项目名字,其实就是租户,在Openstack里,有点混乱,不同的版本,有时候是租户,有时候是project,没有接触过共有云的人,对租户的概念接触比较少,不好理解。你就把租户或项目理解成部门或者企业,租户下才有用户,用户才能设置密码。
DSC0003.jpg

Resouce Usage(资源使用情况)
  这个是H版本新增加的功能,显示系统资源的使用情况。这是通过Ceilometer实现的功能,目前Ceilometer在计量方面做的工作,还是不错的,不过在监控上,还是比较弱。估计这也是为啥目前Redhat在RDO项目里集成Nagios的原因。
DSC0004.jpg
  这里就使用的租户的概念,显示磁盘,网络的使用情况。而且只是30天内,无法自己定义范围,等待日后完善吧。
DSC0005.jpg
  网络的使用情况,上面都是Neutron的影子
DSC0006.jpg
  Stats这个标签是重点,可以让你查看某个时间段的使用情况。等日后产生数据,再好好查看一下。
DSC0007.jpg

Hypervisors(虚拟机管理器)
  这也是H版本新增加的功能,显示物理机器的资源情况,cpu,内存和硬盘,虚拟机数量
DSC0008.jpg
  不过这里其实显示的结果是有点问题。
  VCPU(total)其实是物理资源,就是cpu的核数*2 (超线程),这样的描述让人误会。提交了一个bughttps://bugs.launchpad.net/horizon/+bug/1202965
  你可以使用的VCPU:nova会把物理的cpu的核数,按照默认16:1进行虚拟化,这个比例你可以自己设置。但是目前通过api,你是无法获取虚拟化的比例,导致无法正确显示。
  内存和硬盘,情况都是一样,默认内存是1.5:1,硬盘,好像是1:1
  另外还有一个小问题,就是host无法点击进入详细页面,显示更多信息,例如在这台机器的虚拟机列表。

Instances(云主机)
  这里就是列出所有的虚拟机,并且可以对虚拟机进行操作,例如迁移,删除等。这个地方的信息比Overview详细很多。
DSC0009.jpg

Volumes(云硬盘)
  显示用户使用和创建的卷。H版本增加的Volume Types的功能,就是假设你有两种的存储,高速的SSD,和普通的SAS存储,你通过volume Type区分,用户创建卷的时候进行选择。
  管理员必须添加一个volume type,用户才能创建卷。
DSC00010.jpg
  创建出来的volume type,如何和后端的存储进行绑定,我还没看明白,至少Dashboard目前是没有提供这个功能。
  卷的列表里,是可以对卷进行删除操作。
DSC00011.jpg

Flavors(云主机类型)
  这个其实看上去比较简单,其实非常复杂。目前默认有5个Flavor,你可以编辑Flavor,创建Flavor.
DSC00012.jpg
  目前支持指定某个Flavor给租户使用。当用户要求的虚拟机不在Flavor里,那么你就可以使用这种方式,为特定的租户创建一个Flavor。目前AWS,国内的青云,应该都是类似这种方式。Public=true,表示所有租户都可以使用,Public=False 表示只有某些租户可以使用。
DSC00013.jpg
  普通用户是不能自己创建Flavor,也不能自己定义虚拟机的配置。不过对于私有云来说,其实是可以通过扩展一下nova的API就可以实现。这个同事已经验证,类似青云那种设计,用户可以自己定义虚拟机配置。
  Flavor extra Specs:这个地方看上去不起眼,不过很多功能和需求,都是可以通过这个地方满足,例如你希望对虚拟机的cpu资源限制,网络带宽限制,磁盘IO限制,都可以通过这里设置参数。
DSC00014.jpg
  目前添加这些参数,还是非常复杂,这个Blueprint是专门解决这个问题,Intel网卡的pci_passthrough的功能,都是通过这里进行设置 https://blueprints.launchpad.net/horizon/+spec/flavor-extra-specs-templates

Images(镜像)
  就是镜像的管理,可以上传镜像,你需要知道你上传的image是什么格式。Glance支持很多格式,但是对于企业来说,其实用不了那么多格式,你可以进行配置,具体http://openstack.redhat.com/forum/discussion/554/havana-horizon-no-formats-available-for-images/p1
  可以使用一个ubuntu做好的image:链接填写下面地址就可以。
  http://cloud-images.ubuntu.com/precise/current/precise-server-cloudimg-amd64-disk1.img
DSC00015.jpg
  我上传了一个Ubuntu 12.04的官方提供的image。这个image的格式是QCOW2,你需要指定,否则会出错。
  Public, 就是表示该Image可以所有租户都可以看见。对于Image来说,用户自己也是可以上传image,设置是否只是自己访问,还是所有租户都可以看见。
  Protected:如果打钩,那么你在列表里就无法删除,可以避免误删除。如果需要删除,通过编辑,去掉打钩,就可以删除。
  镜像对硬盘和内存的最小需求,其实是为了日后创建虚拟机的时候,如果Flavor无法满足Image的需求的情况下,就会隐藏该Flavor。https://bugs.launchpad.net/horizon/+bug/1116122   这个功能在H版本,应该是有机会实现,作为一个Bug修复。
  可以从本地上传一个操作系统的ISO
DSC00016.jpg
  我尝试上传4G的ISO,百兆的网络,火狐下,居然一点问题都没有,上传成功。
  使用ISO来安装操作系统,你需要创建一个单独的Flavor,或者修改已有的Flavor,让Ephemeral disk不为0,你才能进行安装。
DSC00017.jpg
  设置Protected,就没有more的删除按钮。
  目前在image的详细页面里,image的上传时间UTC时间,而不是你设置的时区的时间。这个有待改进的地方。

Networks(网络)
  这部分是我一直没搞明白的,借助龚永生的文档,终于搞定。这篇文档,所有打算玩Neutron,都应该好好看看。http://www.ustack.com/blog/neutron_intro/   网络部分,还有很多细节,后面逐步完善。
  这里管理员创建的网络,有点类似数据中心的接入,联通线路,电信线路。对于租户来说,可以选择不同的线路出去。不过目前路由器的出口,只能是1条线路。
  我实验有一个网络 10.1.198.0/24 专门给虚拟机的Floating IP使用,网关是10.1.198.1。如果你希望你的网络和机器的网络是一个网段,可以参考文档http://openstack.redhat.com/Neutron_with_existing_external_network   不过我没试验成功。
DSC00018.jpg
  记住要勾选External Network, 点击创建。
  进入网络的详细页面,
DSC00019.jpg
  extnet的详细资料,黄色的部分,应该好好理解,我是采用RDO all in One安装,所以网络是local,
DSC00020.jpg
  创建Subnet,所谓Subnet,我的理解就是Floating IP 地址池,分配公网IP给虚拟机。
DSC00021.jpg
  Subnet Detail,这里是不需要设置。
  添加后
DSC00022.jpg
  

Routers(路由)
  管理员不需要创建路由器,可以查看到所有租户创建的路由器,并且进行删除。

Defaults(默认值)
  这是系统的默认设置,目前就只有Quotas的默认设置,你可以修改这些默认设置,这样非常方便。
DSC00023.jpg
  通过 Update Defaults,可以修改所有的Quota的默认设置,如果你希望对用户不做限制,那么就设置成-1.
  作为管理员,还有一个需求,可以订制安全组的默认设置,这个功能,下一个版本应该是可以加入。

System Info(系统信息)
  系统的基本信息
  对于Openstack,有几个概念,让大家很头疼,需要搞明白
DSC00024.jpg
  来源:http://kimizhang.wordpress.com/2013/08/26/openstack-zoning-regionavailability-zonehost-aggregate/
  Region:这个概念来自亚马逊,可以理解成一个地区,一个Region,其实是可以对应多个数据中心,这几个数据中心,距离应该是100公里左右。
  Availability zones(AZ):AZ,其实我的理解就是Region的某个数据中心,或者一个数据中心里,不同供电的机房单元类似的概念。
  Cell:当你的在一个数据中心大规模部署的时候,节点数量到了一定程度,那么就会有服务产生瓶颈,那么如何扩展呢?每个Cell有自己的消息队列和数据库服务,不过所有的Cell,都是统一的Nova API接口。就是一个Region下可以有多个Cell,每个Cell里,有自己的消息队列,数据库。
  Host Aggregates:这个主要用途是设置调度,让某个image或者某个Flavor,创建在某些服务器上。
  http://russellbryantnet.wordpress.com/2013/05/21/availability-zones-and-host-aggregates-in-openstack-compute-nova/
  http://www.mirantis.com/blog/segregation-in-grizzly-availability-zones-versus-host-aggregates/
  Service
DSC00025.jpg
  
  Compute Service
DSC00026.jpg
  Availability Zones
DSC00027.jpg
  Host Aggregates
DSC00028.jpg
  Netwrok Agent
DSC00029.jpg

Identity Panel(认证面板)

Domains(域)
  H版本增加了Domain的功能,不过Dashboard应该仅仅是显示,还没搞明白Domain的用途。
  
DSC00030.jpg
  编辑
DSC00031.jpg
  Domain Groups
DSC00032.jpg

Projects(项目)
  Project,相当于租户,系统内置两个租户
DSC00033.jpg
  为了试验,我创建一个test租户
DSC00034.jpg
  由于我现在还没有创建用户,所以别的tab不需要设置

Users(用户)
  系统会创建很多服务的用户
DSC00035.jpg
  我们这里创建一个用户:chenshake, 添加到project:test
DSC00036.jpg

Groups(组)
  你可以创建组,可以往组里添加用户,不过这个组,我是没搞明白如何使用。
DSC00037.jpg

Roles(角色)
  这是系统内置的Roles,添加roles,仅仅是添加一个名字,没有任何地方可以设置。
DSC00038.jpg

Project(普通用户)
  这里我不是使用管理员的账号,而是使用我文档上面创建的用户:chenshake 登陆进行完成。下面我就不按照菜单的顺序来介绍,而是按照一个虚拟机的创建流程来截图。

创建网络
DSC00039.jpg
  Create Network
DSC00040.jpg
  
DSC00041.jpg
  直接创建就可以,不需要设置subnet  detail
DSC00042.jpg

创建路由器
DSC00043.jpg
DSC00044.jpg
  

Set Gateway
DSC00045.jpg
DSC00046.jpg
  结果如图
DSC00047.jpg
  
  路由详情
DSC00048.jpg
  添加Interface
  Subnet,就会显示刚才创建的网络,点击创建
DSC00049.jpg
  结果
DSC00050.jpg

查看网络拓扑
DSC00051.jpg
  

设置安全组
DSC00052.jpg
  默认的安全组,是拒绝所有的访问,
DSC00053.jpg
  我们需要打开22端口和允许ping。
  22端口
DSC00054.jpg
  允许ping
DSC00055.jpg
  
  看看结果
DSC00056.jpg

创建秘钥
DSC00057.jpg
  下载到windows本地。

申请Floating Ip
DSC00058.jpg
DSC00059.jpg
  结果
DSC00060.jpg

创建虚拟机
  Flavor选择的时候,需要注意,不能选择tiny,因为我的Ubuntu的镜像要求比tiny大。
DSC00061.jpg
DSC00062.jpg
  选择网络
DSC00063.jpg
  把网络添加完,就可以创建虚拟机
DSC00064.jpg
  分配floating Ip
DSC00065.jpg
  选择刚才申请的IP
DSC00066.jpg
  大概过1,2分钟
DSC00067.jpg
  这个时候,你就可以ping通虚拟机和ssh到虚拟机上面。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-56176-1-1.html 上篇帖子: 在Openstack H版部署Nova Cell 时 ,终端输入nova service-list 和 nova host-list 命令将报错 下篇帖子: Openstack G版 Baremetal
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表