前一篇拙作上传的时间已经过去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. Navicat for mysql 11.1.20激活

    由于最近工作太忙,一直没有机会分享自己在工作中遇到的困难,今天周日,在出去之前先分享下navicat(版本很重要navicat_trial_11.1.20.0.1449226634)激活. 刚开始我是 ...

  2. java将类和函数封装成jar,然后在别的项目中使用这个jar包

    本来想用idea安装的,不过用maven生成后发现jar有20,30M肯定不对,后来还是用eclipse生成了,方便很多 环境: eclipse luna,jdk1.8_112 1.生成jar包,首先 ...

  3. OpenSSL "heartbleed" 安全漏洞

    在 heartbleed 的官网上有关于 CVE-2014-0160 漏洞的详细信息,这是关于 OpenSSL 的信息泄漏漏洞导致的安全问题.改 Heartbleed bug 可以让互联网的任何人读取 ...

  4. node项目的基本构建流程或者打开一个node项目的流程

    1.  确立项目所需要的所有依赖.框架(比如bootstrap,vue,angular等) 2. 在项目的根目录下创建一个package.json文件,package.json文件是项目的最重要文件之 ...

  5. 基于Spring的最简单的定时任务实现与配置(一)

    朋友的项目中有点问题.他那边是Spring架构的,有一个比较简单的需要定时的任务执行.在了解了他的需求之后,于是提出了比较简单的Spring+quartz的实现方式. 注意本文只是讨论,在已搭建完毕的 ...

  6. thinkphp3.2.3 版本使用redis缓存添加认证

    我在使用thinkphp3.2.3的时候 发现如果是使用redis缓存 设置了认证的redis能连接成功 却无法 set 操作 ,检查发现是没有认证导致的  $redis->auth这一步没有, ...

  7. css实现选项卡

    <style> *{ margin: ; padding: ; text-decoration: none; list-style: none; outline:none; } .box{ ...

  8. Ubutnu16.04安装pytorch

    1.下载Anaconda3 首先需要去Anaconda官网下载最新版本Anaconda3(https://www.continuum.io/downloads),我下载是是带有python3.6的An ...

  9. IP命令

    ip命令是Linux下较新的功能强大的网络配置工具. 1 功能 ip命令用来显示或操纵Linux主机的路由.网络设备.策略路由和隧道. 2用法 Usage: ip [ OPTIONS ] OBJECT ...

  10. 12.exception对象

    excepton对象是一个异常对象,当一个页面在运行过程中发生了异常,就产生了这个对象,如果一个jsp页面要应用此对象,就必须把isErrorPage设置为true,否则无法编译.它实际上是java. ...