<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[lbwlh的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/lbwlh</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lbwlh]]></copyright><item><title><![CDATA[V2V/P2V后将ide磁盘转化为virtio的方案]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/51153437</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/51153437</guid><author>lbwlh</author><pubDate>Thu, 14 Apr 2016 17:30:48 +0800</pubDate><description><![CDATA[V2V/P2V后将ide转化为virttio的方案


场景介绍
从VMware转化为kvm的VM，磁盘格式只能是通用的ide，而在kvm上想要获得较高的性能或想上传至openstack环境就要使用virtio的驱动。本文分别介绍Linux和windows系列磁盘转化方法。


Windows系列
1.下载virtio-win的iso驱动，并挂载至kvm的虚拟机上；
2.在kvm]]></description><category></category></item><item><title><![CDATA[通过clonezilla将windows2008虚拟机从vCenter迁移至kvm]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/51073498</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/51073498</guid><author>lbwlh</author><pubDate>Wed, 06 Apr 2016 14:44:48 +0800</pubDate><description><![CDATA[本文主要讲述有多块硬盘的windows2008虚机迁移，通过clonezilla硬盘对拷的方式进行V2V的迁移。
环境说明：
在vCenter中有一台含两块硬盘的windows2008虚拟机
在kvm环境中启动一台同样有两块硬盘的虚拟机


步骤：
1. 源虚拟机通过clonezilla的iso启动，进入clonezilla备份程序，拷贝模式选择‘device-device work]]></description><category></category></item><item><title><![CDATA[使用clonezilla将RHEL6.7物理机转化为kvm虚拟机]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/51014269</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/51014269</guid><author>lbwlh</author><pubDate>Wed, 30 Mar 2016 16:02:49 +0800</pubDate><description><![CDATA[使用clonezilla将RHEL6.7物理机转化为kvm虚拟机
clonezilla介绍


Clonezilla 是一个开源的与 Norton Ghost 类似的复制和克隆解决方案，可以使用它克隆特定的分区或整个磁盘。它有两个版本：Clonezilla SE（服务器版本）和 Clonezilla Live。Clonezilla SE 最适合跨越网络同步备份和恢复多个服务器。Clonez]]></description><category></category></item><item><title><![CDATA[CentOS7使用virt-p2v将RHEL6.7的物理机转化为kvm虚拟机]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/51003595</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/51003595</guid><author>lbwlh</author><pubDate>Tue, 29 Mar 2016 11:04:09 +0800</pubDate><description><![CDATA[CentOS7使用virt-p2v将RHEL6.7的物理机转化为kvm虚拟机
准备环境：
待转的物理机P：RHEL6.7
安装有virt-v2v工具的conversion server：CentOS7.2+virt-v2v-1.28.1-1.55.el7.centos.x86_64
下载/制作p2v iso U盘启动：http://oirase.annexia.org/virt-p2v/v]]></description><category></category></item><item><title><![CDATA[Openstack-Ceilometer-Alarm运行机制]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50974417</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50974417</guid><author>lbwlh</author><pubDate>Thu, 24 Mar 2016 19:34:33 +0800</pubDate><description><![CDATA[1 校验
对alarm列表进行定时监测，如果发现与设置的limit值不满足，则发出警报
监控服务分为三种：默认服务，单进程校验服务和分布式校验服务。根据配置来决定，默认配置：default
Alarm状态




名称


数据库代码


对应数据库操作字段




UNKNOWN


insufficient data


insufficien]]></description><category></category></item><item><title><![CDATA[ceilometer-alarm-notifier/evaluator服务的初始化和启动]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50974377</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50974377</guid><author>lbwlh</author><pubDate>Thu, 24 Mar 2016 19:30:16 +0800</pubDate><description><![CDATA[ceilometer-alarm-notifier/evaluator服务的初始化和启动
查看setup.cfg：

console_scripts =
    ceilometer-api = ceilometer.cmd.api:main
    ceilometer-agent-central = ceilometer.cmd.polling:main_central
    c]]></description><category></category></item><item><title><![CDATA[OpenStack监控组件---Ceilometer alarm属性分析]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50974359</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50974359</guid><author>lbwlh</author><pubDate>Thu, 24 Mar 2016 19:26:42 +0800</pubDate><description><![CDATA[OpenStack监控组件---Ceilometer alarm属性代码分析
Ceilometer是OpenStack中的一个子项目，它像一个漏斗一样，能把OpenStack内部发生
 的几乎所有的事件都收集起来，然后为计费和监控以及其它服务提供数据支撑。
Ceilometer监控通过在计算节点部署Compute服务，轮询其计算节点上的instance，获取各自的CPU、网络、磁盘等监控信息]]></description><category></category></item><item><title><![CDATA[迁移ESX虚拟机到KVM]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50973023</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50973023</guid><author>lbwlh</author><pubDate>Thu, 24 Mar 2016 16:56:03 +0800</pubDate><description><![CDATA[迁移ESX虚拟机到KVM

本文详细介绍了如何在CentOS上使用virt-v2v
开源工具将在VMware ESX软件上的Linux
虚拟机迁移到基于KVM 
的虚拟机。

virt-v2v 迁移 VMware/Xen/KVM虚拟机示意图如下所示：





在迁移前的环境设置如下：我们采用的KVM
主机安装最新的CentOS6u5操作系统。这样，最基本的支持KVM]]></description><category></category></item><item><title><![CDATA[build a devstack in a VM]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50914160</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50914160</guid><author>lbwlh</author><pubDate>Thu, 17 Mar 2016 15:27:57 +0800</pubDate><description><![CDATA[本文旨在在单网卡eth0的ubuntu 14.04的VM里搭建devstack，VM的网卡使用NAT的方式


安装一个ubuntu server版的os，过程中选中ssh server和dns server以及virtual host组件安装进操作系统，装好后配置允许root ssh登陆，并安装git组件
apt-get install git

配置本地源(使用root用户)
(]]></description><category></category></item><item><title><![CDATA[libvirt-sanlock in ubuntu配置使用]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/50896113</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/50896113</guid><author>lbwlh</author><pubDate>Tue, 15 Mar 2016 14:23:10 +0800</pubDate><description><![CDATA[libvirt-sanlock in ubuntu配置使用
I. 编译libvirt包
libvirt-sanlock在ubuntu没有可以直接安装的包，sanlock功能无法直接使用，需要另外重新编译libvirt包，将sanlock功能编译进去，步骤如下：
注意：由于重新编译libvirt包需要拉很多生产环境server下不需要的包和组件，因此请在虚拟机或者另外一台实体机中完成编译，整个]]></description><category></category></item><item><title><![CDATA[Objective-C JSON字符串解析]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/47026397</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/47026397</guid><author>lbwlh</author><pubDate>Thu, 23 Jul 2015 18:36:06 +0800</pubDate><description><![CDATA[JSON串解析方法]]></description><category></category></item><item><title><![CDATA[object-c 全屏播放时动态添加slider]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/46681249</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/46681249</guid><author>lbwlh</author><pubDate>Mon, 29 Jun 2015 13:31:38 +0800</pubDate><description><![CDATA[视频播放器全屏功能，以及全屏播放时动态添加slider进度显示，并支持快进、快退]]></description><category></category></item><item><title><![CDATA[Object-C NSTimer定时器使用]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/46650669</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/46650669</guid><author>lbwlh</author><pubDate>Fri, 26 Jun 2015 15:38:57 +0800</pubDate><description><![CDATA[在编程过程中，总有需要使用到定时器的时候，Object-C中有专门的NSTimer]]></description><category></category></item><item><title><![CDATA[随笔记录]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/45724497</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/45724497</guid><author>lbwlh</author><pubDate>Thu, 14 May 2015 18:20:04 +0800</pubDate><description><![CDATA[人为什么总不能持之以恒呢？


这十足是一个浮躁的社会，因而会出现很多浮躁的人，而作为这个社会普通的不能再普通的一员，我本人是一个很容易受环境影响的人，总不能静下心来干自己该干的事，是一个彻头彻尾的浮躁的人。然而任何取得一点成就的人，都不会是浮躁的人，都必须在自己所处的行业沉淀下来，才能取得一定的成绩。早就意识到这一点了，如果性格是那种随遇而安得过且过类型也就罢了，可是自己又不是一个甘于平庸]]></description><category></category></item><item><title><![CDATA[object-c ARC的使用]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40838157</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40838157</guid><author>lbwlh</author><pubDate>Wed, 05 Nov 2014 23:46:19 +0800</pubDate><description><![CDATA[ARC的判断准则：只要没有强指针指向对象，就会释放对象
 
 1.ARC的特点：
 1> 不允许调用release、retain、retainCount
 2> 允许重写dealloc，但是不允许调用[super dealloc]
 3> @property的参数
  * strong：成员变量是强指针（适用于OC对象类型）
  * weak：成员变量是弱指针（适用于OC对象类型）]]></description><category></category></item><item><title><![CDATA[object-c @class的用法]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40719223</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40719223</guid><author>lbwlh</author><pubDate>Sun, 02 Nov 2014 23:34:53 +0800</pubDate><description><![CDATA[1.@class的作用：仅仅告诉编译器，某个名称是一个类
 @class Person; // 仅仅告诉编译器，Person是一个类
 
 2.开发中引用一个类的规范
 1> 在.h文件中用@class来声明类（与#import的区别：性能高，不重复赋值代码）
 2> 在.m文件中用#import来包含类的所有东西
 
 3.两端循环引用解决方案
 1> 一端用retain
 2]]></description><category></category></item><item><title><![CDATA[object-c @autorelease的用法]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40718995</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40718995</guid><author>lbwlh</author><pubDate>Sun, 02 Nov 2014 23:31:45 +0800</pubDate><description><![CDATA[1.autorelease的基本用法
 1> 会将对象放到一个自动释放池中
 2> 当自动释放池被销毁时，会对池子里面的所有对象做一次release操作
 3> 会返回对象本身
 4> 调用完autorelease方法后，对象的计数器不变
 
 2.autorelease的好处
 1> 不用再关心对象释放的时间
 2> 不用再关心什么时候调用release
 
 3.autor]]></description><category></category></item><item><title><![CDATA[object-c模型设计练习]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40693675</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40693675</guid><author>lbwlh</author><pubDate>Sun, 02 Nov 2014 00:41:54 +0800</pubDate><description><![CDATA[设计模型：
微博用户和微博]]></description><category></category></item><item><title><![CDATA[object-c用@property管理内存]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40689709</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40689709</guid><author>lbwlh</author><pubDate>Sat, 01 Nov 2014 23:43:47 +0800</pubDate><description><![CDATA[/*
 1.内存管理相关的参数
 * retain ：release旧指，retain新值（适用于OS对象类型）
 * assign ：直接赋值（默认，适用于非OS对象类型）
 * copy   ：release旧指，copy新值
 
 2.是否要生成set方法
 *readwrite ：同时生成setter和getter的声明、实现（默认）
 *readonly  ：只会生成ge]]></description><category></category></item><item><title><![CDATA[object-c set方法的内存管理]]></title><link>https://blog.youkuaiyun.com/lbwlh/article/details/40666241</link><guid>https://blog.youkuaiyun.com/lbwlh/article/details/40666241</guid><author>lbwlh</author><pubDate>Sat, 01 Nov 2014 00:21:32 +0800</pubDate><description><![CDATA[内存管理代码规范：
 1.只要调用了alloc，必须有release（autorelease）
 
 2.set方法的代码规范：
 1>基本数据类型：直接赋值
 - (void)setAge:(int)age
 {
    _age = age;
 }
 
 2>OC对象类型
 - (void)setCar:(Car *)car
 {
    // 1.先判断是不是新传进]]></description><category></category></item></channel></rss>