<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Martin&#039;s Blog &#187; BMC</title>
	<atom:link href="http://martinliu.cn/tag/bmc/feed" rel="self" type="application/rss+xml" />
	<link>http://martinliu.cn</link>
	<description>如何以服务的视角管理IT？</description>
	<lastBuildDate>Sun, 13 May 2012 16:36:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>如何导入CI和关系到Atrium CMDB</title>
		<link>http://martinliu.cn/2011/09/%e5%a6%82%e4%bd%95%e5%af%bc%e5%85%a5ci%e5%92%8c%e5%85%b3%e7%b3%bb%e5%88%b0atrium-cmdb.html</link>
		<comments>http://martinliu.cn/2011/09/%e5%a6%82%e4%bd%95%e5%af%bc%e5%85%a5ci%e5%92%8c%e5%85%b3%e7%b3%bb%e5%88%b0atrium-cmdb.html#comments</comments>
		<pubDate>Wed, 14 Sep 2011 14:59:34 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[CMS/CMDB]]></category>
		<category><![CDATA[Atrium]]></category>
		<category><![CDATA[BMC]]></category>
		<category><![CDATA[cmdb]]></category>
		<category><![CDATA[remedy]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=51459</guid>
		<description><![CDATA[本帖主要是上传了一些不舍得删除的flash，这些东西是关于如何向cmdb中导入CI和关系的录像。有此特殊需要的可以收藏备用。 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_00-模型数据准备_140537950"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/00-模型数据准备.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/00-模型数据准备.swf"
			name="fm_00-模型数据准备_140537950"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> 00-模型数据准备 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_01-导入CI数据_1478277947"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/01-导入CI数据.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/01-导入CI数据.swf"
			name="fm_01-导入CI数据_1478277947"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> 01 导入CI数据 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_02-导出CI的名称和ID_1764431083"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/02-导出CI的名称和ID.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/02-导出CI的名称和ID.swf"
			name="fm_02-导出CI的名称和ID_1764431083"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> 02-导出CI的名称和ID 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_03-准备关系数据_1385220108"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/03-准备关系数据.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/03-准备关系数据.swf"
			name="fm_03-准备关系数据_1385220108"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> 03-准备关系数据 
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_04-导入影响关系_122397040"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/04-导入影响关系.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/04-导入影响关系.swf"
			name="fm_04-导入影响关系_122397040"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		 
	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object> 04-导入影响关系 <br />
00-模型数据准备<br />

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_01-导入CI数据_143944982"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/01-导入CI数据.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/01-导入CI数据.swf"
			name="fm_01-导入CI数据_143944982"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		<br />

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object><br />
01 导入CI数据<br />

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_02-导出CI的名称和ID_1195281217"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/02-导出CI的名称和ID.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/02-导出CI的名称和ID.swf"
			name="fm_02-导出CI的名称和ID_1195281217"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		<br />

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object><br />
02-导出CI的名称和ID<br />

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_03-准备关系数据_625439554"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/03-准备关系数据.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/03-准备关系数据.swf"
			name="fm_03-准备关系数据_625439554"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		<br />

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object><br />
03-准备关系数据<br />

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_04-导入影响关系_1329971204"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/04-导入影响关系.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/04-导入影响关系.swf"
			name="fm_04-导入影响关系_1329971204"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		<br />

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object><br />
04-导入影响关系<br />

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
			id="fm_05-查看和验证模型_1167317084"
			class="flashmovie"
			width="500"
			height="400">
	<param name="movie" value="http://martinliu.cn/wp-content/uploads/2011/09/05-查看和验证模型.swf" />
	<param name="loop" value="true" />
	<!--[if !IE]>-->
	<object	type="application/x-shockwave-flash"
			data="http://martinliu.cn/wp-content/uploads/2011/09/05-查看和验证模型.swf"
			name="fm_05-查看和验证模型_1167317084"
			width="500"
			height="400">
		<param name="loop" value="true" />
	<!--<![endif]-->
		<br />

	<!--[if !IE]>-->
	</object>
	<!--<![endif]-->
</object><br />
05-查看和验证模型<br />
<a href="http://martinliu.cn/downloads/CMDB-service-model-Demo.zip"><img src="http://martinliu.cn/dl/download.gif" alt="导入CMDB模型实例" /></a>导入CMDB模型实例 --下载：78 次<br />
<p class="success ">以上所有flash文件打包下载，现在你该满意了吧？P）</p></p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2010/01/cmdb-value-points.html' rel='bookmark' title='CMDB Value Points 价值点'>CMDB Value Points 价值点</a></li>
<li><a href='http://martinliu.cn/2009/03/stop-to-build-cmdb-for-your-it.html' rel='bookmark' title='Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？'>Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/09/%e5%a6%82%e4%bd%95%e5%af%bc%e5%85%a5ci%e5%92%8c%e5%85%b3%e7%b3%bb%e5%88%b0atrium-cmdb.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>如何读取Remedy中的数据</title>
		<link>http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html</link>
		<comments>http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html#comments</comments>
		<pubDate>Wed, 29 Jun 2011 14:09:22 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[CMS/CMDB]]></category>
		<category><![CDATA[ARS]]></category>
		<category><![CDATA[arschema]]></category>
		<category><![CDATA[BMC]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[remedy]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=51303</guid>
		<description><![CDATA[Remedy系统几乎是一个绿色软件，它的几乎所有业务数据、配置数据和工作流都是存储在数据库中，也就是说：只要能够保留一份完整的数据库备份，即可高枕无忧，需要的时候就可以把系统还原出来。业务数据在Remedy中大多存储在regular form中。多数的业务数据都是通过Join form进行访问和存取。在Remedy中的各种form构成了Remedy系统的所有数据结构和界面，有些类型的form是只做界面而创建的。 如何从数据库层面直接读取Remedy ARS系统中的业务数据？首先你需要在Remedy User中查询和确认你需要读取的form的名称，之后在用Remedy develop studio中确认你需要读取字段在数据库中的database ID，然后使用SQLPLUS 查询出form的数据库视图名称，最后编写一条sqlplus语句验证查询的结果。确认了表和字段在数据库中的ID之后，你就可以使用任何数据库客户端直接绕过Remedy应用系统来读取业务数据了。这样做比API的调用开发难度要小些。 下面是一个例子：用Remedy默认的用户名密码登录，查询BMC.CORE:BMC_ComputerSystem form在数据库中视图的名称为T517，在BMC Remedy Developer Studio中查询字段的ID（点击查看大图）在此视图中查询CI名称里含有test-fc关键字的CI，并返回所有CI的name, inc id 和TotalPhysicMemory属性值。 [oracle@ars ~]$ sqlplus ARAdmin/AR#Admin#@remedy SQL*Plus: Release 11.2.0.1.0 Production on Wed Jun 29 21:51:39 2011 Copyright (c) 1982, 2009, Oracle. All rights reserved. Connected to: Oracle Database 11g Release 11.2.0.1.0 &#8211; 64bit Production SQL> SQL> select schemaid from<p><a href="http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/05/how-to-deploy-mid-tier-to-tomcat-7.html' rel='bookmark' title='How to deploy mid-tier to tomcat 7'>How to deploy mid-tier to tomcat 7</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Remedy系统几乎是一个绿色软件，它的几乎所有业务数据、配置数据和工作流都是存储在数据库中，也就是说：只要能够保留一份完整的数据库备份，即可高枕无忧，需要的时候就可以把系统还原出来。业务数据在Remedy中大多存储在regular form中。多数的业务数据都是通过Join form进行访问和存取。在Remedy中的各种form构成了Remedy系统的所有数据结构和界面，有些类型的form是只做界面而创建的。</p>
<p>如何从数据库层面直接读取Remedy ARS系统中的业务数据？首先你需要在Remedy User中查询和确认你需要读取的form的名称，之后在用Remedy develop studio中确认你需要读取字段在数据库中的database ID，然后使用SQLPLUS 查询出form的数据库视图名称，最后编写一条sqlplus语句验证查询的结果。确认了表和字段在数据库中的ID之后，你就可以使用任何数据库客户端直接绕过Remedy应用系统来读取业务数据了。这样做比API的调用开发难度要小些。</p>
<p>下面是一个例子：用Remedy默认的用户名密码登录，查询BMC.CORE:BMC_ComputerSystem form在数据库中视图的名称为T517，在BMC Remedy Developer Studio中查询字段的ID<a href="http://martinliu.cn/wp-content/uploads/2011/06/ars-forms.jpg" target='_blank'>（点击查看大图）</a>在此视图中查询CI名称里含有test-fc关键字的CI，并返回所有CI的name, inc id 和TotalPhysicMemory属性值。</p>
<p>[oracle@ars ~]$ sqlplus ARAdmin/AR#Admin#@remedy<br />
SQL*Plus: Release 11.2.0.1.0 Production on Wed Jun 29 21:51:39 2011<br />
Copyright (c) 1982, 2009, Oracle.  All rights reserved.<br />
Connected to:<br />
Oracle Database 11g Release 11.2.0.1.0 &#8211; 64bit Production</p>
<pre>
SQL>
SQL> select schemaid from arschema where name='BMC.CORE:BMC_ComputerSystem';
  SCHEMAID
----------
       517
SQL>
SQL> desc T517;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 C1                                                 VARCHAR2(31)
 C2                                                 VARCHAR2(254)
 C3                                        NOT NULL NUMBER(15)
 C4                                                 VARCHAR2(254)
 C5                                        NOT NULL VARCHAR2(254)
 C6                                        NOT NULL NUMBER(15)
 C7                                        NOT NULL NUMBER(15)
 C8                                        NOT NULL VARCHAR2(254)
 C112                                               VARCHAR2(255)
 C179                                               VARCHAR2(38)
 C60513                                             VARCHAR2(255)
 C200000001                                         VARCHAR2(254)
 C200000003                                         VARCHAR2(60)
 C200000004                                         VARCHAR2(60)
 C200000005                                         VARCHAR2(60)
 C200000020                                         VARCHAR2(254)
 C200000021                                         NUMBER(28)
 C200000022                                         NUMBER(28)
 C200000023                                         VARCHAR2(30)
 C200000025                                         VARCHAR2(254)
 C200000026                                         VARCHAR2(254)
 C200000028                                         VARCHAR2(254)
 C200000029                                         VARCHAR2(254)
 C200000032                                         VARCHAR2(60)
 C200000033                                         VARCHAR2(30)
 C200000034                                         VARCHAR2(30)
 C200000035                                         VARCHAR2(30)
 C200003000                                         CLOB
 C240000007                                         VARCHAR2(254)
 C240000008                                         CLOB
 C240001002                                         VARCHAR2(254)
 C240001003                                         VARCHAR2(254)
 C240001005                                         VARCHAR2(254)
 C260100002                                         NUMBER(15)
 C260140117                                         VARCHAR2(254)
 C260400001                                         NUMBER(28)
 C260400002                                         NUMBER(28)
 C300927600                                         NUMBER(15)
 C301002800                                         VARCHAR2(254)
 C301002900                                         VARCHAR2(254)
 C301003400                                         VARCHAR2(255)
 C301016000                                         VARCHAR2(254)
 C301016100                                         CLOB
 C301016200                                         NUMBER(15)
 C301016700                                         NUMBER(15)
 C301016800                                         NUMBER(15)
 C301016900                                         NUMBER(15)
 C301017000                                         NUMBER(15)
 C301017100                                         NUMBER(15)
 C301017200                                         NUMBER(28)
 C301017300                                         NUMBER(28)
 C301019500                                         NUMBER(15)
 C301019600                                         VARCHAR2(254)
 C301019800                                         VARCHAR2(254)
 C301019900                                         VARCHAR2(30)
 C301089100                                         VARCHAR2(80)
 C301118000                                         NUMBER(15)
 C301172600                                         NUMBER(15)
 C301182000                                         NUMBER(15)
 C301186800                                         VARCHAR2(254)
 C400079600                                         VARCHAR2(38)
 C400124500                                         NUMBER(15)
 C400127400                                         VARCHAR2(127)
 C400129100                                         NUMBER(15)
 C400129200                                         VARCHAR2(38)
 C400131200                                         VARCHAR2(255)
 C400131300                                         VARCHAR2(255)
 C490001289                                         VARCHAR2(127)
 C530010100                                         VARCHAR2(254)
 C530010200                                         VARCHAR2(254)
 C530010600                                         NUMBER(15)
 C530014300                                         NUMBER(15)
 C530014400                                         NUMBER(15)
 C530014500                                         NUMBER(15)
 C530019500                                         CLOB
 C530031600                                         NUMBER(15)
 C530032500                                         NUMBER(15)
 C530034500                                         VARCHAR2(255)
 C530035200                                         VARCHAR2(255)
 C530041601                                         NUMBER(15)
 C530043901                                         VARCHAR2(255)
 C530054200                                         NUMBER(15)
 C530058400                                         VARCHAR2(254)
 C530058500                                         VARCHAR2(254)
 C530059800                                         VARCHAR2(255)
 C530060100                                         NUMBER(15)
 C530060200                                         VARCHAR2(255)
 C530060300                                         NUMBER(15)
 C530062400                                         VARCHAR2(254)
 C530067430                                         NUMBER(15)
 C530067920                                         NUMBER(15)
 C530067930                                         VARCHAR2(127)
 E0                                        NOT NULL VARCHAR2(15)
 E1                                        NOT NULL VARCHAR2(15)

SQL>
SQL>  select C200000020,C179,C200000022 from T517 where  C200000020 like 'test-fc%';
C200000020
--------------------------------------------------------------------------------
C179                                   C200000022
-------------------------------------- ----------
test-fc-2.testlab.bigcorp.com
OI-48A6276C70E411E0A984000C29455AB9           448

test-fc-5.testlab.bigcorp.com
OI-4CCD50C270E411E0AA53000C29455AB9           320

test-fc-4.testlab.bigcorp.com
OI-4D1B433670E411E0AA57000C29455AB9           160

C200000020
--------------------------------------------------------------------------------
C179                                   C200000022
-------------------------------------- ----------
test-fc-6.testlab.bigcorp.com
OI-4E9E37C270E411E0AA69000C29455AB9           256
SQL>
</pre>
<p class="tip ">鸣谢 <a href="http://weibo.com/xuj0">炮灰向钱冲</a>和我对以上技术细节的讨论。</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/05/how-to-deploy-mid-tier-to-tomcat-7.html' rel='bookmark' title='How to deploy mid-tier to tomcat 7'>How to deploy mid-tier to tomcat 7</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>ADDM 8.2 ssh key 生成和部署</title>
		<link>http://martinliu.cn/2011/06/addm-8-2-ssh-key-deploy.html</link>
		<comments>http://martinliu.cn/2011/06/addm-8-2-ssh-key-deploy.html#comments</comments>
		<pubDate>Thu, 16 Jun 2011 17:16:14 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[BMC]]></category>
		<category><![CDATA[ADDM]]></category>
		<category><![CDATA[cmdb]]></category>
		<category><![CDATA[keploy]]></category>
		<category><![CDATA[key]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=51137</guid>
		<description><![CDATA[生产密钥 用tideway用户登录ADDM服务器，运行下面的命令 [tideway@localhost .ssh]$ ls [tideway@localhost .ssh]$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/usr/tideway/.ssh/id_rsa): “敲回车” Enter passphrase (empty for no passphrase): “敲回车” Enter same passphrase again: “敲回车” Your identification has been saved in /usr/tideway/.ssh/id_rsa. Your public key has been saved in /usr/tideway/.ssh/id_rsa.pub. The key fingerprint<p><a href="http://martinliu.cn/2011/06/addm-8-2-ssh-key-deploy.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/07/openssh-5-2-aix5-3-bug.html' rel='bookmark' title='openssh 5.2 Aix5.3 bug'>openssh 5.2 Aix5.3 bug</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2009/10/what-does-cmdb-store.html' rel='bookmark' title='CMDB中存什么？'>CMDB中存什么？</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<h2>生产密钥</h2>
<p>用tideway用户登录ADDM服务器，运行下面的命令</p>
<pre>
[tideway@localhost .ssh]$ ls
[tideway@localhost .ssh]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/usr/tideway/.ssh/id_rsa):  “敲回车”
Enter passphrase (empty for no passphrase):  “敲回车”
Enter same passphrase again:  “敲回车”
Your identification has been saved in /usr/tideway/.ssh/id_rsa.
Your public key has been saved in /usr/tideway/.ssh/id_rsa.pub.
The key fingerprint is:
27:20:55:fc:f9:9a:41:35:11:ef:6d:b7:6c:4e:78:00 tideway@localhost.localdomain
[tideway@localhost .ssh]$ ls
id_rsa  id_rsa.pub
[tideway@localhost .ssh]$
</pre>
<h2>下载和安装key文件部署工具</h2>
<p>http://code.google.com/p/keploy/downloads/list</p>
<p>下载 keploy-0.5.tgz<br />
上传到ADDM服务器的/usr/tideway/.ssh目录中</p>
<pre>
[tideway@localhost .ssh]$ ls
id_rsa  id_rsa.pub  keploy-0.5.tgz
[tideway@localhost .ssh]$ tar zxvf keploy-0.5.tgz
keploy-0.5/
keploy-0.5/keploy
keploy-0.5/LICENSE
keploy-0.5/README
keploy-0.5/INSTALL
keploy-0.5/CHANGELOG
[tideway@localhost .ssh]$ ls
id_rsa  id_rsa.pub  keploy-0.5  keploy-0.5.tgz
[tideway@localhost .ssh]$ cd keploy-0.5
[tideway@localhost keploy-0.5]$ ls
CHANGELOG  INSTALL  keploy  LICENSE  README
[tideway@localhost keploy-0.5]$ ./keploy -v

NOTICE: You may be prompted for you password,
NOTICE: this is directly from the ssh client, not keploy

Preparing to deploy ssh key...
ERROR: No targets defined.
[tideway@localhost keploy-0.5]$ ./keploy -h
Usage: keploy [options] [hosts]

Options:
  -i ID_FILE            specifies identity file
  -l USERID, --login=USERID
                        define userid for remote connections
  -f TARGET_FILE, --file=TARGET_FILE
                        read list of targets from file
  -k, --use-known       read list of targets from known_hosts files
  -r, --remove          remove primary identity from remote(s)
  -c OLD_ID_FILE, --change=OLD_ID_FILE
                        replace old identity with new one on remote(s)
  -A                    enable/disable agent forwarding on remote
  -v                    give verbose output
  -q, --quiet           quiet the output
  --version             show program's version number and exit
  -h, --help            show this help message and exit
[tideway@localhost keploy-0.5]$
</pre>
<p>在keploy-0.5生成一个文件hostlist，里面每一行放一台机器的IP，回头让工具自动读取该文件</p>
<h2>Linux被采集帐号准备</h2>
<p>建议直接把ADDM采集机的key文件部署到root用户上，如果用户觉得这个做法不安全的话，我们可以建立一个不普通用户，把特权命令用sudo处理一下，下面是具体的做法</p>
<h3>运行ssh的证书认证</h3>
<p>用root登录被采集机，修改/etc/ssh/sshd_config文件，将如下参数的注释符号（#）去掉，以启用这些参数：<br />
RSAAuthentication          yes<br />
PubkeyAuthentication     yes<br />
AuthorizedKeysFile         .ssh/authorized_keys<br />
重启sshd服务<br />
#/etc/init.d/sshd restart</p>
<h3>配置sudo</h3>
<p>Linux平台对采集账户需要配置sudo。以root用户登录被管服务器，修改/etc/sudoers文件，在文件末尾追加一行：<br />
tideway  ALL=(root) NOPASSWD:/usr/sbin/dmidecode,/usr/sbin/hwinfo, /usr/sbin/hbanyware/hbacmd,/usr/sbin/lsof,/sbin/ethtool,/sbin/mii-tool</p>
<h3>增加采集帐号tideway</h3>
<p>操作步骤如下（以root用户登录服务器）：<br />
[root@ars home]# useradd tideway<br />
[root@ars home]# passwd tideway<br />
Changing password for user tideway.<br />
New UNIX password: “使用tideway做密码，采集成功后可以修改掉”<br />
BAD PASSWORD: it is based on a dictionary word<br />
Retype new UNIX password: “使用tideway做密码，采集成功后可以修改掉”<br />
passwd: all authentication tokens updated successfully.<br />
[root@ars home]#</p>
<h2>部署ADDM ssh 密钥到被采集机</h2>
<h3>部署</h3>
<p>在采集机部署前，查看/home/tideway 目录</p>
<pre>
[root@ars home]# cd tideway/
[root@ars tideway]# pwd
/home/tideway
[root@ars tideway]# ls -la
total 36
drwx------ 3 tideway tideway 4096 Jun 17 00:55 .
drwxr-xr-x 4 root    root    4096 Jun 17 00:55 ..
-rw-r--r-- 1 tideway tideway   33 Jun 17 00:55 .bash_logout
-rw-r--r-- 1 tideway tideway  176 Jun 17 00:55 .bash_profile
-rw-r--r-- 1 tideway tideway  124 Jun 17 00:55 .bashrc
-rw-r--r-- 1 tideway tideway  515 Jun 17 00:55 .emacs
drwxr-xr-x 4 tideway tideway 4096 Jun 17 00:55 .mozilla
-rw-r--r-- 1 tideway tideway  658 Jun 17 00:55 .zshrc
[root@ars tideway]#
</pre>
<p>注意这里没有.ssh目录<br />
开始使用我们下载的工具部署，登录到ADDM采集机上</p>
<pre>
[tideway@localhost keploy-0.5]$ vi hostlist
[tideway@localhost keploy-0.5]$ cat hostlist
192.168.189.154
[tideway@localhost keploy-0.5]$ ./keploy -f hostlist

NOTICE: You may be prompted for you password,
NOTICE: this is directly from the ssh client, not keploy

Preparing to deploy ssh key...
Using user-defined host list from file: hostlist
./keploy:164: DeprecationWarning: os.popen3 is deprecated.  Use the subprocess module.
  si, so, se = os.popen3(execute)
        Found host(s):
                192.168.189.154
        Found identity:
                /usr/tideway/.ssh/id_rsa.pub
        Working on host: 192.168.189.154
The authenticity of host '192.168.189.154 (192.168.189.154)' can't be established.
RSA key fingerprint is de:4e:f0:c8:9b:86:ee:25:af:a9:1c:19:8f:20:90:ad.
Are you sure you want to continue connecting (yes/no)? yes
tideway@192.168.189.154's password:  "输入目标机上tideway用户的密码，我用的是tideway"
                Public Identity Key: deployed
[tideway@localhost keploy-0.5]$
</pre>
<p>可以到被采集机的/home/tideway/.ssh下面看看传过去的正式文件，这种方式极大的避免了，手工创建.ssh目录，设置它和key文件权限的工作量</p>
<h3>验证</h3>
<p>在采集机上，使用tideway用户登录被采集服务器。</p>
<pre>
[tideway@localhost keploy-0.5]$ ssh 192.168.189.154
Last login: Fri Jun 17 01:08:21 2011 from 192.168.189.147
[tideway@ars ~]$
</pre>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/07/openssh-5-2-aix5-3-bug.html' rel='bookmark' title='openssh 5.2 Aix5.3 bug'>openssh 5.2 Aix5.3 bug</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2009/10/what-does-cmdb-store.html' rel='bookmark' title='CMDB中存什么？'>CMDB中存什么？</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/06/addm-8-2-ssh-key-deploy.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Remedy ARS 7.6.03 overlay</title>
		<link>http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html</link>
		<comments>http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html#comments</comments>
		<pubDate>Fri, 27 May 2011 16:50:16 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[BMC]]></category>
		<category><![CDATA[7.6.04]]></category>
		<category><![CDATA[ARS]]></category>
		<category><![CDATA[ITIL]]></category>
		<category><![CDATA[ITSM]]></category>
		<category><![CDATA[remedy]]></category>
		<category><![CDATA[定制]]></category>
		<category><![CDATA[实施]]></category>
		<category><![CDATA[开发]]></category>
		<category><![CDATA[汉化]]></category>
		<category><![CDATA[项目]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=51090</guid>
		<description><![CDATA[一个Remedy产品史上较大的新功能正在被大多数人忽视和绕过，实在是不吐不快，也希望所有的Remedy开发人员能够关注一下这个功能，因为他可能真的对你的项目非常重要。 上图显示了Overloay对象的地位和功用，我们都是工作在BMC原厂的开箱即用的程序对象层面上，所有安装程序首次安装到系统上的应用的所有对象都是Base对象。在这个基础之上我们做定制和开发，定制和开发出来的对象有两种，一种是Overlay对象，中文翻译为叠加对象，这种叠加对象并不会对原有的Base对象进行修改，而是覆盖在其之上的，两者是和谐共存的。另外一种对象就是纯客户化的对象，即以前没有，开发人员新加入的对象，这种对象和其他两种对象是没有冲突的。 Overlay可以是Base对象保持原状有什么意义？最重要的一点就是对升级有好处，以前我们开发的所有Remedy应用系统，大家都不敢做升级，当客户或者BMC的support要求要升级的时候，我们都会抵制或反对，这里的原因相信大家心里都知道。那么以后大家就不必这样了，只要在开发定制的过程中合理的使用Overlay对象做定制开发，方能保证定制后的系统对补丁和升级来者不拒。 那么如何使用到Overlay对象呢？在Dev Studio中选中需要修改的对象，点右键选择create overlay，你就能在原厂的对象上做一个叠加对象了。这里提出一个7.6.04 Dev Studio的错误做法：默认登录到Dev Studio以后，你可能会发现在默认的最佳实践模式下，你不能向以前一样任意修改东西，发现在切换到另外一个模式（好像是经典模式）之后又什么都能修改了，所以你就认为找到了修改的方法，其实这种操作恰恰是绕过了Overlay功能。在这种模式等于在以前旧版本产品的模式下开发做。 老外如是说：What the overlay feature does is to simply allow you to do the following: 1) Add new items that are identified as custom items you have added.  They are flagged as custom items in the displays.  You can easily sort by and get a list of<p><a href="http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html' rel='bookmark' title='BMC Atrium CMDB CI数据迁移'>BMC Atrium CMDB CI数据迁移</a></li>
<li><a href='http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html' rel='bookmark' title='在Oracle上备份和恢复 Remedy ARS数据库'>在Oracle上备份和恢复 Remedy ARS数据库</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-51092" href="http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html/remedy-ars-7-6-04-overlay"><img class="aligncenter size-full wp-image-51092" title="Remedy-ARS-7.6.04-Overlay" src="http://martinliu.cn/wp-content/uploads/2011/05/Remedy-ARS-7.6.04-Overlay.png" alt="Remedy-ARS-7.6.04-Overlay" width="611" height="325" /></a>一个Remedy产品史上较大的新功能正在被大多数人忽视和绕过，实在是不吐不快，也希望所有的Remedy开发人员能够关注一下这个功能，因为他可能真的对你的项目非常重要。</p>
<p>上图显示了Overloay对象的地位和功用，我们都是工作在BMC原厂的开箱即用的程序对象层面上，所有安装程序首次安装到系统上的应用的所有对象都是Base对象。在这个基础之上我们做定制和开发，定制和开发出来的对象有两种，一种是Overlay对象，中文翻译为叠加对象，这种叠加对象并不会对原有的Base对象进行修改，而是覆盖在其之上的，两者是和谐共存的。另外一种对象就是纯客户化的对象，即以前没有，开发人员新加入的对象，这种对象和其他两种对象是没有冲突的。</p>
<p>Overlay可以是Base对象保持原状有什么意义？最重要的一点就是对升级有好处，以前我们开发的所有Remedy应用系统，大家都不敢做升级，当客户或者BMC的support要求要升级的时候，我们都会抵制或反对，这里的原因相信大家心里都知道。那么以后大家就不必这样了，只要在开发定制的过程中合理的使用Overlay对象做定制开发，方能保证定制后的系统对补丁和升级来者不拒。</p>
<p>那么如何使用到Overlay对象呢？在Dev Studio中选中需要修改的对象，点右键选择create overlay，你就能在原厂的对象上做一个叠加对象了。这里提出一个7.6.04 Dev Studio的错误做法：默认登录到Dev Studio以后，你可能会发现在默认的最佳实践模式下，你不能向以前一样任意修改东西，发现在切换到另外一个模式（好像是经典模式）之后又什么都能修改了，所以你就认为找到了修改的方法，其实这种操作恰恰是绕过了Overlay功能。在这种模式等于在以前旧版本产品的模式下开发做。</p>
<blockquote><p>老外如是说：What the overlay feature does is to simply allow you to do the following:</p>
<p>1) Add new items that are identified as custom items you have added.  They are flagged as custom items in the displays.  You can easily sort by and get a list of custom items.  And it is COMPLETE.  You don&#8217;t have to worry if you are missing one or if you forgot about something you added.<br />
2) Update existing items by leaving the original definition there and updating a copy of that definition with your changes.<br />
a) all the benefits of #1 are present AND your changes have the exact same name/identification as the original<br />
b) you can at any time see your version vs. the original to see exactly what has changed from out of the box<br />
c) Not have to deal with &#8220;ripple changes&#8221;.  By this I mean that if in the past you copied a filter to a new name (to avoid overwrite at upgrade), you had to copy any guide that included it and then any workflow that called the guide to use the new name.   The fact that the items are the SAME ITEM means that there is no need to change other things.<br />
d) When an upgrade occurs, the definitions in the base layer are changed but NOTHING about the items you have overlaid (or added custom) are changed. So, your changes are not overwritten.  In fact, your changes continue to be the overlay and continue to sit on top of and override the definition that was newly imported with the same name/id.<br />
e) After the upgrade, you can again compare your overlay with the new out of the box definition to see if there is anything that should change.  Maybe the out of the box does the right thing now and you should remove your overlay or maybe there is an extended set of actions and you need to pick up one or more of the new actions in your overlay.</p>
<p>The key is that it provides an automatic and inherent layer that is YOUR layer that sits over the out of the box definition and allows you to safely, clearly, and cleanly adjust or augment the defintions if needed for your environment.</p>
<p>This is a feature that allows you to gain further and tighter control over your environment.  It is something that provides you with the ability to better understand what is stock and what is custom and what is changed about the solution.  It is one that preserves all changes you have made across upgrades with a layer of independence and yet links so that changes stay tied into the solution without the change you have made being updated by the upgrade itself.</p></blockquote>
<p>突然想讲这样的一个故事，如果曾经发生在你身上，就当是个笑话吧。Remedy ITSM套件就好比是一个精装别墅，BMC一般会告诉客户，那里面有世界上最豪华的设施和装修，直接拿着行李入住就行了，事实如此！不过客户往往没有先看进屋看个究竟（其实往往用户没有这个机会，因素复杂，我不说你懂得），就找来施工队，提出我是有这样那样生活习惯和品位的，这都是对此房子的期望和需求，我的上帝客户啊！东西你都买了为啥就不先试住一下呢？尝试新鲜事物的精神您有木有？接着施工队的工人（也就是我们的Remedy程序开发人员）被工头（项目经理）带着就进屋了，说我们就是专业干这个的，能保证按时上线，您就等好吧！客户在院子里站着，瞧着施工队拿着需求分析书和开发工具进进出出，在屋里叮叮当当紧着忙活，几个月之后，项目经理过来说，我们可以做上线培训了（或者试运行/或者UAT测试了），这下客户才真的走进屋，客户开始纳闷了，心里直嘀咕，这真的是别墅么？好像有点糙啊！项目经理说，我们正式按照您的指示，已经把它做成中式风格了，老美的东西怕您用不惯。就这样客户茫然的也就入住了，其实客户可能只也住在了别墅某一层的一间屋里。通往其它房间的门都被封了，并且贴上了壁纸，或者被新打的大衣柜给挡住了，每次回家都是从窗台爬梯子上去。</p>
<p>对任何项目而言，在原厂产品上的定制开发是必须的，但是往往是项目的无底洞，那么如何规避这种风险？怎样让Remedy ITSM产品开箱即用的功能发挥到最大化？无疑对产品已有能力的挖潜和利用也要花时间精力成本去研究，这个时间和开发定制的工作时间是冲突矛盾的。那么：让客户先试住，在逐步装修，可能才是平衡矛盾的关键。客户也应该把项目实施和开发的资金做一个规划，切勿在前期投入太大，项目的前期，应该是学习产品和适应最佳实践的过程。实施方应该想方设法的让客户先进屋看清楚，和客户一起住一段时间，之后在去开工装修，这个过程应该是项目美好的蜜月期。</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html' rel='bookmark' title='BMC Atrium CMDB CI数据迁移'>BMC Atrium CMDB CI数据迁移</a></li>
<li><a href='http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html' rel='bookmark' title='在Oracle上备份和恢复 Remedy ARS数据库'>在Oracle上备份和恢复 Remedy ARS数据库</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Remedy ARS 开源工具知多少</title>
		<link>http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html</link>
		<comments>http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html#comments</comments>
		<pubDate>Tue, 01 Mar 2011 15:46:51 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[BMC]]></category>
		<category><![CDATA[ARAPI]]></category>
		<category><![CDATA[ARS]]></category>
		<category><![CDATA[ARSperl]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[pyARS]]></category>
		<category><![CDATA[remedy]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50968</guid>
		<description><![CDATA[Remedy ARS是全球最大市场份额的产品，是为业内广泛接受的成熟产品套件；虽然他始终是私有的软件产品，但是围绕其周围，还是不断有新的开源工具出现。下面就介绍几种这样的软件。 ARInside is a free open-source utility to create a static html documentation of your AR-Server. If you need something to quickly browse through your workflow, ARInside might be worth a try. ARInside 3.0.2 has some new features, lots of bugfixes and other improvements. Just to name a few: - documentation improvements - 64-bit platform<p><a href="http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2010/07/bmc-training-schedule01.html' rel='bookmark' title='BMC课程通知: BMC Remedy AR 7.5 管理员培训'>BMC课程通知: BMC Remedy AR 7.5 管理员培训</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-itsm-7-6-04-quick-install-guide.html' rel='bookmark' title='Remedy ITSM 7.6.04 套件快速安装'>Remedy ITSM 7.6.04 套件快速安装</a></li>
<li><a href='http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html' rel='bookmark' title='在Oracle上备份和恢复 Remedy ARS数据库'>在Oracle上备份和恢复 Remedy ARS数据库</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Remedy ARS是全球最大市场份额的产品，是为业内广泛接受的成熟产品套件；虽然他始终是私有的软件产品，但是围绕其周围，还是不断有新的开源工具出现。下面就介绍几种这样的软件。</p>
<p>ARInside is a  free open-source utility to create a static html documentation of your  AR-Server. If you need something to quickly browse through your workflow,  ARInside might be worth a try.<br />
ARInside 3.0.2 has  some new features, lots of bugfixes and other  improvements.<br />
Just to name a few:<br />
- documentation improvements<br />
- 64-bit platform support<br />
- experimental support for Solaris and AIX<br />
- basic ARS 7.6.x support<br />
- huge performance plus on big installations</p>
<p>这是一个ARS服务器扫描的工具，可以形成一个静态的文档，能够作为一个状态的参考极限，这样方便你对当前的服务器上的所有对象和工作流有个全面的了解。最大的好处是能够统计和技术，而且不用登陆Dev Studio了。一图胜千言，下面大家看后就明白它能做什么。</p>
<p><img class="alignnone" title="Front page of ARInside docs " src="http://arinside.org/screenshots/1?format=raw" alt="Front page of ARInside docs " width="629" height="468" /></p>
<p>看后还闲着干嘛，赶紧去下载使用吧。</p>
<p>其他的关于Remedy ARS 开源的项目我也在sf.net里面大致搜索了一下，下面是个简单的参考清单。</p>
<h2><a href="http://sourceforge.net/projects/roi/">Remedy Outlook Integration</a> <small>Updated 2006-09-08</small></h2>
<p>The Remedy Integration for Outlook (ROI) synchronizes tickets from any  Remedy AR System application to your Outlook task list or calendar.</p>
<h2><a href="http://sourceforge.net/projects/php-arapi/">Remedy ARAPI PHP extension</a> <small>Updated 2009-07-19</small></h2>
<p>Extension to PHP for integration to Remedy Action Request System. First  release will be focused on reading and manipulating data. Later version  will give access to arapi-application structure functions.</p>
<h2><a href="http://sourceforge.net/projects/jaspars/">Jasper Reports data provider for Remedy</a> <small>Updated 2006-08-16</small></h2>
<p>jaspars provides a Jasper Reports custom data source (JRDataSource)  compatible with the Remedy AR System. See  http://www.mypathworks.com/arslist/Public?id=8ae4b6940c259f32010c3707fbae01bf  for more information and usage instructions.</p>
<h2><a href="http://sourceforge.net/projects/arsperl/">ARSperl</a> <small>Updated 2008-05-06</small></h2>
<p>ARSperl is an integration kit for Perl5 and Remedy ARSystem API. It  provides a large subset of the functionality found in the ARS C API</p>
<h2><a href="http://sourceforge.net/projects/arcachepurge/">AR Cache Purge</a> <small>Updated 2009-05-27</small></h2>
<p>AR Cache Purge automates the process of clearing BMC Remedy user cache  on client machines. It first checks the registry for the Home folders(s)  and then removes the .arf and .arv files. It handles multiple users and  home folders on a single machine.</p>
<h2><a href="http://sourceforge.net/projects/pyars/">pyARS</a> <small>Updated 2010-12-20</small></h2>
<p>The pyARS python module allows developers to use BMC&#8217;s ARSystem (Remedy  ARS) and Atrium CMDB functions from within Python. Using Python&#8217;s  interactive shell, it is extremely easy to retrieve and modify data  entries as well as workflow objects.</p>
<h2><a href="http://sourceforge.net/projects/coarse/">COM Objects for the AR System</a> <small>Updated 2006-01-10</small></h2>
<p>Coarse (COM Objects for the AR System), provides an automation  compatible COM API to the AR System (Remedy only provides a C API and a  Java API).  It is compatible with VB6, VBA, VBScript, and JScript.   Based on the RTL Sourceforge project.</p>
<p>&nbsp;</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2010/07/bmc-training-schedule01.html' rel='bookmark' title='BMC课程通知: BMC Remedy AR 7.5 管理员培训'>BMC课程通知: BMC Remedy AR 7.5 管理员培训</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-itsm-7-6-04-quick-install-guide.html' rel='bookmark' title='Remedy ITSM 7.6.04 套件快速安装'>Remedy ITSM 7.6.04 套件快速安装</a></li>
<li><a href='http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html' rel='bookmark' title='在Oracle上备份和恢复 Remedy ARS数据库'>在Oracle上备份和恢复 Remedy ARS数据库</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在Oracle上备份和恢复 Remedy ARS数据库</title>
		<link>http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html</link>
		<comments>http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html#comments</comments>
		<pubDate>Mon, 14 Feb 2011 15:05:27 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[BMC]]></category>
		<category><![CDATA[ARS]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[cmdb]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[ITSM]]></category>
		<category><![CDATA[remedy]]></category>
		<category><![CDATA[备份]]></category>
		<category><![CDATA[安装]]></category>
		<category><![CDATA[恢复]]></category>
		<category><![CDATA[部署]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50947</guid>
		<description><![CDATA[Why ARS system need full backup and restore 众所周知Remedy ARS上运行的所有程序代码都是在数据库中存储的，几乎所有的程序代码和相关数据都是存储在后端的数据库里的。基于这种特性，我们可以很方便地从数据库层面实现对ARS系统的备份和恢复。所谓基于数据库的备份和恢复就是指数据库的全库导入和导出。在这方面Oracle做的很好，他所提供的imp和exp命令行工具能很好的完成此项任务。 When you may backup BMC Remedy ARS system Database Remedy ARS系统数据库全备份可能会发生在下面的几个时间点： 在安装过程中，Remedy ITSM套件的安装都是从ARS开始一个模块一个模块增加安装的，可以在安装每个新模块之前，做一个数据库备份，用于安装失败情况下的现场恢复 在系统上线前，当系统需要做升级/代码更新等等大规模操作之前可以考虑做一次数据库的导出备份 在做系统迁移的情况下，我们甚至可以生产库迁移到开发机上进行问题的重现，或者代码的修改，或者测试，完成之后再导回生产系统（如果生产系统再次期间处于维护状态的话） How-to 下面是我总结的相关操作步骤参考。 备份ARSystem数据库 exp aradmin/ar#admin@itil file=c:\before-patch7.dmp log=c:\exp.log compress=n statistics=none 参数解释： aradmin/ar#admin  是ARS系统默认的用户名和口令 @itil 是ARSystem数据库所在的数据库实例名 file=c:\before-patch7.dmp log=c:\exp.log  是导出的数据库文件和日志文件路径 删除ARAdmin用户数据 drop user aradmin cascade; 创建和授权ARAdmin用户 CREATE USER ARADMIN IDENTIFIED BY ar#admin# DEFAULT<p><a href="http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2010/07/bmc-training-schedule01.html' rel='bookmark' title='BMC课程通知: BMC Remedy AR 7.5 管理员培训'>BMC课程通知: BMC Remedy AR 7.5 管理员培训</a></li>
<li><a href='http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html' rel='bookmark' title='Remedy ARS 开源工具知多少'>Remedy ARS 开源工具知多少</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-itsm-7-6-04-quick-install-guide.html' rel='bookmark' title='Remedy ITSM 7.6.04 套件快速安装'>Remedy ITSM 7.6.04 套件快速安装</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<h1>Why ARS system need full backup and restore</h1>
<p>众所周知<em>Remedy ARS</em>上运行的所有程序代码都是在数据库中存储的，几乎所有的程序代码和相关数据都是存储在后端的数据库里的。基于这种特性，我们可以很方便地从数据库层面实现对ARS系统的备份和恢复。所谓基于数据库的备份和恢复就是指数据库的全库导入和导出。在这方面<em>Oracle</em>做的很好，他所提供的imp和exp命令行工具能很好的完成此项任务。<br />
<img class="alignnone" title="备份和恢复Remedy ARS system" src="http://img.en25.com/Web/BMCSoftwareInc/eloqua_webform_banner_868w_arch07.jpg" alt="" width="575" height="98" /></p>
<h1>When you may backup BMC Remedy ARS system Database</h1>
<p><em>Remedy ARS</em>系统数据库全备份可能会发生在下面的几个时间点：</p>
<ol>
<li>
<h2>在安装过程中，<em>Remedy ITSM</em>套件的安装都是从ARS开始一个模块一个模块增加安装的，可以在安装每个新模块之前，做一个数据库备份，用于安装失败情况下的现场恢复</h2>
</li>
<li>
<h2>在系统上线前，当系统需要做升级/代码更新等等大规模操作之前可以考虑做一次数据库的导出备份</h2>
</li>
<li>
<h2>在做系统迁移的情况下，我们甚至可以生产库迁移到开发机上进行问题的重现，或者代码的修改，或者测试，完成之后再导回生产系统（如果生产系统再次期间处于维护状态的话）</h2>
</li>
</ol>
<h1>How-to</h1>
<p>下面是我总结的相关操作步骤参考。</p>
<h2>备份<em>ARSystem</em>数据库</h2>
<p>exp aradmin/ar#admin@itil file=c:\before-patch7.dmp log=c:\exp.log compress=n statistics=none</p>
<p>参数解释：<br />
aradmin/ar#admin  是ARS系统默认的用户名和口令<br />
@itil 是ARSystem数据库所在的数据库实例名<br />
file=c:\before-patch7.dmp log=c:\exp.log  是导出的数据库文件和日志文件路径</p>
<h2><em>删除ARAdmin用户数据</em></h2>
<p>drop user aradmin cascade;</p>
<h2><em>创建和授权ARAdmin用户</em></h2>
<p>CREATE USER ARADMIN<br />
IDENTIFIED BY ar#admin#<br />
DEFAULT TABLESPACE ARSYSTEM<br />
TEMPORARY TABLESPACE ARTMPSPC<br />
PROFILE DEFAULT<br />
ACCOUNT UNLOCK;</p>
<p>GRANT ARADMINROLE TO ARADMIN;<br />
ALTER USER ARADMIN DEFAULT ROLE ALL;<br />
ALTER USER ARADMIN QUOTA UNLIMITED ON ARSYSTEM;</p>
<h2><em>导入备份的数据文件</em></h2>
<p>imp ARAdmin/AR#Admin@ars file=c:\CMDB2010-12-13_13.dmp log=c:\imp.log  fromuser=ARAdmin touser=ARAdmin ignore=y</p>
<p>Credit to：以上操作步骤由<em>神州太岳</em>工程师<em>李成旗</em>协助编写和测试.</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2010/07/bmc-training-schedule01.html' rel='bookmark' title='BMC课程通知: BMC Remedy AR 7.5 管理员培训'>BMC课程通知: BMC Remedy AR 7.5 管理员培训</a></li>
<li><a href='http://martinliu.cn/2011/03/remedy-ars-open-source-tool.html' rel='bookmark' title='Remedy ARS 开源工具知多少'>Remedy ARS 开源工具知多少</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-itsm-7-6-04-quick-install-guide.html' rel='bookmark' title='Remedy ITSM 7.6.04 套件快速安装'>Remedy ITSM 7.6.04 套件快速安装</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/02/backup-restore-remedy-ars-oracle-db.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在64位Windows上安装ARS7.5</title>
		<link>http://martinliu.cn/2011/02/64-windows-ars-75-install-tips.html</link>
		<comments>http://martinliu.cn/2011/02/64-windows-ars-75-install-tips.html#comments</comments>
		<pubDate>Thu, 10 Feb 2011 17:12:30 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[BMC]]></category>
		<category><![CDATA[ARS]]></category>
		<category><![CDATA[remedy]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50930</guid>
		<description><![CDATA[在64位windows服务器上安装ARS7.5所需要了解的一些注意事项和技巧<p><a href="http://martinliu.cn/2011/02/64-windows-ars-75-install-tips.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/04/ars-start-issue-on-oracle.html' rel='bookmark' title='ARS启动故障修复案例'>ARS启动故障修复案例</a></li>
<li><a href='http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html' rel='bookmark' title='如何读取Remedy中的数据'>如何读取Remedy中的数据</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="ARS 7.5 安装" src="data:image/jpg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkGBggGBQkIBwgKCQkKDRYODQwMDRoTFBAWHxwhIB8cHh4jJzIqIyUvJR4eKzssLzM1ODg4ISo9QTw2QTI3ODUBCQoKDQsNGQ4OGTUkHiQ1NTU1NTU1LzU1NTU1NTU1NS41NCw1NTQ0NTU1NTU1LDUpNDQ1NDUsNSwsMDQsNDU1Nf/AABEIADAAMAMBIgACEQEDEQH/xAAbAAACAwEBAQAAAAAAAAAAAAAGBwMEBQIIAf/EADUQAAEDAwMCAwUFCQAAAAAAAAECAwQFERIAITEGEyJBYQdRcYGhFBUjMkJSYpGiscHR4fD/xAAYAQADAQEAAAAAAAAAAAAAAAACAwQFAf/EACERAAICAgICAwEAAAAAAAAAAAECABEDIRJBBDEiMnET/9oADAMBAAIRAxEAPwB4k2FzofqUqoyX1NMK+zRySEOJBzUoevAB9RqR6rOuVtbLOK47ACXEHZRXfe3vABB+R11VKolKMUfl/Sm/5/U/u/RQOjAqTu93uDU6miQ6vuEynl7d5RCSo/E2G3Hy1aV09TGFpXTmhElHxNvRiEqSPOxVcAEXFjvzqjKkqdRZZUEFJCUKbuL38h/HbXPUtb+6KO8+xHvitsIB8itaWx4rb2ve39L6qxKCCT1JAd0O5pR+oJlEdSJTxl0/LxLdBVISCd1EiwIA8gm+i+PIalx0Px3EuNLF0qSdjpXTejSlky01upLnIR3SpTy+x3LXI7OVsL/pva22q/sy60WquCG9kzCllTbLAOQQ8FWunjFKrLUQByfPnSWC5LKCqlqck0xubESuJEVUmSpTxeJcBSAApZFiSRYgW92q7lWQ5buEKxIOyj+nn/X11BFeEOnN0+UC1IintuoPiAI38uefI86ru1doKxTyFWOQvz/nz/tq5sAbYMzASNGWJE9CyVqUFeQSk/8AfM839NY3UNZiSGWaWAJDk5SQ1dRDYxOdyRvYY3G25Fjtqd6tuEfhWSpJuFWO/lcj04toUkSEOV2jOhfgL7hJKhz2zz6+vGhCfzIXptRuL5OIWTYnWSWEsOOQDHCcG5RWoOFJ2C8cMciN7cX0DxK6ilzFqh4wpkF3JFjmnPc5DK973JsRYE7bW005akntKBBSWUG99rW0lE06TWOr5UKA33pMh/FtGQTkbe8kDR5cS4FDKPcrykkfkbntMp0uhVs1aOw8unSUDvuJUSGnSoglQtsCMAL+eg1uroWpZ8ON7JCj7+Pjf+bXoaVFZnRXI8ptLrLqcVoUNiNJfq/2R1anyHpPT2MmCVfhxgSXkBR4FxuBsLlV9K8fOK4tE58BvksHXarhgoqzsb2SvG/qT5W4v5cawZT2cZlpSGwEvNhKsAlQuoA29222Pu+OvlRYqNInriVBtceS2QVNrSLjYEfQjUNPYnVeWxBgR1SpKlhSW0DxLCPGQPkkm+i8g/UxOPTi4wa9Rn6dTnXk1CXgG7ttB5WKU22HPAG1tQ+xHo+RUqz9/wA9h37Kxmph5RI7joXYEftAAKHxGuq71ZCqrBpLQcTVCBGMRQGfe/L2+ecttNP2dUGV0z0HTqZPLf2hnuKX2ySBm4pYG4G4CgD631zzXUheJmgFv3P/2Q==" alt="ARS 7.5 安装" width="48" height="48" />刚才终于把ARS装上了。费了我两天的力气终于搞定了。错误其实很简单的，现象很多人都见过，ARS在安装完所有的文件后，在系统中建完ARS的服务以后，会继续启动服务，才能做最后的程序文件导入的相关操作。</p>
<p>错误的现象是：在启动服务的时，安装程序一直停止在“Starting Remedy ARS services&#8230;.”的屏幕，去arerror日志里面可以看到无法连接到SQL数据库的错误。</p>
<p>我的安装错误的原因其实很简单：</p>
<ol>
<li>如果是64为的Windows操作系统，默认的安装路径是C:\Program Files (x86)\目录</li>
<li>Oracle客户端没有正确的安装</li>
</ol>
<p>解决的方法如下：</p>
<ol>
<li>修改ars默认的安装路径，尽量把它放在一个较短的而且没有特殊字符的路径里，如D:\bmc\</li>
<li>ARS 7.5 sp6支持的Oracle客户端是32位的，如果你在64位OS上安装的是64位的Oracle数据+客户端（sqlplus），那么默认的这个64为的客户端是不能用的，需要安装一个62位的客户端，而且需要时10g的，此版本也不支持11g的客户端；另外在安装32位的oracle客户端的时候最好也不要在路径中有特殊字符如符号和下划线之类的</li>
</ol>
<p>ARS7.5本身是32位的可支持程序，所以它所需要的JDK和Oracle都需要是32位的版本。如果你安装的是7.6.04，就不需要考虑32位的问题，由于它本身就是64位的程序了，所以JDK和Oracle都需要使用相应的64为的程序。</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/04/ars-start-issue-on-oracle.html' rel='bookmark' title='ARS启动故障修复案例'>ARS启动故障修复案例</a></li>
<li><a href='http://martinliu.cn/2011/06/how-to-access-remedy-form-in-db.html' rel='bookmark' title='如何读取Remedy中的数据'>如何读取Remedy中的数据</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/02/64-windows-ars-75-install-tips.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>BMC Atrium CMDB CI数据迁移</title>
		<link>http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html</link>
		<comments>http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html#comments</comments>
		<pubDate>Wed, 12 Jan 2011 05:08:23 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[CMS/CMDB]]></category>
		<category><![CDATA[Atrium]]></category>
		<category><![CDATA[BMC]]></category>
		<category><![CDATA[ci]]></category>
		<category><![CDATA[cmdb]]></category>
		<category><![CDATA[relationship]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50859</guid>
		<description><![CDATA[在不同的CMDB服务器之间做数据迁移之前一定要注意两点：1）保持两边的CDM相同；2）先导入CI数据在导入CI相关的关系数据。另外就是每个类导入完毕之后要做数据完整性和正确性的抽检。以下使用的工具是cmdbdriver，该命令初始化和一般性的参数介绍请参考相关文档。 CI数据导出示例 Command: xexpdt XEXPORT DATA Export instance data from all classes? (F): Classes to export data from: Class and its subclasses, From namespace (1,2) (1): Namespace (): BMC.CORE Class name (): BMC_ComputerSystem Dataset ID (): BMC.ASSET Filename for exported data: C:\DEMO\cs-ci Exporting Class BMC_ComputerSystem i=0: namespaceName = BMC.CORE, className = BMC_ComputerSystemExported without errorsExporting Class<p><a href="http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2009/03/stop-to-build-cmdb-for-your-it.html' rel='bookmark' title='Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？'>Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html' rel='bookmark' title='Remedy ARS 7.6.03 overlay'>Remedy ARS 7.6.03 overlay</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>在不同的CMDB服务器之间做数据迁移之前一定要注意两点：1）保持两边的CDM相同；2）先导入CI数据在导入CI相关的关系数据。另外就是每个类导入完毕之后要做数据完整性和正确性的抽检。以下使用的工具是cmdbdriver，该命令初始化和一般性的参数介绍请参考相关文档。</p>
<p><em><strong>CI数据导出示例</strong></em></p>
<p>Command: xexpdt<br />
XEXPORT DATA<br />
Export instance data from all classes? (F):<br />
Classes to export data from:<br />
Class and its subclasses, From namespace (1,2) (1):<br />
Namespace (): BMC.CORE<br />
Class name (): BMC_ComputerSystem<br />
Dataset ID (): BMC.ASSET<br />
Filename for exported data: C:\DEMO\cs-ci<br />
Exporting Class BMC_ComputerSystem<br />
i=0: namespaceName = BMC.CORE, className = BMC_ComputerSystemExported without errorsExporting Class BMC_MainframeExporti<br />
ng Class BMC_PrinterExporting Class BMC_StorageSubsystem<br />
CMDBExportData  results<br />
ReturnCode:  OK<br />
Status List : 0 items</p>
<p>到相应目录下面找到导出的文件，导出的结果至少是两个文件一个是META_FILE其他的才是CI数据文件。</p>
<p><em><strong>关系数据导出示例</strong></em></p>
<p>Command: xexpdt<br />
XEXPORT DATA<br />
Export instance data from all classes? (F):<br />
Classes to export data from:<br />
Class and its subclasses, From namespace (1,2) (1):<br />
Namespace (): BMC.CORE<br />
Class name (): BMC_Dependency<br />
Dataset ID (): BMC.ASSET<br />
Filename for exported data: C:\DEMO\REL-DEP.XML<br />
Exporting Class BMC_Dependency<br />
i=0: namespaceName = BMC.CORE, className = BMC_DependencyExported without errorsExporting Class BMC_AccountOnSystemExpor<br />
ting Class BMC_HostedAccessPointExporting Class BMC_HostedServiceExporting Class BMC_InventoryBulkItemsExporting Class B<br />
MC_InventoryComputerSystemsExporting Class BMC_InventoryEquipmentExporting Class BMC_InventorySystemComponents<br />
CMDBExportData  results<br />
ReturnCode:  OK<br />
Status List : 0 items</p>
<p>到相应目录下面找到导出的文件，导出的结果至少是两个文件一个是META_FILE其他的才是CI数据文件。</p>
<p><em><strong>导入数据示例</strong></em></p>
<p>Command: impdt<br />
IMPORT INSTANCE DATA<br />
Handle duplicate Instance Ids:<br />
(Error/New ID for Dup/Merge/New ID for All) (1-4) (1): 3<br />
Filename containing import data: c:\demo\cs-ci_0_0  (导入包含CI数据的文件)</p>
<p>CMDBImportData  results<br />
ReturnCode:  OK<br />
Status List : 0 items<br />
Total items Processed             :  2<br />
Items Imported successfully       :  2<br />
Items for which Import failed     :  0</p>
<p>Command: impdt<br />
IMPORT INSTANCE DATA<br />
Handle duplicate Instance Ids:<br />
(Error/New ID for Dup/Merge/New ID for All) (1-4) (1): 3<br />
Filename containing import data: c:\demo\REL-DEP.XML_0_0 (导入包含关系数据的文件)</p>
<p>CMDBImportData  results<br />
ReturnCode:  OK<br />
Status List : 0 items<br />
Total items Processed             :  1<br />
Items Imported successfully       :  1<br />
Items for which Import failed     :  0</p>
<p>导入完毕之后使用Remedy User到相应的表格中查找，确认导入的数据是否正确。</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html' rel='bookmark' title='BMC Atrium CMDB 类定义迁移'>BMC Atrium CMDB 类定义迁移</a></li>
<li><a href='http://martinliu.cn/2009/03/stop-to-build-cmdb-for-your-it.html' rel='bookmark' title='Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？'>Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html' rel='bookmark' title='Remedy ARS 7.6.03 overlay'>Remedy ARS 7.6.03 overlay</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BMC Atrium CMDB 类定义迁移</title>
		<link>http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html</link>
		<comments>http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html#comments</comments>
		<pubDate>Wed, 12 Jan 2011 04:22:44 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[CMS/CMDB]]></category>
		<category><![CDATA[Atrium]]></category>
		<category><![CDATA[BMC]]></category>
		<category><![CDATA[class]]></category>
		<category><![CDATA[cmdb]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50854</guid>
		<description><![CDATA[当对CDM做了定制，并且要在不同的服务器直接做类的迁移的时候，需要把定制过的类都导出，然后在目标机上导入。可以使用的CMDB自带的命令行cmdbdriver工具。 cmdbdriver.exe能支持的参数 Options: -u&#60;USER&#62; -a&#60;AUTHORSTRING&#62; -p&#60;PASSWORD&#62; -l&#60;LOCALE&#62; -s&#60;SERVER&#62; -x&#60;INPUTFILE_FULLPATH&#62; -t&#60;PORT_NUMBER&#62; -q&#60;QUIET_MODE_NUMBER&#62; 登录CMDBdriver 实例：   cmdbdriver -u Demo -p bmc@XXX -s atriumcmdb -t 9988 登录之后在运行另外用于初始化的两个命令 init 和log Command: init INITIALIZATION CMDBInitialization  results ReturnCode:  OK Status List : 0 items Command: log Control record: Authentication string () : User name () : Demo Password () : ********** Locale[.charSet]<p><a href="http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html' rel='bookmark' title='BMC Atrium CMDB CI数据迁移'>BMC Atrium CMDB CI数据迁移</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html' rel='bookmark' title='Remedy ARS 7.6.03 overlay'>Remedy ARS 7.6.03 overlay</a></li>
<li><a href='http://martinliu.cn/2009/03/stop-to-build-cmdb-for-your-it.html' rel='bookmark' title='Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？'>Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>当对CDM做了定制，并且要在不同的服务器直接做类的迁移的时候，需要把定制过的类都导出，然后在目标机上导入。可以使用的CMDB自带的命令行cmdbdriver工具。</p>
<p><em><strong>cmdbdriver.exe能支持的参数</strong></em></p>
<p>Options:<br />
-u&lt;USER&gt;<br />
-a&lt;AUTHORSTRING&gt;<br />
-p&lt;PASSWORD&gt;<br />
-l&lt;LOCALE&gt;<br />
-s&lt;SERVER&gt;<br />
-x&lt;INPUTFILE_FULLPATH&gt;<br />
-t&lt;PORT_NUMBER&gt;<br />
-q&lt;QUIET_MODE_NUMBER&gt;</p>
<p>登录CMDBdriver 实例：   cmdbdriver -u Demo -p bmc@XXX -s atriumcmdb -t 9988</p>
<p>登录之后在运行另外用于初始化的两个命令 init 和log</p>
<p>Command: init<br />
INITIALIZATION</p>
<p>CMDBInitialization  results<br />
ReturnCode:  OK<br />
Status List : 0 items</p>
<p>Command: log<br />
Control record:<br />
Authentication string () :<br />
User name () : Demo<br />
Password () : **********<br />
Locale[.charSet] () :<br />
TimeZone () :<br />
Server () : atriumcmdb</p>
<p><em><strong>导出类定义的方法实例</strong></em><br />
Command: xexpdf<br />
XEXPORT DEFINITION<br />
Export all classes? (F):<br />
Classes to export:<br />
Class and its subclasses, From namespace (1,2) (1):<br />
Namespace (): BMC.CORE<br />
Class name (): BMC_ComputerSystem<br />
Export all attributes with classes? (T):<br />
Filename for exported data: c:\demo\BMC_ComputerSystem.xml</p>
<p>CMDBXExportDef  results<br />
ReturnCode:  OK<br />
Status List : 0 items</p>
<p>使用文本编辑器查看c:\demo\BMC_ComputerSystem.xml的导出结果</p>
<p><em><strong>导入类定义的方法：</strong></em><br />
Command: impdf<br />
DEFINITION IMPORT<br />
Import Item List:<br />
Number of import items (0):<br />
Import option : Create/Overwrite (1-2) (1): 2<br />
Filename containing import data: c:\demo\cs.xml</p>
<p>CMDBImportDef  results<br />
ReturnCode:  OK<br />
Status List : 0 items</p>
<p>使用Remedy User，用Demo登录，把语言切换到英文，然后在查BMC_ComputerSystem表达，在custom 2 ～n的tab页面里面查看哪些导入的属性。或者使用class manager查看确认导入是否成功。</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/01/bmc-atrium-cmdb-ci.html' rel='bookmark' title='BMC Atrium CMDB CI数据迁移'>BMC Atrium CMDB CI数据迁移</a></li>
<li><a href='http://martinliu.cn/2011/05/remedy-ars-7-6-03-overlay.html' rel='bookmark' title='Remedy ARS 7.6.03 overlay'>Remedy ARS 7.6.03 overlay</a></li>
<li><a href='http://martinliu.cn/2009/03/stop-to-build-cmdb-for-your-it.html' rel='bookmark' title='Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？'>Stop to build CMDB for your IT &#8211; CMS是怎样炼成的？</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2011/01/bmc-atrium-cmdb-sync-cdm-class.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>[ZT] Old BSM is dead</title>
		<link>http://martinliu.cn/2010/09/zt-bsm-dead.html</link>
		<comments>http://martinliu.cn/2010/09/zt-bsm-dead.html#comments</comments>
		<pubDate>Fri, 17 Sep 2010 18:46:09 +0000</pubDate>
		<dc:creator>Martin Liu</dc:creator>
				<category><![CDATA[ITSM]]></category>
		<category><![CDATA[BMC]]></category>
		<category><![CDATA[BSM]]></category>
		<category><![CDATA[CA]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[cmdb]]></category>
		<category><![CDATA[Integrien]]></category>
		<category><![CDATA[virtuali]]></category>
		<category><![CDATA[VMWare]]></category>

		<guid isPermaLink="false">http://martinliu.cn/?p=50807</guid>
		<description><![CDATA[随着云计算和虚拟化的来临，IT架构愈加复杂，老一套的IT管理方案只能监控静态的基础架构。老一套的CMDB和BSM给运维无法带来实质性的帮助，需要能够具有自适应、自学习IT环境的能力，管理工具需要对IT环境的变化有感知，有学习功能，否则无法对业务故障的处理给予应有的支持。转帖自学一下这个文章，老外从IT架构的历史讲起，横跨跨服务保证和CMDB等领域，讲的还是很不错的。 The Significance of the VMware Integrien Acquisition While it may seem that with Integrien VMware has acquired yet one more piece of the puzzle (a puzzle whose final form no one knows), this acquisition is perhaps one of the most significant if not the most significant that VMware has done. To understand the significance<p><a href="http://martinliu.cn/2010/09/zt-bsm-dead.html" class="more-link">Continue reading &#187;</a></p>
Related posts:<ol>
<li><a href='http://martinliu.cn/2011/02/book-service-modelling.html' rel='bookmark' title='图书推荐《服务建模：原理与应用》'>图书推荐《服务建模：原理与应用》</a></li>
<li><a href='http://martinliu.cn/2011/05/let-remedy-ars-fly-2.html' rel='bookmark' title='让Remedy飞一会'>让Remedy飞一会</a></li>
<li><a href='http://martinliu.cn/2009/12/is-that-a-joke-of-remedy-developer.html' rel='bookmark' title='老美真的很扯，一个职位的帖子被顶了22次'>老美真的很扯，一个职位的帖子被顶了22次</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://www.smarthomecn.com/upload/2008_11/081112102554402.jpg" title="Old BSM is dead" class="alignleft" width="494" height="324" />随着云计算和虚拟化的来临，IT架构愈加复杂，老一套的IT管理方案只能监控静态的基础架构。老一套的CMDB和BSM给运维无法带来实质性的帮助，需要能够具有自适应、自学习IT环境的能力，管理工具需要对IT环境的变化有感知，有学习功能，否则无法对业务故障的处理给予应有的支持。转帖自学一下这个文章，老外从IT架构的历史讲起，横跨跨服务保证和CMDB等领域，讲的还是很不错的。<br />
<a title="The Significance of the VMware Integrien Acquisition" href="http://www.virtualizationpractice.com/blog/?p=7186">The Significance of the VMware Integrien Acquisition</a><br />
While it may seem that with Integrien <a title="VMware" href="http://www.virtualizationpractice.com/blog/?page_id=2983">VMware</a> has acquired yet one more piece of the puzzle (a puzzle whose final  form no one knows), this acquisition is perhaps one of the most  significant if not the most significant that <a title="VMware" href="http://www.virtualizationpractice.com/blog/?page_id=2983">VMware</a> has done. To understand the significance of this acquisition, one has  to step back and examine a bit of history in the Systems Management  business.</p>
<p>For as long as there have  been computers, operating systems and business critical applications,  there has been monitoring of these items to make sure they were working  (available) and performing well for their constituents. In the early  days of the computer industry (through about 1982) computer systems were  vertical monoliths where a customer would buy “an accounting system”  and that purchase would include hardware, systems software, and  applications software. All of this usually came from one vendor so there  was one throat to choke when it did not work.</p>
<p>Starting with the  delivery of the PC, then Ethernet LAN’s and Novel Netware, and finally  Windows Servers and the Internet, the industry reorganized along  horizontal dimensions. A computer system was now a multi-layer cake and  you could buy each cake from one of many vendors whose products were  largely interchangeable with each other, and compatible with adjacent  layers. So you could buy an Intel based server from one of N vendors,  put either Linux or Windows on it, but a Java applications server from  one of N vendors on that and then buy applications from thousands of  different vendors.</p>
<p>This horizontal layering of the industry was heavily promoted by <a title="Microsoft" href="http://www.virtualizationpractice.com/blog/?s=microsoft">Microsoft</a> and Intel (who “owned” two key layers of the cake), and also ushered in  the tremendous innovation and price competition that continues to drive  our industry today. Moore’s Law says that microprocessor performance  doubles roughly every 18 months or so, and with those increases in  price/performance come the more for less mentality that we have all  become accustomed to.</p>
<p>With this freedom of choice at every layer  of the cake however came problems. The first problem was complexity.  There were now too many cooks in the kitchen which meant that there were  both too many and not one single throat for the CIO to choke when  something went wrong. The management software industry reacted to this  by inventing a marketecture, Business Service Management (BSM). The idea  behind BSM was to identify the key business services that applications  or combinations of applications delivered to users (the ability to enter  and order and ship the resulting product is a business service as is  the ability of a consumer to transfer funds from one banking account to  another), and to then map all of the software and hardware  infrastructure that this business service depended upon and to manage  that collection of linked resources as an entity.</p>
<p>While Business Service Management sounded like a great idea, it in fact ended up as a miserable failure. The reasons were:</p>
<ul>
<li> There were many applications for which it was just too hard to measure  their performance (in response time terms). Web applications turned out  to be pretty easy, but fat client Win32 applications written to  proprietary client/server protocols turned out to be very hard. It  turned out that for most enterprises, more than half of the business  critical applications were in the hard pile (fat client/Win32) and less  than half were the easy web applications.</li>
<li>Many BSM frameworks  relied upon scripts and synthetic transactions to measure response time  and end user experience. However this approach failed for many  enterprises due to the large number of applications that comprised a  business service and how rapidly these applications were changing. For  example if synthetic transactions were used to measure the performance  of a set of transactions, and a company had 500 business critical  applications (not a very high number – some companies have thousands),  and each application was updated once a year, then that would translate  into 10 updates a week for the monitoring scripts.</li>
<li>The same is true for  most passive monitoring approaches that rely upon templates to identify  transactions in applications protocols. There are many products that can  measure the response time of transactions from the perspective of the  web server by attaching physical or virtual appliance to a span port on  the switch that services the web server. However all such products  require configuration to understand what set of granular http  request/responses combine to create a transaction of interest.  Maintaining these configurations across hundreds of applications and  thousands of transactions proved to be a major impediment to  instrumenting their service level in any kind of a broad and systematic  manner.</li>
<li>It turned out to be a nightmare to identify the hardware  and software that supported each business service. This gave rise to  the need for Configuration Management Databases (CMDB’s) that were  supposed to get populated with the hardware and software assets and  their relationships to each other. The effort to put in place a CMDB and  to maintain it turned out to doom the CMDB projects and the associated  BSM projects at many companies.</li>
<li>The BSM vendors were unable to  evolve their products at the same rate as the innovation of the vendors  who contributed products to the layers in the cake. New devices (laptops  that were not always connected), new protocols (ICA, VOIP), new  operating systems (Linux), new languages (Java, C#), and new user  interfaces (first the browser and then rich Internet applications) all  occurred at a pace that no one vendor could keep up with.</li>
<li>When  the BSM vendors got overwhelmed by innovation, vendors of point  monitoring solutions stepped in to monitor the newest layer or item in a  layer.  This lead to a proliferation of monitoring tools which were not  integrated with each other.</li>
<li>When a problem occurred even if one  had a BSM product and a CMDB it still horribly difficult to know  exactly what path the failed transaction took through the entire  hardware and software infrastructure. The BSM tools were rarely aware of  every element of the stack and the tactical monitors that had been  bought to fill in the cracks were not integrated with the BSM tools nor  each other.</li>
</ul>
<p>In summary we entered the age of virtualization  and the cloud with both BSM and their supporting CMDB’s having failed at  monitoring and managing a static infrastructure where applications and  services largely stayed on dedicated hardware. In other words, before  virtualization and the dynamic data center it was impossible for anyone  in IT to see a problem and get told in a deterministic manner exactly  where the problem was and how to fix it.</p>
<p><strong>The Impact of Virtualization and the Cloud</strong></p>
<p>Since  holistic end-to-end monitoring of business services was essentially  broken (or not attainable) before virtualization, it is reasonable to  assume that virtualization and the cloud will only make this problem  worse. This will occur for the following reasons:</p>
<ol>
<li>Virtualization  increases workload density and the dynamic operation of workloads. This  will require both continuous mapping of application to infrastructure  dependencies and more more frequent (near real time) collection of  performance data. Just the requirements for real time mapping and real  time data completely overwhelm existing monitoring systems. Hyperic has a  good blog on this point <a onclick="javascript:_gaq.push(['_trackEvent','outbound-article','blog.hyperic.com']);" rel="nofollow" href="http://blog.hyperic.com/vfabric-hyperic-weaves-performance-management-into-cloud-applications/" target="_blank">here</a>.</li>
<li>Inferring  application performance from resource utilization statistics becomes  impossible. This was possible on physical hardware, but on hardware that  is shared via virtualization it no longers works. Hence the need for  Infrastructure <a title="Performance Management" href="http://www.virtualizationpractice.com/blog/?cat=9">Performance Management</a> solutions that measure Infrastructure Response Time. We expect Infrastructure <a title="Performance Management" href="http://www.virtualizationpractice.com/blog/?cat=9">Performance Management</a> solutions from vendors like <a title="Akorri" href="http://www.virtualizationpractice.com/blog/?page_id=1603">Akorri</a>, <a title="CA" href="http://www.virtualizationpractice.com/blog/?page_id=6234">CA</a> Technologies (<a title="CA" href="http://www.virtualizationpractice.com/blog/?page_id=6234">CA</a> Virtual Assurance), <a title="Virtual Instruments" href="http://www.virtualizationpractice.com/blog/?page_id=6476">Virtual Instruments</a>, and <a title="Xangati" href="http://www.virtualizationpractice.com/blog/?page_id=3551">Xangati</a> to form the foundation layer of whatever will replace BSM.</li>
<li>Application  will now get moved from cluster to cluster and ultimately from data  center to data center (private cloud – hybrid cloud – public cloud). APM  solutions will need to track the applications no matter where they go,  and seamlessly work across different IP networks. Leading virtualization  aware APM solutions like those from <a title="AppDynamics" href="http://www.virtualizationpractice.com/blog/?page_id=4724">AppDynamics</a>, <a title="BlueStripe" href="http://www.virtualizationpractice.com/blog/?page_id=2416">BlueStripe</a>, and <a title="New Relic" href="http://www.virtualizationpractice.com/blog/?page_id=1505">New Relic</a> meet these needs today and will likely form the APM layer of whatever replaces BSM.</li>
</ol>
<p>All  of the above together combine to create one new result for Systems  Management. That new result is that in the general case it will be  impossible to deterministically do root cause in a dynamic environment.  This was explored in detail in this <a href="http://www.virtualizationpractice.com/blog/?p=5915" target="_blank">post</a>.</p>
<p><strong>The Significance of the Integrien Acquisition</strong></p>
<p>The Integrien acquisition by <a title="VMware" href="http://www.virtualizationpractice.com/blog/?page_id=2983">VMware</a> is significant because it means that <a title="VMware" href="http://www.virtualizationpractice.com/blog/?page_id=2983">VMware</a> has recognized that only a dynamic, statistical, self-configuring,  and  self-learning approach can keep up with the rate of change in these new  dynamic IT environments. The self-learning approach simply means that  you feed the system the metrics that get collected about the system and  it figures out which ones are important, how the metrics are related to  each other, and lets you know when anomalies have occurred.</p>
<p>This  acquisition is all the more significant because this is not garden  variety technology. There have only ever been three companies this this  space. ProactiveNet was acquired by BMC a few years ago. <a title="Netuitive" href="http://www.virtualizationpractice.com/blog/?page_id=7123">Netuitive</a> has been around since the late 1990′s and it took the company until the  mid 2000′s before the product had matured into something that really  just worked when you plugged it in. Integrien is a fairly recent entry  in this field and is now part of <a title="VMware" href="http://www.virtualizationpractice.com/blog/?page_id=2983">VMware</a> – which leaves <a title="Netuitive" href="http://www.virtualizationpractice.com/blog/?page_id=7123">Netuitive</a> as the only remaining independent player.</p>
<p><strong>The New Dynamic BSM – Service Assurance</strong></p>
<p>Since  the old BSM is dead due to a brittle and difficult to update technology  approach it is reasonable to ask what will replace it. The answer is  most likely a set of Infrastructure <a title="Performance Management" href="http://www.virtualizationpractice.com/blog/?cat=9">Performance Management</a> tools (<a title="Akorri" href="http://www.virtualizationpractice.com/blog/?page_id=1603">Akorri</a>, <a title="CA" href="http://www.virtualizationpractice.com/blog/?page_id=6234">CA</a> Virtual Assurance, <a title="Virtual Instruments" href="http://www.virtualizationpractice.com/blog/?page_id=6476">Virtual Instruments</a>, <a title="Xangati" href="http://www.virtualizationpractice.com/blog/?page_id=3551">Xangati</a>) integrated with a set of next generation APM tools (<a title="AppDynamics" href="http://www.virtualizationpractice.com/blog/?page_id=4724">AppDynamics</a>, <a title="BlueStripe" href="http://www.virtualizationpractice.com/blog/?page_id=2416">BlueStripe</a>, <a title="New Relic" href="http://www.virtualizationpractice.com/blog/?page_id=1505">New Relic</a>)  vis these self learning technologies. When this occurs, we will have a  system that adapts on its own to changing conditions in the environment  leaving IT staff available to interpret results (and not raw monitoring  data). We will also have taken an important step towards dynamic service  assurance which was discussed in detail in this <a href="http://www.virtualizationpractice.com/blog/?p=5472" target="_blank">post</a>.</p>
<p><strong>Understanding and Evaluating these Technologies</strong></p>
<p>For  most IT professionals either they or someone on their staff can digg in  and understand how the technologies that they use work. However unless  you have an advanced degree in statistics and/or mathematics you are not  going to be able to dig an and decide for yourself based upon how these  products work which one you should choose. Rather what you should do is  apply the following criteria in making your selection:</p>
<ol>
<li>Decide  exactly what you want the product to do for you. These products are  extremely flexible. You can feed them every alarm that is generated by  all of your monitoring solutions and let them sort out the good ones  from the bad ones. Or you can feed them revenue per minute for one key  business application and let them figure what causes degradations in  revenue per minute.</li>
<li>Make sure that the product has connectors to  what you already use to collect metrics from your systems. These  products are not in the data collection business (with some exceptions).  They rely upon other products to collect data from them. They must  therefore be interfaced with your existing monitoring solutions.</li>
<li>How  hands off and plug and play will the product be in practice? This is  the key criteria to the long term value of such a solution to your  enterprise. Previous attempts at statistical approaches (neural nets)  failed because the product had to be “retrained” every time conditions  changed. Make sure that the product you select can automatically select  and weight the inputs that it bases decisions off of and these these  decisions are automatically updated over time. Self-learning needs to be  a continuous thing, not just a one time or periodic thing.</li>
<li>Make  sure that the product can handle time based (time series) as well as  event based data. Performance metrics tend to be time based, but many  performance problems are caused by configuration changes which are  events. Make sure that the product can cross-correlate configuration  change events with performance degradations.</li>
<li>Carefully assess  the scale of the solution. This means how many inputs can the solution  take per unit of time. Right now most of these solutions operate at 15  minute or 5 minute intervals. Monitoring a dynamic system may require  intervals of 10 or even 5 seconds (or perhaps even real time continuous  streams of monitoring data).</li>
</ol>
<p><strong>Summary</strong></p>
<p>Self-learning <a title="performance management" href="http://www.virtualizationpractice.com/blog/?cat=9">performance management</a> solutions like Integrien and <a title="Netuitive" href="http://www.virtualizationpractice.com/blog/?page_id=7123">Netuitive</a> are going to be absolutely an essential part of the migration to  dynamic data centers and IT as a Service. Once these dynamic data  centers scale out to the thousands of applications in a typical  enterprise, and scale up to address the most performance critical  applications, the rate of change in the environment will be too high for  legacy tools and manual administration to be able to keep. up. These  automated self-learning approaches will be the only way in which IT  Operations will be able to stay on top of these new environments while  staying within staffing and budget constraints.</p>
<p>Related posts:<ol>
<li><a href='http://martinliu.cn/2011/02/book-service-modelling.html' rel='bookmark' title='图书推荐《服务建模：原理与应用》'>图书推荐《服务建模：原理与应用》</a></li>
<li><a href='http://martinliu.cn/2011/05/let-remedy-ars-fly-2.html' rel='bookmark' title='让Remedy飞一会'>让Remedy飞一会</a></li>
<li><a href='http://martinliu.cn/2009/12/is-that-a-joke-of-remedy-developer.html' rel='bookmark' title='老美真的很扯，一个职位的帖子被顶了22次'>老美真的很扯，一个职位的帖子被顶了22次</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://martinliu.cn/2010/09/zt-bsm-dead.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

