首页 文章 精选 留言 我的

精选列表

搜索[统一框架],共10008篇文章
优秀的个人博客,低调大师

OpenStack CEPH Liberty 统一存储 bug解决

1, 问题: glance 镜像 raw 格式,启动云主机报错 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 2015 - 12 - 13 11 : 53 : 27.597 11654 INFOnova.virt.libvirt.driver[req - db7b8ac1 - 8218 - 4ab0 - b769 - 9c4d4379843b e198d9f41e784308858a52b174fc822aa7fc63796b934498ba9b6d1a918cb2c7 - - - ][instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]Creatingimage 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[req - db7b8ac1 - 8218 - 4ab0 - b769 - 9c4d4379843b e198d9f41e784308858a52b174fc822aa7fc63796b934498ba9b6d1a918cb2c7 - - - ][instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]Instancefailedtospawn 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]Traceback(mostrecentcalllast): 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py" ,line 2155 , in _build_resources 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] yield resources 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/compute/manager.py" ,line 2009 , in _build_and_run_instance 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]block_device_info = block_device_info) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py" ,line 2437 , in spawn 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]admin_pass = admin_password) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py" ,line 2861 , in _create_image 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]instance,size,fallback_from_host) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py" ,line 6282 , in _try_fetch_image_cache 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]size = size) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/imagebackend.py" ,line 240 , in cache 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] * args, * * kwargs) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/imagebackend.py" ,line 777 , in create_image 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]prepare_template(target = base,max_size = size, * args, * * kwargs) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py" ,line 254 , in inner 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] return f( * args, * * kwargs) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/imagebackend.py" ,line 230 , in fetch_func_sync 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]fetch_func(target = target, * args, * * kwargs) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/driver.py" ,line 2853 , in clone_fallback_to_fetch 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]backend.clone(context,disk_images[ 'image_id' ]) 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/imagebackend.py" ,line 808 , in clone 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] if self .driver.is_cloneable(location,image_meta): 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] File "/usr/lib/python2.7/site-packages/nova/virt/libvirt/storage/rbd_utils.py" ,line 193 , in is_cloneable 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a] if image_meta.disk_format! = 'raw' : 2015 - 12 - 13 11 : 53 : 27.932 11654 ERRORnova.compute.manager[instance: 18efe519 - e86b - 43e9 - 842a - f974a751e29a]AttributeError: 'dict' object hasnoattribute 'disk_format' 2,问题分析 1,查找问题定位:/usr/lib/python2.7/site-packages/nova/virt/libvirt/storage/rbd_utils.py 1 2 3 4 5 6 7 import ipdb;ipdb.set_trace() if image_meta.disk_format! = 'raw' : reason = ( "rbdimageclonerequiresimageformattobe" "'raw'butimage{0}is'{1}'" ). format ( url,image_meta.disk_format) LOG.debug(reason) return False 2, ipdb 启动服务追踪 1 [root@AthComputeLiberty10325~] #ipdb/usr/bin/nova-compute--config-file=/etc/nova/nova.conf 3,发现蛛丝马迹 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 AttributeError: "'dict'objecthasnoattribute'disk_format'" >/usr/lib/python2.7/site-packages/nova/virt/libvirt/storage/rbd_utils.py(194)is_cloneable() 193 -->194 if image_meta.disk_format!= 'raw' : 195reason=( "rbdimageclonerequiresimageformattobe" ipdb>args self=<nova.virt.libvirt.storage.rbd_utils.RBDDriverobjectat0x5f41850> image_location={ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}} image_meta={ 'status' :u 'active' , 'deleted_at' :None, 'name' :u 'Ceph-linux6.6.v2.0' , 'deleted' :None, 'container_format' :u 'ovf' , 'created_at' :datetime.datetime(2015,12,12,8,47,40,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'disk_format' :u 'raw' , 'updated_at' :datetime.datetime(2015,12,12,9,35,22,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'locations' :[{ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}}], 'owner' :u 'a7fc63796b934498ba9b6d1a918cb2c7' , 'id' :u '05cfd97d-f0d8-43b4-9796-180f650e79ce' , 'min_ram' :0, 'checksum' :u '0909ad3eebe539efc2054196abffdb41' , 'min_disk' :0, 'is_public' :None, 'direct_url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'properties' :{}, 'size' :128849018880} ipdb>image_meta.disk_format ***AttributeError: 'dict' object has no attribute 'disk_format' ipdb>image_meta.disk_format() ***AttributeError: 'dict' object has no attribute 'disk_format' ipdb>image_meta.disk_format. values () ***AttributeError: 'dict' object has no attribute 'disk_format' ipdb>dir(image_meta.disk_format) ***AttributeError: 'dict' object has no attribute 'disk_format' ipdb>args self=<nova.virt.libvirt.storage.rbd_utils.RBDDriverobjectat0x5f41850> image_location={ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}} image_meta={ 'status' :u 'active' , 'deleted_at' :None, 'name' :u 'Ceph-linux6.6.v2.0' , 'deleted' :None, 'container_format' :u 'ovf' , 'created_at' :datetime.datetime(2015,12,12,8,47,40,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'disk_format' :u 'raw' , 'updated_at' :datetime.datetime(2015,12,12,9,35,22,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'locations' :[{ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}}], 'owner' :u 'a7fc63796b934498ba9b6d1a918cb2c7' , 'id' :u '05cfd97d-f0d8-43b4-9796-180f650e79ce' , 'min_ram' :0, 'checksum' :u '0909ad3eebe539efc2054196abffdb41' , 'min_disk' :0, 'is_public' :None, 'direct_url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'properties' :{}, 'size' :128849018880} ipdb>image_meta { 'status' :u 'active' , 'deleted_at' :None, 'name' :u 'Ceph-linux6.6.v2.0' , 'deleted' :None, 'container_format' :u 'ovf' , 'created_at' :datetime.datetime(2015,12,12,8,47,40,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'disk_format' :u 'raw' , 'updated_at' :datetime.datetime(2015,12,12,9,35,22,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'locations' :[{ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}}], 'owner' :u 'a7fc63796b934498ba9b6d1a918cb2c7' , 'id' :u '05cfd97d-f0d8-43b4-9796-180f650e79ce' , 'min_ram' :0, 'checksum' :u '0909ad3eebe539efc2054196abffdb41' , 'min_disk' :0, 'is_public' :None, 'direct_url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'properties' :{}, 'size' :128849018880} ipdb>type(image_meta) <type 'dict' > ipdb>image_meta { 'status' :u 'active' , 'deleted_at' :None, 'name' :u 'Ceph-linux6.6.v2.0' , 'deleted' :None, 'container_format' :u 'ovf' , 'created_at' :datetime.datetime(2015,12,12,8,47,40,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'disk_format' :u 'raw' , 'updated_at' :datetime.datetime(2015,12,12,9,35,22,tzinfo=<iso8601.iso8601.Utcobjectat0x604ae90>), 'locations' :[{ 'url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'metadata' :{}}], 'owner' :u 'a7fc63796b934498ba9b6d1a918cb2c7' , 'id' :u '05cfd97d-f0d8-43b4-9796-180f650e79ce' , 'min_ram' :0, 'checksum' :u '0909ad3eebe539efc2054196abffdb41' , 'min_disk' :0, 'is_public' :None, 'direct_url' :u 'rbd://03e180bd-7504-4883-8d0f-5506c63d4a4f/images/05cfd97d-f0d8-43b4-9796-180f650e79ce/snap' , 'properties' :{}, 'size' :128849018880} ipdb>image_meta[ 'disk_format' ] u 'raw' 3,解决问题bug: 修改前: if image_meta.disk_format != 'raw': 修改后: if image_meta['disk_format'] != 'raw': 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 179 180 def is_cloneable( self ,image_location,image_meta): 181 import ipdb;ipdb.set_trace() 182 url = image_location[ 'url' ] 183 try : 184 fsid,pool,image,snapshot = self .parse_url(url) 185 except exception.ImageUnacceptablease: 186 LOG.debug( 'notcloneable:%s' ,e) 187 return False 188 189 if self ._get_fsid()! = fsid: 190 reason = '%sisinadifferentcephcluster' % url 191 LOG.debug(reason) 192 return False 193 194 #Addwilliam,image_meta.disk_format!='raw' 195 #so... 196 if image_meta[ 'disk_format' ]! = 'raw' : 197 reason = ( "rbdimageclonerequiresimageformattobe" 198 "'raw'butimage{0}is'{1}'" ). format ( 199 url,image_meta.disk_format) 200 LOG.debug(reason) 201 return False 4, 完成操作 1 2 3 4 5 2015 - 12 - 13 13 : 18 : 36.659 19827 INFOnova.virt.libvirt.firewall[req - 7d3b097b - 701d - 4352 - a8cc - 87bc6fb3f9f1 e198d9f41e784308858a52b174fc822aa7fc63796b934498ba9b6d1a918cb2c7 - - - ][instance: 36025fe9 - 5abe - 44de - bdb8 - 71983a3645f2 ]Calledsetup_basic_filtering in nwfilter 2015 - 12 - 13 13 : 18 : 36.660 19827 INFOnova.virt.libvirt.firewall[req - 7d3b097b - 701d - 4352 - a8cc - 87bc6fb3f9f1 e198d9f41e784308858a52b174fc822aa7fc63796b934498ba9b6d1a918cb2c7 - - - ][instance: 36025fe9 - 5abe - 44de - bdb8 - 71983a3645f2 ]Ensuringstaticfilters 2015 - 12 - 13 13 : 18 : 37.418 19827 INFOnova.compute.manager[ - ][instance: 36025fe9 - 5abe - 44de - bdb8 - 71983a3645f2 ]VMStarted(LifecycleEvent) 2015 - 12 - 13 13 : 18 : 37.441 19827 INFOnova.virt.libvirt.driver[ - ][instance: 36025fe9 - 5abe - 44de - bdb8 - 71983a3645f2 ]Instancespawnedsuccessfully. 2015 - 12 - 13 13 : 18 : 37.525 19827 INFOnova.compute.manager[req - a92e6077 - 014c - 421c - 9fcc - 9d21e6f7d420 - - - - - ][instance: 36025fe9 - 5abe - 44de - bdb8 - 71983a3645f2 ]Duringsync_power_statetheinstancehasapendingtask(spawning).Skip. 本文转自 swq499809608 51CTO博客,原文链接:http://blog.51cto.com/swq499809608/1722459

优秀的个人博客,低调大师

Google通知:Android通知中心风格必须统一

Android是一个非常开放自由的系统,厂商和开发者几乎可以随心所欲地定制,不过相信大家也注意到了,Google这几年正在逐步收紧对于Android生态的控制权,越来越多的地方都有强制性要求,不能背离官方规范。最近,Google悄然提出了对于Android通知中心的强制要求,无论查看、更新、移除还是回复通知,都必须按照Google规定的方式来做,不得自行其是。 Android 7.0 Nougat就加入了对于通知的直接回复、整合,而第三方ROM必须照样画葫芦。这意味着无论购买哪家的Android手机,通知中心都会是一个模样。 这一规定将从Android 7.1开始执行。如果厂商违反规定,将无法访问Google Play和其他服务。 本文转自d1net(转载)

优秀的个人博客,低调大师

Google 通知:Android 通知中心风格必须统一

Android 是一个非常开放自由的系统,厂商和开发者几乎可以随心所欲地定制,不过相信大家也注意到了,Google 这几年正在逐步收紧对于 Android 生态的控制权,越来越多的地方都有强制性要求,不能背离官方规范。最近,Google 悄然提出了对于 Android 通知中心的强制要求,无论查看、更新、移除还是回复通知,都必须按照 Google 规定的方式来做,不得自行其是。 Android 7.0 Nougat 就加入了对于通知的直接回复、整合,而第三方 ROM 必须照样画葫芦。这意味着无论购买哪家的 Android 手机,通知中心都会是一个模样。 这一规定将从 Android 7.1 开始执行。如果厂商违反规定,将无法访问 Google Play 和其他服务。 文章转载自 开源中国社区 [http://www.oschina.net]

优秀的个人博客,低调大师

PyODPS DataFrame:统一的数据查询语言

前几天,PyODPS发布了0.7版本,这篇文章给大家介绍下PyODPS新版本带来的重要特性。 之前也有若干篇文章介绍过了,我们PyODPS DataFrame是延迟执行的,在调用立即执行的方法,比如execute、persist等之前,都只是构建了表达式。而真正的执行根据具体的输入数据,来决定执行的后端。 比如,我们可以根据输入是pandas DataFrame(本地数据),还是MaxCompute Table(MaxCompute数据)来决定是在本地执行,还是在MaxComput上执行。 In [1]: import pandas as pd In [2]: pd_df = pd.DataFrame({'a': range(3)}) In [3]: from odps.df import DataFrame In [4]: df

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册