前一篇拙作上传的时间已经过去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. htm语言的语法基础及规则

    HTML的主要语法是元素和标签.元素是符合DTD(文档类型定义)的文档组成部分,如title(文档标题).IMG(图象).table(表格)等等.元素名不区分大小写的.HTML用标签来规定元素的属性和 ...

  2. Docker 网络命令

    docker network create docker network connect docker network ls docker network rm docker network disc ...

  3. ActiveMQ 和消息简介

    Apache ActiveMQ 是远程系统间进行通信的消息代理,实现了 JMS(Java Message Service,Java 消息服务).尽管 ActiveMQ 是使用 Java 写的,但是其提 ...

  4. Java对象与类中的一个小练习

    一直在Eclipse里做练习.是做一个练习,执行一个的那种.刚刚学习了Java的对象与类,练习中把类和执行放在同一包下的两个.java文件里面了.是可以执行的.(Get) 相关代码: public c ...

  5. ionic中应用sass

    在学习ionic过程中看到sass,总结了一下基本用法和问题解决办法1.首先需要一个ionic项目,并执行下面的命令ionic start CustomSass blank && cd ...

  6. jenkins跑maven项目的时候报错,看评论

    Started by user admin Building in workspace /var/jenkins_home/workspace/helloworld [WS-CLEANUP] Dele ...

  7. php后台拼接输出table表格

    <?php header("Content-type:text/html;charset=utf-8"); $str=''; $str.='<table border= ...

  8. memcached使用文档

    使用memcached进行内存缓存 通常的网页缓存方式有动态缓存和静态缓存等几种,在ASP.NET中已经可以实现对页面局部进行缓 存,而使用memcached的缓存比ASP.NET的局部缓存更加灵活, ...

  9. Example011表单中修改内容

    <!-- 实例011表单中修改内容的方法 --> <!DOCTYPE html> <html lang="en"> <head> & ...

  10. css样式表。作用是美化HTML网页.

    样式表分为:(1)内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余多. 如:<p style="font-size:10px">内联样式表</p&g ...