美团CAT服务器(windows版)搭建踩坑之路

一、踩坑

坑一:git上的资源下载不下来

不知道最近git咋的,下啥都下载到一半然后中断,中断重试又重新下载,周而复始了好久还是下载不了,网上说的用git客户端下载、什么镜像下载,我试过,我本地不行,不知道其他人行不行,然后几经周折,终于找到了一个cat项目,下载完后,还要拉分支cat-mvn-repo的资源,不然打包不了,maven里面需要这些包,这里面又耗费了大量时间去下载

坑二:安装插件mvn cat:install,根本就安装不了

看了好多博客,说要执行这个命令来安装插件,执行了好多次一直报错,根本下载不了,无奈之下到处找方法,还有的说3.0.0安装不了,切换到2.0.0就可以了,我也试过,根本就不行,后面才发现这个插件可以不用安装,它的主要作用就是去找数据库的连接信息,如果你也遇到这种问题,这步可以不弄的

坑三:创建\data\appdatas\cat的坑

网上有的说在tomcat的根目录下面创建这个目录,然后放入资源,我创建了,根本没用,一直报找不到数据源,让我苦苦折腾了好久,最后发现应该放在tomcat所在盘符的根目录,比如tomcat在D盘,那就应该在D盘的目录中创建文件

二、搭建cat完整步骤

1、资源准备、环境要求

需要准备好cat项目,cat-mvn-repo两个资源
地址:https://github.com/dianping/cat(cat)
https://codeload.github.com/dianping/cat/zip/mvn-repo(cat-mvn-repo)
反正git上不好下载,老是断,我看看能不能上传资源,刚写博客不久

搭建环境
· git (拉源码)
· jdk6+
· maven3+
· mysql5+ (CAT web后台数据库使用mysql)
· tomcat7+ (我们会使用tomcat来跑cat-home)

2、打包、配置

打包

用管理员身份运行cmd,进入到我们的cat-master目录,执行命令

mvn clean install -DskipTests

打包的时候可能不是一帆风顺的,如果报哪个包下载失败,就去对应pom文件中中切换你maven中有的版本,例如:我之前打包2.4就不行,我就切换到2.5,可能有多个报错,依次解决就行了
在这里插入图片描述
在这里插入图片描述

配置资源

1、在项目中分别找到以下文件 client.xml、datasources.xml和server.xml三个文件
然后在你项目位置的根目录(不是tomcat的根目录)下创建文件夹\data\appdatas\cat,将这三个资源放进去
其中主要配置DataSource.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.01:3306/cat]]></url>  <!-- 请替换为真实数据库URL及Port  -->
            <user>root</user>  <!-- 请替换为真实数据库用户名  -->
            <password>root</password>  <!-- 请替换为真实数据库密码  -->
            <connectionProperties><![CDATA[useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties>
        </properties>
    </data-source>
</data-sources>

Server.xml

<?xml version="1.0" encoding="utf-8"?>
<server-config>
   <server id="default">
      <properties>
         <property name="local-mode" value="true"/>
         <property name="job-machine" value="true"/>
         <property name="send-machine" value="false"/>
         <property name="alarm-machine" value="true"/>
         <property name="hdfs-enabled" value="false"/>
         <property name="remote-servers" value="172.19.16.153:8080"/>
      </properties>
      <storage local-base-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="2" local-logivew-storage-time="1" har-mode="true" upload-thread="5">
         <hdfs id="dump" max-size="128M" server-uri="hdfs://127.0.0.1/" base-dir="/user/cat/dump"/>
         <harfs id="dump" max-size="128M" server-uri="har://127.0.0.1/" base-dir="/user/cat/dump"/>
         <properties>
            <property name="hadoop.security.authentication" value="false"/>
            <property name="dfs.namenode.kerberos.principal" value="hadoop/dev80.hadoop@testserver.com"/>
            <property name="dfs.cat.kerberos.principal" value="cat@testserver.com"/>
            <property name="dfs.cat.keytab.file" value="/data/appdatas/cat/cat.keytab"/>
            <property name="java.security.krb5.realm" value="value1"/>
            <property name="java.security.krb5.kdc" value="value2"/>
         </properties>
      </storage>
      <consumer>
         <long-config default-url-threshold="1000" default-sql-threshold="100" default-service-threshold="50">
            <domain name="cat" url-threshold="500" sql-threshold="500"/>
            <domain name="OpenPlatformWeb" url-threshold="100" sql-threshold="500"/>
         </long-config>
      </consumer>
   </server>
   <server id="172.19.16.153">
      <properties>
         <property name="job-machine" value="true"/>
         <property name="send-machine" value="false"/>
         <property name="alarm-machine" value="true"/>
      </properties>
   </server>
</server-config>

参数说明:
server节点:代表一台机器的配置。如果id为default,代表默认配置;如果id为ip,代表该台服务器的配置

local-mode : 定义服务是否为本地模式(开发模式),在生产环境时,设置为false,启动远程监听模式。默认为 false;
hdfs-machine : 定义是否启用HDFS存储方式,默认为 false;
job-machine : 定义当前服务是否为报告工作机(开启生成汇总报告和统计报告的任务,只需要一台服务机开启此功能),默认为 false;
alarm-machine : 定义当前服务是否为报警机(开启各类报警监听,只需要一台服务机开启此功能),默认为 false;
send-machine : 定义当前服务告警是否发送(当时为了解决测试环境开启告警线程,但是最后告警不通知,此配置后续会逐步去除,建议alarm-machine开启为true的时候,这个同步为true)
storage节点: 定义数据存储配置信息

local-report-storage-time : 定义本地报告存放时长,单位为(天)
local-logivew-storage-time : 定义本地日志存放时长,单位为(天)
local-base-dir : 定义本地数据存储目录
hdfs : 定义HDFS配置信息,便于直接登录系统
server-uri : 定义HDFS服务地址
console : 定义服务控制台信息
remote-servers : 定义HTTP服务列表,(远程监听端同步更新服务端信息即取此值)
ldap : 定义LDAP配置信息(这个可以忽略)
ldapUrl : 定义LDAP服务地址(这个可以忽略)

client.xml

<?xml version="1.0" encoding="utf-8"?>
<config mode="client">
    <servers>
        <server ip="172.19.16.153" port="2280" http-port="8080"/>
    </servers>
</config>

2、在数据库中创建cat数据库
然后执行sql文件,sql文件位置
在这里插入图片描述

项目启动

进入项目,拷贝/cat-home/target/cat-alpha-1.3.6-SNAPSHOT.war这个文件到tomcat的webapps里面,修改名字成:cat.war。然后启动tomcat
最后在浏览器里面输入http://localhost:8080/cat/r,就可以看到如下界面了
在这里插入图片描述

追加:
1、如果是其他端口的话需要在这里加上端口号,不然会一直报500
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值