Skip to content

Latest commit

 

History

History

lab01

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

实验一、CAT本地部署

注意!

本实验文档仅供学习参考!大众点评CAT近期(2018下半年)更新比较频繁,已经升级到3.0,增加了不少新特性,建议大家后续跟进采用CAT新版本,生产级服务器部署请直接建议参考其官方文档

CAT 3.0的两个注意点:

  • mysql请用6.x或7.x版本,暂不要用8.x版本,会有兼容性问题。
  • Java应用配置方式和2.0不同,参考java客户端使用的Initialization部分。

实验步骤

1. 下载CAT源码

git clone https://github.com/dianping/cat.git

2. 构建cat war包

mvn clean install -DskipTests

{CAT_SRC}/cat-home/target/cat-alpha-2.0.0.war重命名为cat.war

3. 创建数据库

在mysql中创建cat数据库,导入脚本{CAT_SRC}/script/Cat.sql

4. 拷贝并更新配置文件

在CAT运行盘建data\appdatas\cat目录,将{CAT_SRC}/script/下列配置文件:

  • CAT客户端配置文件client.xml
  • CAT服务器数据源配置文件datasources.xml
  • CAT服务器配置文件server.xml

都复制到data\appdatas\cat目录下:

本地配置案例如下:

CAT客户端配置文件client.xml

<?xml version="1.0" encoding="utf-8"?>

<config mode="client" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="config.xsd">
	<servers>
		<!-- Local mode for development -->
		<server ip="192.168.7.70" port="2280" http-port="8080" />
		<!-- If under production environment, put actual server address as list. -->
		<!-- 
			<server ip="192.168.7.71" port="2280" /> 
			<server ip="192.168.7.72" port="2280" /> 
		-->
	</servers>
</config>

CAT服务器数据源配置文件datasources.xml

<?xml version="1.0" encoding="utf-8"?>

<data-sources>
	<data-source id="cat">
		<maximum-pool-size>3</maximum-pool-size>
		<connection-timeout>1s</connection-timeout>
		<idle-timeout>10m</idle-timeout>
		<statement-cache-size>1000</statement-cache-size>
		<properties>
			<driver>com.mysql.jdbc.Driver</driver>
			<url><![CDATA[jdbc:mysql://127.0.0.1:3306/cat]]></url>
			<user>root</user>
			<password>mysql</password>
			<connectionProperties><![CDATA[useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties>
		</properties>
	</data-source>
	<data-source id="app">
		<maximum-pool-size>3</maximum-pool-size>
		<connection-timeout>1s</connection-timeout>
		<idle-timeout>10m</idle-timeout>
		<statement-cache-size>1000</statement-cache-size>
		<properties>
			<driver>com.mysql.jdbc.Driver</driver>
			<url><![CDATA[jdbc:mysql://127.0.0.1:3306/cat]]></url>
			<user>root</user>
			<password>mysql</password>
			<connectionProperties><![CDATA[useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties>
		</properties>
	</data-source>
</data-sources>

CAT服务器配置文件server.xml

<?xml version="1.0" encoding="utf-8"?>

<!-- Configuration for development environment-->
<config local-mode="false" hdfs-machine="false" job-machine="true" alert-machine="false">
	
	<storage  local-base-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="7" local-logivew-storage-time="7">
	
	</storage>
	
	<console default-domain="Cat" show-cat-domain="true">
		<remote-servers>127.0.0.1:8080</remote-servers>		
	</console>
		
</config>

5. 部署war包

  1. cat.war部署到tomcat的webapps目录下,启动tomcat
  2. 打开cat控制台http://localhost:8080/cat
  3. 配置全局路由,右上角配置,使用catadmin/admin登录,左边导航全局告警配置->客户端路由

本地路由配置案例

<?xml version="1.0" encoding="utf-8"?>
<router-config backup-server="192.168.7.70" backup-server-port="2280">
   <default-server id="192.168.7.70" weight="1.0" port="2280" enable="true"/>
</router-config>

6. 校验CAT正常

通过导航State查看CAT状态,正常时显示CAT服务端正常字样,且CAT服务器会对自身进行监控,可通过导航Transaction查看。

如果服务器启动有问题,则可以通过查看日志解决:

  1. {CAT_HOME_DISK}:\data\applogs\cat下面的CAT服务器日志
  2. {TOMCAT_HOME}\logs下面的tomcat日志

部署参考

CAT@github