前一篇拙作上传的时间已经过去2个月了,中间并不是闲着。。。主要是忙着学习各种组件的安装,写了几篇安装心得存在硬盘里。

最近尝试了点评开源的CAT监控平台的安装,并且希望能够引入到工作中。在部署实践的过程中,参考了前辈和其他论坛上的大作,在成功的同时,也记录一下自己的足迹。

以下为安装部署的过程,希望也能够给其他朋友带来帮助:

系统和软件:

CAT GitHub网址:https://github.com/dianping/cat

Centos 7

jdk-8u131-linux-x64.gz

mysql57-community-release-e17-8

apache-maven-3.3.9

apache-tomcat-8.5.16.tar.gz:经测试多个版本的Tomcat均可用,包括Tomcat 9

cat-master.zip

简述安装过程:

(1)系统准备:安装git、jdk、maven、mysql、tomcat(可以不装)

(2)CAT部署:

1、Clone CAT:git clone https://github.com/dianping/cat.git

2、在CAT目录下,用maven构建项目:mvn clean install -DskipTests

3、配置CAT的环境:进入CAT目录,运行:mvn cat:install

注(需要对/data/appdatas/cat和/data/applogs/cat有读写权限)

4、运行CAT,进入cat-home目录,运行:mvn jetty:run

一、系统准备

1. Yum安装基础工具:

# yum install -y git wget unzip
# git --version
git version 1.8.3.

2. 安装JDK

先查看系统中是否存在openJDK,如果存在,将其删除:

rpm -qa | grep java

如果显示如下信息:
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

卸载:

rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 还有一些其他的命令:
rpm -qa | grep gcj
rpm -qa | grep jdk

如果出现找不到openjdk source的话,那么还可以这样卸载

yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
yum -y remove java java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 <1># rpm -qa|grep jdk ← 查看jdk的信息或直接执行

# rpm -q jdk

# java -version <2># rpm -qa | grep gcj ← 确认gcj的版本号 <3># yum -y remove java-1.4.2-gcj-compat ← 卸载gcj

确保系统中没有OpenJDK后,下载JDK 1.8.0.tar.gz文件,上传到VM,再执行以下内容:

# mkdir /usr/local/jdk
# tar -xvf jdk-8u131-linux-x64.tar.gz -C /usr/local/jdk/

配置环境变量:

# vim /etc/profile

增加以下配置:
#java
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_131
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

执行以下语句,使环境变量生效;避免重启系统:

# source /etc/profile

验证Java安装成功:

# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

3. 安装Maven

下载Maven,上传到VM,再执行以下内容:

# mkdir /usr/local/maven
# tar -xvf apache-maven-3.3.9-bin.tar.gz -C /usr/local/maven

配置maven环境变量

# vim /etc/profile

添加以下内容:
#Maven
export M2_HOME=/usr/local/maven/apache-maven-3.3.9
export M2=$M2_HOME/bin
export PATH=$PATH:$M2 # source /etc/profile

Maven验证:

# mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/maven/apache-maven-3.3.9
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/local/jdk/jdk1.8.0_131/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-514.16.1.el7.x86_64", arch: "amd64", family: "unix"

4. 安装MySQL

Mysql数据库安装过程如下:

下载mysql的repo源(CentOS 7.2的yum源中默认没有mysql,要先下载mysql的repo源):

# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm

安装mysql57-community-release-el7-8.noarch.rpm包:

# rpm -ivh mysql57-community-release-el7-8.noarch.rpm  --nodeps --force

安装这个包后,会获得两个mysql的yum repo源:

# cd /etc/yum.repos.d
# ls -l 确认存在下列两个repo源文件:
mysql-community.repo
mysql-community-source.repo

安装mysql:

# yum install -y mysql-server

设置mysql服务开机启动:

# systemctl enable mysqld

启动mysql服务:

# systemctl start mysqld

查看MySQL服务是否已启动:

# systemctl status mysqld

重置root密码:

MySQL5.7会在安装后为root用户生成一个随机密码,而不是像以往版本的空密码。 可以安全模式修改root登录密码或者用随机密码登录修改密码。

下面用随机密码方式:

MySQL为root用户生成的随机密码通过mysqld.log文件可以查找到:

# grep 'temporary password' /var/log/mysqld.log

# mysql -u root -p
mysql> Enter password: (输入刚才查询到的随机密码)

修改root用户密码:(MySQL的密码策略比较复杂,过于简单的密码会被拒绝)。首先修改安全策略,避免密码被拒绝:

mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=4;

重置用户密码:

mysql> alter user 'root'@'localhost' identified by 'root-1234';

完成后,保存退出:

mysql> flush privileges;
mysql> quit;

使用刚刚设置的新密码登录:

# mysql -u root -p

如果进行操作出现下面的提示:
You must reset your password using ALTER USER statement before executing this statement.

就再设置一遍密码:
mysql> set password = password('root-1234');

开放3306端口

允许使用用户名root密码root-1234从任何主机连接到mysql服务器。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root-1234' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;
mysql> quit;

5. 安装Tomcat

在官网下载Tomcat 8.5,上传VM。

# mkdir /usr/local/tomcat
# tar -xvf apache-tomcat-8.5.16.tar.gz -C /usr/local/tomcat/ # cd /usr/local/tomcat/
# ln -sv apache-tomcat-8.5.16 tomcat8

二. 安装CAT

上面已经把所需要的环境准备好,现在来处理CAT。

注:可以直接从第11行(# git clone https://github.com/dianping/cat.git)开始操作,此操作会自动下载cat文件夹及里面的内容。

为了避免直接安装CAT报错,先操作下面的命令创建文件夹,并赋予读写权限。

# mkdir -p /data/appdatas/cat
# chmod 777 /data/appdatas/cat # mkdir -p /data/applogs/cat
# chmod 777 /data/applogs/cat

解压下载的cat-master.zip,开始安装:

# unzip cat-master.zip
# cp -r cat-master /opt/cat
# cd /opt/cat/

在CAT目录下,用maven构建项目:

# mvn clean install -DskipTests

[INFO] Scanning for projects...

[WARNING]

[WARNING] Some problems were encountered while building the effective model for com.dianping.cat:cat-home:war:1.3.6

[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.

[WARNING] ..............................略

如果mvn clean install -DskipTests不成功,使用下面命令将mvn-repo下的jar包复制到本机maven仓库,直到最后显示100%

# cd /opt/
# git clone https://github.com/dianping/cat.git Initialized empty Git repository in /cat/cat/.git/ remote: Counting objects: 153895, done. remote: Total 153895 (delta 0), reused 0 (delta 0), pack-reused 153895 Receiving objects: 100% (153895/153895), 77.30 MiB | 32 KiB/s, done. Resolving deltas: 100% (69288/69288), done.

再次用maven构建项目,提示100%,完成:

# cd cat

# mvn clean install -DskipTests

.............略

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 01:07 h

[INFO] Finished at: 2016-05-19T16:47:05+08:00

[INFO] Final Memory: 33M/173M

[INFO] ------------------------------------------------------------------------

配置CAT的环境,填写数据库地址、用户名、密码;如果无须更改,直接按回车键:

# mvn cat:install

Please input jdbc url:[jdbc:mysql://127.0.0.1:3306]

Please input username:root

Please input password:[]root-1234

最后,在cat-home下运行mvn jetty:run &:

# cd cat-home

# pwd
/opt/cat/cat-home # mvn jetty:run &

在浏览器中输入:http://localhost:2281/cat,来访问CAT。

三. 下面是tomcat下运行cat的操作:

在/cat-home/target下有个cat-alpha-1.4.0.war,将此文件复制到Tomcat的webapps目录下,并重命名为cat.war

# cd target

# pwd
/opt/cat/cat-home/target # cp cat-alpha-1.4.0.war /usr/local/tomcat/tomcat8/webapps/cat.war

进入tomcat的bin文件夹,启动tomcat:

# cd /usr/local/tomcat/tomcat8/bin

# ./startup.sh
Using CATALINA_BASE: /usr/local/tomcat/tomcat8
Using CATALINA_HOME: /usr/local/tomcat/tomcat8
Using CATALINA_TMPDIR: /usr/local/tomcat/tomcat8/temp
Using JRE_HOME: /usr/local/jdk/jdk1.8.0_131/jre
Using CLASSPATH: /usr/local/tomcat/tomcat8/bin/bootstrap.jar:/usr/local/tomcat/tomcat8/bin/tomcat-juli.jar
Tomcat started.

在浏览器中输入:http://localhost:8080/cat,来访问CAT。

Centos 7部署大众点评CAT(一)——单服务器部署的更多相关文章

  1. Centos 7部署大众点评CAT(二)——双服务器部署

    在单机上部署CAT,只是在做实验,在生产环境则不可能只用单台服务器监控多个应用. 下面简单介绍一下双服务器的部署,各位有更多硬件资源作为监控服务端的朋友,如果对CAT集群有兴趣,可以参看这篇拙作. 资 ...

  2. 大众点评cat实时监控简介及部署

    简介 背景 CAT(Central Application Tracking)是由吴其敏(前大众点评首席架构师,现携程架构负责人)主导设计基于Java开发打造的实时应用监控平台,为大众点评网提供了全面 ...

  3. 大众点评CAT开源监控系统剖析

    参考文档: 大众点评的实时监控系统分析(一) CAT_source_analyze 透过CAT,来看分布式实时监控系统的设计与实现 深度剖析开源分布式监控CAT [分布式监控CAT] Client端源 ...

  4. 【转】大众点评CAT开源监控系统剖析

    https://www.cnblogs.com/yeahwell/p/cat.html 参考文档: 大众点评的实时监控系统分析(一) CAT_source_analyze 透过CAT,来看分布式实时监 ...

  5. 搭建大众点评CAT监控平台

    CAT(Central Application Tracking)是基于Java开发的实时应用监控平台,包括实时应用监控,业务监控.关于CAT的具体介绍可移步到CAT官网进行查阅. 1. 环境清单 C ...

  6. 大众点评cat监控平台搭建

    参考官方文档:https://github.com/dianping/cat/wiki/readme_server 1.数据库相关 (1)创建数据库cat,并执行以下sql创建相关表: CREATE ...

  7. 大众点评cat系统的搭建笔记

    项目地址:https://github.com/dianping/cat 编译步骤: 这个项目比较另类,把编译需要的jar包,单独放在git分支mvn-repo里了,而且官方文档里给了一个错误的命令提 ...

  8. 一个tomcat下部署多个项目或一个服务器部署多个tomcat

    最近需要把两个项目同时部署到服务器上,于是研究了一下,页借鉴了很多别人的方法,把过程记录下来,以儆效尤. 目录: 1,一个tomcat下同时部署两个项目(多个项目可以参考) 1.1项目都放在webap ...

  9. 深入详解美团点评CAT跨语言服务监控(一) CAT简介与部署

    前言: CAT是一个实时和接近全量的监控系统,它侧重于对Java应用的监控,除了与点评RPC组件融合的很好之外,他将会能与Spring.MyBatis.Dubbo 等框架以及Log4j 等结合,支持P ...

随机推荐

  1. 一些java考过的测试题和自己制作模拟服务端和客户端

    媒体 1,java环境变量: PATH: .;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;  CLASSPATH: .;%JAVA_HOME%\jre\lib\rt.jar ...

  2. 基于C#的接口自动化测试(一)

    其实就是找个地方然后给关键的代码做个笔记什么的-- 字符串访问API接口,访问方法为POST: string url = URL; string RequestParam = Param; strin ...

  3. Bash环境配置文件

    一.环境配置文件读取优先级 其中~/.bash_profile,~/.bash_login,~/.profile三个文件只有一个有效,查找优先级从左至右降低.bash会一直检查是否有~/.bashrc ...

  4. maven项目转成web项目没有生成WebContent目录

    有时候建立maven项目转成web项目没有生成WebContent目录,此时把Dynamic web module 去掉勾选,然后ok,再点开项目的properties,再选中Dynamic web  ...

  5. 关于EasyUI中的Tree

    2017年6月21日,天气阴.心情比较沉重. 近期由于毕设的事情,三周不写代码了.这周测试提交了一些BUG,于是开始着手处理,还真的是熟能生巧,三周的功夫就感觉有点生疏.其中有一个BUG就是角色对应的 ...

  6. DataTables warning (table id = 'DataTables_Table_0');错误解决办法!

    这个错误是table表格引起的,我是将条件语句和<td>标签做了调整后,消除的,个人认为是数据缺失引起的.

  7. V9发布内容时保留框架<iframe></iframe>

    有些时候,发布文章内容的时候需要用到<iframe></iframe>框架站外内容最近在发布内容时就遇到这个问题,<iframe></iframe>给转 ...

  8. Windows下安装Python扩展模块提示Unable to find vcvarsall.bat的问题

    本文内容 Unable to find vcvarsall.bat的问题描述 问题分析 总结 提示: 如果你只是想知道自己需要安装哪个版本的Visual Studio请直接查看本文最后一个小节的内容. ...

  9. select change事件给其它元素赋值,本select的value或tex

    select change事件给其它元素赋值,本select的value或textonchange='$("#areaname").val($("option:selec ...

  10. BigDecimal四舍五入使用总结

    //BigDecimal四舍五入double f1 = new BigDecimal(1).setScale(2,RoundingMode.HALF_UP).doubleValue();//转化成字符 ...