Linux系统运维之 安装 Sonar
白羽 2018-07-11 来源 :网络 阅读 895 评论 0

摘要:本文将带你了解Linux系统运维之 安装 Sonar,希望本文对大家学Linux有所帮助。


前言

    一款不错的代码质量管理工具Sonar

前期准备

   

    硬件环境(在官方参考文档有提出硬件规格,如下只是测试环境)

          磁盘 ->16G

          内存 ->2G

          CPU -> 2core

    软件环境

          OS -> Red Hat Enterprise 6.5

          DB -> Mysql 5.7

          Sonar -> SonarQube 6.7.1 (LTS *)

          IP -> 192.168.1.59

          Host -> t-xi-sonar01

系统初始化

      关闭selinux和防火墙

         [root@t-xi-sonar01 ~]# vi /etc/selinux/config

             SELINUX=disabled

          [root@t-xi-sonar01 ~]# chkconfig  iptables off&&chkconfig  ip6tables off&&service iptables stop&&service ip6tables stop

      [root@t-xi-sonar01 ~]# vi /etc/hosts

           192.168.1.59 t-xi-sonar01

      配置Yum源,我这里配置了web站点,所以指定了http地址.

         [root@t-xi-sonar01 ~]# cat /etc/yum.repos.d/rhel-source.repo

[rhel-source]

name=Red Hat Enterprise Linux $releasever - $basearch - Source

baseurl=//192.168.1.51/RedHat6.5/Server

enabled=1

gpgcheck=0

 

  也可以使用ios镜像进行配置yum源

 [root@t-xi-orc01 ~]# mount -o loop /u01/rhel-server-6.5-x86_64-dvd.iso /u01/http/redhat6.5

 [root@t-xi-orc01 ~]# cat /etc/yum.repos.d/rhel-source.repo

 [Server]

 name=Red Hat Enterprise Linux $releasever - $basearch - Server

 baseurl=file:///u01/http/redhat6.5/Server

 enabled=1

 gpgcheck=0

 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

     

      系统内核优化(参考文档中有)

         

 [root@t-xi-sonar01 ~]# vi /etc/sysctl.conf  

            #add sonar

  vm.max_map_count = 262144

  fs.file-max = 65536

 

[root@t-xi-sonar01 ~]# vi /etc/security/limits.conf

    #add sonar

    sonarqube   -   nofile   65536

    sonarqube   -   nproc    2048

 

sysctl -w vm.max_map_count=262144

sysctl -w fs.file-max=65536

ulimit -n 65536

ulimit -u 2048

安装Mysql数据库

     首先移除原有mysql-libs-5.1.71-1.el6.x86_64包,但它依赖postfix。

     [root@t-xi-sonar01 ~]# yum remove postfix

     [root@t-xi-sonar01 ~]# rpm -e mysql-libs-5.1.71-1.el6.x86_64

    安装下载的Mysql 5.7

     [root@t-xi-sonar01 ~]#

       rpm -ivh mysql-community-client-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-common-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-devel-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-embedded-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-embedded-devel-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-libs-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-libs-compat-5.7.20-1.el6.x86_64.rpm

       rpm -ivh mysql-community-server-5.7.20-1.el6.x86_64.rpm

 

          优化Mysql数据库参数     

 

[root@t-xi-sonar01 ~]# vi /etc/my.cnf

query_cache_size=8M

innodb_buffer_pool_size=1152M

innodb_log_file_size=256M

innodb_log_buffer_size=4M

innodb_flush_log_at_trx_commit=2

innodb_thread_concurrency=8

innodb_flush_method=O_DIRECT

transaction-isolation=READ-COMMITTED

thread_cache_size=4

slow_query_log=on

slow-query-log-file=mysqld-slow.log

long_query_time=10

explicit_defaults_for_timestamp=true

skip-character-set-client-handshake

collation-server=utf8_unicode_ci

character-set-server=utf8

  启动数据库,此时数据库会生成临时密码

           [root@t-xi-sonar01 ~]# service mysqld start

         启动时要随时关注mysql数据库产生的日志记录

           [root@t-xi-sonar01 ~]# tail -f  /var/log/mysqld.log

         查看临时密码

           [root@t-xi-sonar01 ~]#grep 'temporary password' /var/log/mysqld.log

               2017-12-26T10:37:57.842981Z 1 [Note] A temporary password is generated for root@localhost: cSj&aPfkS60w

          登陆并且更新密码

           [root@t-xi-sonar01 ~]#mysql -uroot -p

          mysql>ALTER USER 'root'@'localhost' IDENTIFIED BY '******';

           mysql>FLUSH PRIVILEGES;

          将mysql数据库设定为自启动

           [root@t-xi-sonar01 ~]# chkconfig mysqld on

           

    创建Sonar账户和数据库

           [root@t-xi-sonar01 ~]#useradd sonar

          [root@t-xi-sonar01 ~]#passwrd sonar

 

           [root@t-xi-sonar01 ~]#mysql -uroot -p

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

          mysql>CREATE DATABASE sonar

                         DEFAULT CHARACTER SET utf8

                        DEFAULT COLLATE utf8_general_ci;

          mysql>GRANT ALL PRIVILEGES ON sonar.* TO 'sonar'@'localhost';

           mysql>FLUSH PRIVILEGES;

 

    安装Sonar软件

           [root@t-xi-sonar01 ~]# unzip sonarqube-6.7.1.zip

           [root@t-xi-sonar01 ~]# mv sonarqube-6.7.1 /etc/sonarqube

           [root@t-xi-sonar01 ~]# chown -R sonar.sonar /etc/sonarqube

              注意:sonarqube后面启动 ./sonar.sh start时不能使用root账户,es.log报错信息

               2017.12.27 13:59:30 ERROR es[][o.e.b.Bootstrap] Exception java.lang.RuntimeException: can not run elasticsearch as root

  切换到Sonar账户

           [sonar@t-xi-sonar01 sonarqube]$

           [root@t-xi-sonar01 sonarqube]# su - sonar

           [sonar@t-xi-sonar01 ~]$ cd /etc/sonarqube/

        查看/etc/sonarqube目录树(主要的三个,可以查看参考文档)         

bin ->软件运行目录

conf -> 软件配置目录

COPYING

data

elasticsearch

extensions

lib

logs ->软件运行日志目录

temp

web

配置软件参数

                    [sonar@t-xi-sonar01 sonarqube]$ cat conf/sonar.properties|grep -v '^#'|grep -v '^$'|grep -v '=$'

      

sonar.jdbc.username=sonar

sonar.jdbc.password=sonar                             
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false

                          注意Sonar Web访问默认地址为9000,账户admin/admin

 

                     启动Sonar软件 

                              [sonar@t-xi-sonar01 sonarqube]$ bin/linux-x86-64/sonar.sh start

                             注意查看logs/es.log 和logs/sonar.log两个日志文件

         [sonar@t-xi-sonar01 sonarqube]$ less logs/es.log

                        [sonar@t-xi-sonar01 sonarqube]$ less logs/sonar.log

 


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标系统运维之Linux!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程