1.下载对应diamond代码
Diamond的SVN代码库地址为:http://code.taobao.org/svn/diamond/trunk;最新版本是r20,但与TDDL匹配的版本是r16,因此我们在check时需要指定这个版本。
点击show log可以查看diamond的版本信息,直接点击OK会检出目前最新diamond版本r20
选择图中的r16版本点击OK
2.修改diamond相应配置
a).删除版本中的antx.properties文件
b)pom.xml中删除antx.properties段的配置
<filters>
<filter>${user.home}/antx.properties</filter>
</filters>
c)由于diamond依赖maven,进入diamond的trunk目录运行mvn clean package -Dmaven.test.skip命令,如图所示
d) 下图表示diamond构建成功,编译成功会生成若干个jar包和一个war包,其中diamond-server/target下的war包则是用来部署的、
e)配置diamond数据表
安装mysql数据库(diamond的数据默认是放在mysql中的,oracle亦可,但是需要大量修改diamond中的源码)
安装好mysql后,创建diamond数据库,运行如下sql
create database diamond; grant all on diamond.* to zh@’%’ identified by ‘abc’; CREATE TABLE `config_info` ( `id` bigint(6) NOT NULL AUTO_INCREMENT, `data_id` varchar(255) NOT NULL DEFAULT '', `group_id` varchar(128) NOT NULL DEFAULT '', `content` longtext NOT NULL, `md5` varchar(32) NOT NULL DEFAULT '', `src_ip` varchar(20) DEFAULT '', `src_user` varchar(20) DEFAULT NULL, `gmt_create` datetime NOT NULL DEFAULT '2015-11<span style="font-family: Arial, Helvetica, sans-serif;">-05 00:00:00',</span>
`gmt_modified` datetime NOT NULL DEFAULT '2015-11-05 00:00:00', PRIMARY KEY (`id`), UNIQUE KEY `uk_config_datagroup` (`data_id`,`group_id`) ) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=gbk;
db.url=jdbc:mysql://127.0.0.1:3306/diamond?characterEncoding=utf8&connectTimeout=1000&autoReconnect=true db.user=zh db.password=abc db.initialSize=10 db.maxActive=150 db.maxIdle=50 db.maxWait=3000 db.poolPreparedStatements=true
e)部署diamond-server
将编译好的diamond-server.war投放到tomcat的webapp目录下,运行bin/startup.bat启动tomcat,确保生成app中生成的jdbc.properies和user.properies是正确的,然后访问http://[IP]:8080/diamond-server/ 可以进入diamond管理页面,访问的用户名和密码为webapps/diamond-server/WEB-INF/classes/user.properties中设置的用户名密码(user=123,左边为用户名,右边为密码),如果出现问题,可以查看webapps/diamond-server/WEB-INF/logs下的日志查找原因。
成功进入后的UI如图所示:
其中配置信息管理用于增删改查配置信息;分组管理会出错(在r16版本中缺少相应的逻辑处理);权限管理用于修改登录用户。
我们在配置信息管理中增加一条测试信息:
dataId和Group如图所示,content随便写
f) 部署http server。http server给用户用来查找diamond-server,客户端默认访问网址http://a.b.c:8080/diamond-server/diamond 来获取数据。一般来讲,http server和diamond server是部署在不同机器上的,这里简单起见,将二者部署在同一个机器下的同一个tomcat的同一个应用中,注意,如果部署在不同的tomcat中,端口号一定是8080,不能修改(所以必须部署在不同的机器上)。
在步骤e中的diamond-server文件夹下建立diamond文件,并在本地host中写入diamond-server的IP地址:一行一个,如127.0.0.1
可以尝试访问 http://a.b.c:8080/diamond-server/diamond 测试地址是否生效。
创建diamond文件,写入ip地址
修改hosts文件,C:\Windows\System32\drivers\etc
访问http://a.b.c:8080/diamond-server/diamond 正确情况效果如图所示
配置a.b.c的原理及相关配置可以修改,端口也可不为8080,具体请修改diamond-util中的Constants.java,如图所示