
openstack知识学习
文章平均质量分 50
sxmatch
关注云计算,OpenStack,Ceph,容器等技术
展开
-
工作小记系列1:时间跳变对于基于OpenStack的云操作系统产品的影响
在开发基于OpenStack开源项目的云操作系统产品时,经常会在项目中遇到时间跳变的问题,现网交付或者运维人员常常无法准确评估时间跳变对于系统的影响,因此将时间跳变对于系统的影响分为不同的节点角色类型,总结一篇工作小记。原创 2022-05-09 15:05:42 · 598 阅读 · 0 评论 -
Openstack卷迁移状态图
最近基于Mitaka版本整理了Cinder中卷状态变迁图,希望可以帮助有兴趣的同学更好的理解Cinder,水平有限,如有错误,请多多指教。原创 2016-12-01 09:29:10 · 1642 阅读 · 0 评论 -
VOVA使用分析
1 VOVA简介VMware OpenStack Virtual Appliance(VOVA),是VMware推出的一种虚拟应用,旨在帮助VMware的用户简捷的获取运行在VSphere之上的openstack的实践经验。通过VOVA,用户可以方便的通过openstack的Dashboard或者使用命令行在Vsphere的逻辑集群上创建虚拟机。2 使用VOVA的原创 2014-03-29 17:49:07 · 3373 阅读 · 1 评论 -
wsgi+webob+routes学习笔记-初学篇(end)
6 使用webob来包装wsgi请求和响应先介绍下webob: WebOb是一个Python库,主要是用在WSGI中对请求环境变量request environment(也就是WSGI应用中的参数environ)进行包装(提供wrapper),并提供了一个对象来方便的处理返回response消息。WebOb提供的对象映射了大多数的HTTP方法,包括头解析,content协商等。这里的原创 2013-08-08 19:42:07 · 1508 阅读 · 1 评论 -
wsgi+webob+routes学习笔记-初学篇(下)
5 将application封装为class进行调用为了进一步接近openstack中用法,将上文中的application函数可以封装为class进行调用,代码如下:__author__= 'sxmatch'"""calla application class"""importwebobimporteventletfromeventlet import wsgi原创 2013-08-08 19:38:26 · 1032 阅读 · 0 评论 -
wsgi+webob+routes学习笔记-初学篇(中)
接上文:可以看到wsgi已经在8090端口上建立了,用Rest client发个消息看下,可以看到已经收到了响应“Hello, World! I am sxmatch”在以上程序中:方法def myapp(env, start_response)就是用户自己的应用,起入参是wsgi规定好的,env为字典,start_response是个回调函数对象。在application中调用了这个原创 2013-08-08 10:47:30 · 1075 阅读 · 0 评论 -
wsgi+webob+routes学习笔记-初学篇(上)
1 初识WSGI:Wsgi是什么?Python Web服务网关接口? 可以先看下它不是什么:What WSGI¹ is not: a server, a python module, aframework, an API or any kind of software.它仅仅是一个web server和application之间的一个接口定义(http://webpython.cod原创 2013-08-08 10:39:13 · 1403 阅读 · 0 评论 -
openstack-cinder_lvm_driver命令汇总(下)
9.删除逻辑卷(要先确保该卷没有被挂载使用)lvremove [逻辑卷路径] 例如: lvremove /dev/cinder-volumes/volume1注意有时候删除逻辑卷时会报:Can't remove open logical volume 的错误,这时需要先清除一下linux系统中块设备映射关系,例如:dmsetup remove -f /dev/mapper/cind原创 2013-07-12 08:19:00 · 1952 阅读 · 0 评论 -
openstack-cinder_lvm_driver命令汇总(中)
5.从卷组中删除一个物理卷,首先要确保没有逻辑卷使用这个物理卷vgreduce [卷组名] [物理卷路径] 例如:vgreduce cinder-volumes /dev/sdc6.创建逻辑卷(cinder的lvm driver就是使用这个命令创建一个卷)lvcreate -L [卷大小MB] -n [卷名称] [卷组名] 例如: lvcreate -L 1000 -n v原创 2013-07-11 20:38:29 · 1578 阅读 · 0 评论 -
openstack-cinder_lvm_driver命令汇总 (上)
Cinder在使用LVM(逻辑卷管理)作为driver时,在suse环境和不安装lvm的ubuntu环境上需要先执行一系列的命令才能正常使用cinder:1.创建物理卷(一般选择服务器没有使用的另一块或多块硬盘作为供cinder使用的物理卷)pvcreate [磁盘设备路径] 例如:pvcreate /dev/sdb 创建完成后可以使用 pvdisplay 命令查看物理卷详情原创 2013-07-11 20:36:12 · 2769 阅读 · 0 评论 -
ubuntu环境下cinder-bakup服务添加方法
ubuntu环境下默认是没有安装cinder-backup服务的,如果我们要使用cinder的backup特性,就需要将backup作为ubuntu的服务添加进操作系统。而Ubuntu从6.10开始逐步用Upstart()代替原来的SysVinit进行服务进程的管理,添加服务的方式与其他操作系统不同,研究总结如下:Step1:将cinder源码bin目录下的cinder-backup启动脚原创 2013-07-11 20:32:53 · 1787 阅读 · 5 评论 -
OpenStack-Cinder卸卷接口代码走读(Grizzly)
卸卷接口os-detach ,接口参数有:【卷ID】1. Os_detach接口属于openstack的扩展接口,其controller是volume_action.py中的VolumeActionsController类2. 通过routes的URL映射,卸卷的请求被dispatch到了volume_action.py中的VolumeActionsController类,并调用卸原创 2013-06-18 20:06:47 · 948 阅读 · 0 评论 -
OpenStack-Cinder挂卷接口代码走读(Grizzly)
挂卷接口os-attach,接口参数有:【卷ID,要挂卷的虚拟机的UUID,挂载点】1. Os_attach接口属于openstack的扩展接口,其controller是volume_action.py中的VolumeActionsController类2. 通过routes的URL映射,挂卷的请求被dispatch到了volume_action.py中的VolumeActio原创 2013-06-18 20:04:44 · 1469 阅读 · 0 评论 -
OpenStack-Cinder强制卸载卷接口代码走读(Grizzly)下
4. 在terminate_connection方法中的主要作用就是清除connector所表示的主机和卷之间的connection,首先根据volume_id从DB中取出volume_ref,然后调用响应driver的terminate_connection方法,该方法在不同的driver中实现完全不同,有些driver中直接pass,例如在iscsidriver,sheepdogdriver原创 2013-05-17 08:52:49 · 1349 阅读 · 0 评论 -
OpenStack-Cinder强制卸载卷接口代码走读(Grizzly)上
1. Os-force_detach接口属于openstack的扩展接口,其controller是admin_action.py中的VolumeAdminController类2. 通过routes的URL映射,强制卸载卷的请求被dispatch到了admin_action.py中的VolumeAdminController类,并调用强制卸载卷的方法def _force_detach(se原创 2013-05-17 08:50:11 · 1371 阅读 · 0 评论 -
OpenStack-Cinder创卷代码走读(Grizzly)END
25.volume_rpcapi.create_volume是调用manager.py中的create_volume方法, 该方法先从数据库中取出volume的信息,然后调用 volume_utils.notify_about_volume_usage方法(是不是通知RabbitMQ?)。然后继续从volume信息中取vol_name,vol_size,并且如果入参中有snapshot_id原创 2013-04-24 17:42:15 · 1139 阅读 · 0 评论 -
OpenStack-Cinder创卷代码走读(Grizzly)下
20.调用Quita的方法创建reservations(应该是资源的预留).这块如果有异常,会分为volume size不足和volume个数不足抛异常。21.获取availability_zone参数,如果为null,则取默认值。如果请求中没有volume_type和source_volume,则volume_type去默认值,如果请求中没有volume_type,但是有source_v原创 2013-04-24 17:39:29 · 829 阅读 · 0 评论 -
OpenStack-Cinder创卷代码走读(Grizzly)中
继续11.除了name和description外,然后根据参数中volume_type的ID,从数据库中获取对应的volume_type的值,放入kwargs中,如果volumeType未找到,则会报异常。12.取metadata参数,放入kwargs中13.如果参数中有snapshot ID参数,则从数据库中取快照的信息放入kwargs中,否则置为none;14.取s原创 2013-04-24 17:36:38 · 997 阅读 · 0 评论 -
OpenStack-Cinder创卷代码走读(Grizzly)上
刚开始学习OpenStack,第一次走读代码,有很多不懂的地方,欢迎大家指正。这块也是在看代码过程中写下的笔记,记录在这里:1. api-paste.ini中定义了请求消息的路由路径,分为V1,V2两个版本的API。2. [composite:openstack_volume_api_v1]3. [composite:openstack_volume_api_v2]原创 2013-04-24 17:32:20 · 1238 阅读 · 0 评论