9.1、SonarQube

1、环境要求

1.1、jdk1.8

1.2、SonarQube不得在root账户下运行

1.3、

vm.max_map_count  大于或等于  262144
fs.file-max  大于或等于  65536
运行SonarQube的用户可以打开至少  65536个 文件描述符
运行SonarQube的用户可以打开至少2048个线程,
seccomp已编译 到内核中
内核参数
您可以使用以下命令查看值:
sysctl vm.max_map_count
sysctl fs.file-max
ulimit -n
ulimit -u
您可以通过以root身份运行以下命令,为当前会话动态设置它们  :
sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 2048
要更永久地设置这些值,您必须更新  /etc/sysctl.d/99-sonarqube.conf  (或   您希望的/etc/sysctl.conf)以反映这些值。
如果运行SonarQube( 本例中为sonarqube)的用户没有至少65536个开放描述符的权限,则必须在/etc/limits.d/99-sonarqube.conf  (或  /etc/limits.conf)中插入此行。   如你所愿) :
sonarqube   -   nofile   65536
sonarqube   -   nproc    2048

seccomp过滤器 默认情况下,Elasticsearch 使用的是seccomp过滤器。在大多数发行版中,此功能在内核中激活,但在Red Hat Linux 6等发行版中,此功能已停用。如果您使用的是没有此功能的发行版,并且无法升级到激活了seccomp的较新版本,则必须通过更新sonar.properties中的sonar.search.javaAdditionalOpts 来显式停用此安全层 :

sonar.search.javaAdditionalOpts=-Dbootstrap.system_call_filter=false您可以使用以下命令检查内核上是否有seccomp:
$ grep SECCOMP /boot/config-$(uname -r)
如果你的内核有seccomp,你会看到:
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_SECCOMP=y

2、安装

2.1、下载解压到/usr/local下

unzip -d /usr/local sonarqube-6.7.6.zip

2.2、配置环境变量

vi /etc/profile

export SONAR_HOME=/usr/local/sonarqube-6.7.6

export PATH=$PATH:${SONAR_HOME}/bin

保存

立即生效

source /etc/profile

2.3、修改配置文件

连接bigdata3的mysql5.7

cd /usr/local/sonarqube-6.7.6/conf

vi sonar.properties


3、新建用户sonar,密码xiaolanyun

终端:

adduser sonar

passwd sonar

对创建的新用户进行sudo操作授权

#搜索sudoers文件

whereis sudoers

#查看权限

ls -l /etc/sudoers

#只有可读权限

#加入可写权限

chmod -v u+w /etc/sudoers

#将sonar用户添加到sudoers文件中

vi /etc/sudoers

sonar ALL=(ALL) ALL

#将sudoers文件权限改回去

chmod -v u-w /etc/sudoers

#测试新用户sonar进行登陆,使用

su sonar

切换用户

4、修改sonarqube-6.7.6目录和用户组为sonar

chown -R sonar:sonar sonarqube-6.7.6

5、设置打开文件数和线程数

sudo vi /etc/sysctl.conf

vm.max_map_count=262144

fs.file-max=65536
sysctl -p
重启
sudo vi etc/security/limits.conf
*                soft    nofile          65536
*                hard    nofile          65536
*                soft    nproc           2048
*                hard    nproc           2048

重启

查看

sysctl vm.max_map_count
sysctl fs.file-max
ulimit -n
ulimit -u

6、重新启动sonar

cd /usr/local/sonarqube-6.7.6

cd /usr/local/sonarqube-6.7.6/bin/linux-x86-64

./sonar.sh stop



Stopping SonarQube...

SonarQube was not running.

7、问题总结

查看日志

cd /usr/local/sonarqube-6.7.6/logs

tail -n 100 sonar.log

四个日志一个一个排查

results matching ""

    No results matching ""