一、SonarQubeServer

1、前提

安装好mysql5.7和jdk1.8。

(1)安装Mysql

create user 'sonar'@'localhost' identified by 'sonar';

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

grant all privileges on sonar.* to 'sonar'@'localhost';

mysql -uroot -p123456

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE USER 'sonar' IDENTIFIED BY 'sonar123';

GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar123';

GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar123';

FLUSH PRIVILEGES;

#mysql设置:一旦所有的SonarQube表都使用了InnoDB引擎,首先要做的就是使用innodb_buffer_pool_size参数为你的MySQL实例分配最大数量的RAM,并给参数至少15Mb query_cache_size

#检查mysql引擎,确保为InnoDB

show engines;

#查看缓存开启状况

SHOW STATUS LIKE 'qcache%';

show variables like '%query_cache%';

#设置缓存

vi /etc/my.cnf

[mysqld]

character_set_server=utf8

query_cache_type=1

query_cache_size=32M

#重启

service mysqld restart

2安装JDK8

2 进入到目录 /usr/local/ 中:

cd /usr/local/

3 创建目录 tools:

mkdir -p tools

4 进入到目录 /usr/local/tools 中:

cd tools/

5 下载 jdk-8u91-linux-x64.tar.gz

wget http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808/jdk-8u161-linux-x64.tar.gz?AuthParam=1521514537_5997ca9bc07655e6b192a38bc9d18532

6 解压缩 jdk-8u161-linux-x64.tar.gz 文件:

tar -zxvf jdk-8u161-linux-x64.tar.gz

7 返回到上一级并创建 /usr/local/jdk 目录:

cd ..

mkdir -p jdk

8 进入到 tools 目录后将 jdk1.8.0_91 移动到 jdk 目录中:  cd tools  mv jdk1.8.0_161/ ../jdk/

9 打开 /etc/ 目录下的 profile 文件:

vim /etc/profile

将如下代码追加到 profile 文件末尾:

# idea - jdk8 settings start 2016-05-01

JAVA_HOME=/usr/local/jdk/jdk1.8.0_161

JRE_HOME=$JAVA_HOME/jre

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/dt.jar

export JAVA_HOME JRE_HOME PATH CLASSPATH

# idea - jdk8 settings end - 2016-05-01

按 Esc 键、输入 wq! 回车,保持并退出。

10 即可启用新的配置:  source /etc/profile

11 输入 java -version 查看 JDK 的版本:

[root@iZ94hws2fzlZ jdk1.8.0_91]# java -version

java version "1.8.0_91"

Java(TM) SE Runtime Environment (build 1.8.0_91-b14)

Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

2、下载与准备

(1)环境准备

系统参数需要满足下述要求

  • sonarqube一定不能在root帐户下运行
  • vm.max_map_count 大于或等于 262144
  • fs.file-max 大于或等于 65536
  • 运行SonarQube的用户至少可以打开 65536个 文件描述符
  • 运行SonarQube的用户可以打开至少2048个线程
  • seccomp已被编译 进内核

根据需要执行下述命令以使内核参数符合sonar安装需求

#可以使用以下命令查看这些值:

sysctl vm.max_map_count

sysctl fs.file-max

ulimit -n

#可以通过以root身份运行以下命令来为当前会话动态设置它们:

sysctl -w vm.max_map_count=262144

sysctl -w fs.file-max=65536

ulimit -n 65536

#为了更永久设置这些值,则必须修改/etc/sysctl.d/99-sonarqube.conf(或/etc/sysctl.conf文件)#文件末尾添加下述两行

vi /etc/sysctl.conf

vm.max_map_count=262144

fs.file-max=65536

#在/etc/profile文件末尾添加ulimit -n 65536

vi /etc/profile

ulimit -n 65536#保存后运行#source /etc/profile 使其生效

source /etc/profile

2下载

[root@node3 ~]# wget  https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.7.2.zip

3解压

[root@node3 ~]# unzip sonarqube-6.7.2.zip -d /opt/

4增加用户sonar

[root@node3 ~]# useradd sonar

[root@node3 ~]# chown -R sonar /opt/sonarqube-6.7.2/

3、编辑sonarqube配置文件

  sonarqube-6.7]# vim conf/sonar.properties

    保存,退出;

4、运行脚本启动服务

sonarqube-6.7]# su sonar ./bin/linux-x86-64/sonar.sh start   //以普通用户起服务,不然es启动会报错,用法:console、start、status、stop...

   sonarqube-6.7]# su sonar ./bin/linux-x86-64/sonar.sh status  

    注意:这里立即查看状态,短时间内意义不大,因为一开始显示running,并不代表会一定在后面的时间内running!

       也就是说,在启动彻底完成前不可信!什么叫启动"彻底完成"? 见下面:  

   再次确认:

   至此,SonarQube启动成功!

排错说明:可以先跟着sonar.log日志,如果报了es错误,可以去查看es.log;如果报了web错误,那么就是查看web.log。

     都可以在日志里有迹可寻。(es.log,web.log跟sonar.log在同一个目录下)

5、登录web端

 在浏览器输入:http:// IP:PORT

初始用户:admin

初始密码:admin

    登录后,可以点击自己账户修改密码。

6、汉化

#添加汉化插件

#从https://docs.sonarqube.org/display/PLUG/Plugin+Library下载汉化插件移动至指定目录即可

sonar-l10n-zh-plugin-1.19.jar

放在/sonarqube-6.7.2/extensions/plugins 目录中

#重启sonar

cd /opt/sonarqube-6.7.2/bin/linux-x86-64/

./sonar.sh restart

二、SonarQubeScanner

1、下载

sonar-scanner-3.0.3.778-linux.zip

2、解压

没有unzip的话,先安装unzip

yum install -y unzip

unzip sonar-scanner-3.0.3.778-linux.zip

3、修改配置文件

sonar-scanner-3.0.3.778-linux/conf/sonar-scanner.properties

#----- Default SonarQube server

sonar.host.url=http://localhost:9000

#----- Default source code encoding

sonar.sourceEncoding=UTF-8

4、设置环境变量

/etc/profile文件末尾加入下面三句:

SONARSCANNER_HOME=/home/sonar-scanner-3.0.3.778-linux/bin PATH=$PATH:$SONARSCANNER_HOME

export SONARSCANNER_HOME PATH

启用新的配置:

source /etc/profile

5、检查sonar-scanner安装是否成功

检查sonarscanner是否配置成功:

sonar-scanner -h

出现如下信息表示安装配置成功:

sh-4.2# sonar-scanner -h

INFO:

INFO: usage: sonar-scanner [options]

INFO:

INFO: Options:

INFO:  -D,--define <arg>     Define property

INFO:  -h,--help             Display help information

INFO:  -v,--version          Display version information

INFO:  -X,--debug            Produce execution debug output

6、项目配置文件sonar-project.properties

sonar-project.properties放在项目根目录中:

sonar.projectKey=icloud3.12

sonar.projectName=icloud3.12

sonar.projectVersion=3.12

sonar.sourceEncoding=UTF-8

sonar.language=java

sonar.scm.disabled=true

sonar.modules=dispatch-service,dispatch-client

dispatch-service.sonar.modules=dispatch-cfgmanager,dispatch-taskmanager,dispatch-usermanager

dispatch-service.dispatch-cfgmanager.sonar.projectName=icloudcfgserver

dispatch-service.dispatch-cfgmanager.sonar.sources=.

dispatch-service.dispatch-cfgmanager.sonar.java.binaries=target/classes

dispatch-service.dispatch-taskmanager.sonar.projectName=icloudtaskserver

dispatch-service.dispatch-taskmanager.sonar.sources=.

dispatch-service.dispatch-taskmanager.sonar.java.binaries=target/classes

dispatch-service.dispatch-usermanager.sonar.projectName=iclouduserserver

dispatch-service.dispatch-usermanager.sonar.sources=.

dispatch-service.dispatch-usermanager.sonar.java.binaries=target/classes

dispatch-client.sonar.projectName=icloudwebserver

dispatch-client.sonar.sources=.

dispatch-client.sonar.language=js

7、执行sonar-scanner

在项目根目录中执行

sonar-scanner

CentOS7安装配置SonarQube的更多相关文章

  1. Centos7安装配置gitlab

    Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...

  2. Centos7安装配置Apache+PHP+Mysql+phpmyadmin

    转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...

  3. Centos7安装配置JDK8

    Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...

  4. centos7命令行和图形界面的相互切换(附centos7安装配置教程)

    一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...

  5. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

  6. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  7. Centos7安装配置jenkins(Tomcat)

    Centos7安装配置jenkins(Tomcat) 一.准备工作 1.1 安装JDK1.8 具体安装过程不在赘述. 1.2 下载jenkins的war包 jenkins官网下载地址:https:// ...

  8. CentOS7 安装配置rsync

    centos7自带rsync,今天简单记录下. rsync安装配置步骤 服务器端: 1.修改默认配置文件/etc/rsyncd.conf,该成如下: # /etc/rsyncd: configurat ...

  9. centos7安装配置zabbix4.0

    zabbix01    198.8.8.211    zabbix-server4.0 zabbix02    198.8.8.212    zabbix-agent4.0 一:zabbix服务端环境 ...

随机推荐

  1. AngularJS 五 过滤器及验证

    AngularJS过滤: AngularJS过滤器允许我们格式化数据以在UI上显示而不改变原始格式. 格式: 一些比较重要的过滤器: Number               Filter       ...

  2. c语言描述的二分插入排序法

    #include<stdio.h> #include<stdlib.h> //二分插入排序法 void BinsertSort(int a[],int n){ int low, ...

  3. Element.getBoundingClientRect()

    Element.getBoundingClientRect()方法会返回元素的大小和相对于视口的位置 语法: var domRect = element.getBoundingClientRect() ...

  4. DBCacheServer服务升级

    前段时间完成了该服务的设计的功能,花了很多时间和经历,最终完成了一个版本,已经测试了:现在后期再次在以前的基础上,完成了一些扩展. 1.扩展了内存存储 最初版本只是采用了gauva cache进行存储 ...

  5. 【2018 ICPC亚洲区域赛沈阳站 L】Tree(思维+dfs)

    Problem Description Consider a un-rooted tree T which is not the biological significance of tree or ...

  6. mysql系列一

    学习mysql必备工具即安装mysql客户端:mysql安装教程在网上有很多,在此处就不在仔细说明: 下面将仔细介绍一下关于SQL语句: SQL语句:结构化查询语言(Structured Query ...

  7. collections模块的使用

    1. Counter counter是collections中的一个模块, 它能够统计出字符串/文本中的每一个元素出现的次数, 并可以对结果进行进一步的处理. 使用方法 传入: 字符串 默认返回: C ...

  8. Xshell4 出现Linux中中文字符乱码问题

    Xshell5竟然收费了... 没办法只能用回Xshell4 但是不知道是版本不对还是在咋的 发现中文乱码,导致操作非常不方便 解决方案 LANG=zh_CN.big5 执行在终端执行上面的命令就可以 ...

  9. php开发aes加密总结

    <?php class Aes { /** * aes 加密 解密类库 * @by singwa * Class Aes *说明:本类只适用于加密字符串 * */ private $key = ...

  10. Python的scrapy之爬取豆瓣影评和排名

    基于scrapy框架的爬影评 爬虫主程序: import scrapy from ..items import DoubanmovieItem class MoviespiderSpider(scra ...