在构建性能测试环境的过程中,精确地安装和配置各种服务是至关重要的。以下是在Linux系统中搭建性能测试环境的详尽步骤,涉及MongoDB、MySQL、Redis、JDK、Nginx、Tomcat、Jenkins、Nodejs和Maven等软件的安装与配置。
1. 环境搭建准备
在开始之前,确保所有必要的软件包已准备就绪,并将它们放置于/opt
目录下。推荐使用以下三种方法之一将安装包传输至Linux系统:
- 直接下载:利用
wget
下载至当前目录。 - 本地下载:通过Xftp等工具上传至Linux系统的
data
目录下。 - 使用
rz
命令:先在本地下载,然后上传至指定目录。
JDK1.8,Nginx1.9,Tomcat8.0,Jenkins2.156,Nodejs11.5,Maven3.5,Redis2.8,MySQL5.7,MongoDB3.2.1
2. MongoDB安装与配置
- 解压MongoDB到
/opt
,移动至/data/mongodb
。 - 配置环境变量,添加至
/etc/profile
并重新加载。 - 创建数据和日志目录。
- 编辑
/etc/mongod.conf
配置文件,设置端口、日志路径和数据路径。 - 启动MongoDB服务,并设置账号密码。
[root@localhost opt]$ tar zxvf mongodb.tgz
[root@localhost opt]$ mv * /data/mongodb
[root@localhost opt]$ vim /etc/profile
# 在profile环境配置文件你新增以下配置
MONGODB_HOME="/data/mongodb"
PATH=$PATH:$MONGODB/bin
[root@localhost opt]$ source /etc/profile
[root@localhost opt]$ mkdir -p /data/mongodb/db /data/logs/mongodb
[root@localhost opt]$ vim /etc/mongod.conf #配置mongodb端口,log路径,db路径
# 在mongod.conf新增如下配置:
port=10012
dbpath=/data/db
logpath=/data/logs/mongodb/mongod.log
fork = true
[root@localhost bin]$ ./mongod -f /etc/mongod.conf #启动mongodb数据库
[root@localhost opt]$ vim /etc/mongod.conf #开启认证,添加账号密码
security:
authorization: "enabled"
mongodb > use admin;
mongodb > db.createUser({user:"root",pwd:"你的密码",roles:["root"]});
mongodb > db.auth("root","你的密码");
#以上步骤完成从/opt临时文件解压安装包,mv移到/data/目录下,配置环境变量、MongoDB配置、帐号密码
Tips:
Built-In Roles(内置角色):
1. 数据库用户角色:read、readWrite;
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system
3. MySQL安装与配置
- 解压MySQL并移动至
/data/mysql
。 - 创建用户和组,设置权限。
- 初始化数据库并配置
my.cnf
文件。 - 启动MySQL服务并设置root用户密码。
点击这里查看不同版本的mysql安装步骤,这步还是贴上:
[root@localhost opt]$ tar zxvf mysql5.7
[root@localhost opt]$ mv * /data/mysql
[root@localhost opt]$ groupadd mysql
[root@localhost opt]$ useradd -r -g mysql mysql
[root@localhost mysql]$ mkdir -p /var/lib/mysql
[root@localhost mysql]$ chown -R mysql:mysql /var/lib/mysql
[root@localhost mysql]$ ./bin/mysqld --user=mysql --basedir=/data/mysql --atadir=/var/lib/mysql --initialize
[root@localhost opt]$ vim /etc/my.cnf #[mysqld] 下添加变更mysql默认端口3306为10011
[mysqld]
port=10011
[root@localhost opt]$ service mysqld start #mysql服务启动
[root@localhost opt]$ ./bin/mysql -u root -p
mysql>show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
mysql> alter user 'root'@'localhost' identified by '你的密码';
mysql> flush privileges;
Tips:mysql安装过程中遇到的问题:
文件权限问题(1)
mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.
mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log
chown -R mysql:mysql /var/log/mariadb/
文件权限问题(2)
/usr/local/mysql/bin/mysqld: Can't create/write to file '/var/run/mariadb/mariadb.pid' (Errcode: 2 - No such file or directory)
mkdir /var/run/mariadb/
chown -R mysql:mysql /var/run/mariadb/
mysql.sock问题(3):Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
4. Redis安装与配置
- 解压Redis并移动至
/data/redis
。 - 安装必要的依赖。
- 编译并安装Redis。
- 启动Redis服务。
[root@localhost opt ]$ tar zxvf redis2.8 解压
[root@localhost opt ]$ mv redis2.8 /data/redis
[root@localhost opt ]$ yum install gcc cpp binutils glibc glibc-kernheaders glibc-common glibc-devel
错误:
fatal error: jemalloc/jemalloc.h: No such file or directory
解决:make MALLOC=libc
[root@localhost data]$ yum install tcl
[root@localhost data]$ make && make test
[root@localhost data]$ make install #进入src目录
[root@localhost bin]$ ./redis-server &
[root@localhost bin]$ ./redis-server /data/redis/etc/redis.conf
Redis清理缓存:
1.访问redis根目录 cd /usr/local/redis-2.8.19
2.登录redis:redis-cli -h 127.0.0.1 -p 6379
3.查看所有key值:keys *
4.删除指定索引的值:del key
5.清空整个 Redis 服务器的数据:flushall
6.清空当前库中的所有 key:flushdb
5. JDK安装
- 解压JDK至
/usr/local/jdk1.8
。 - 配置环境变量并重新加载。
[root@localhost opt/]$ tar zxvf jdk1.8.tgz #解压
[root@localhost opt/]$ mv jdk /usr/local/jdk1.8
[root@localhost opt/]$ vim /etc/profile #配置环境变量
#追加:
JAVA_HOME=/usr/local/jdk1.8
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:$JAVA_BIN:$JRE_HOME/bin
CLASSPATH=$JRE_HOME/lib:$JAVA_HOME/lib:$JRE_HOME/lib/charsets.jar
export JAVA_HOME JRE_HOME JAVA_BIN PATH CLASSPATH
:x #保存
[root@localhost opt/]$ source /etc/profile #生效
[root@localhost opt/]$ java -version #查看版本
#这是windows系统的版本系统,凑合在linux用一下,查看正常显示
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
6. Nginx安装
- 安装依赖包。
- 配置并启动Nginx服务。
[root@localhost opt/]$ yum -y install zlib zlib-devel gcc-c++ libtool openssl openssl-devel pcre*
[root@localhost nginx/]$ ./configure --prefix=/usr/local/nginx_test --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_ssl_module --with-http_stub_status_module --with-pcre
[root@localhost nginx/]$ make && make install
[root@localhost nginx/]$ ./sbin/nginx -t
[root@localhost opt/]$ vim /etc/profile
#配置nginx变量
NGINX_HOME=安装目录
PATH=$PATH:$NGINX_HOME/sbin
[root@localhost opt/]$ source /etc/profile
7. Tomcat安装
- 解压并移动至
/data/tomcat8
。 - 配置启动脚本和账号密码。
- 添加至服务列表并启动。
[root@localhost opt ]$ tar zxvf tomcat.tgz
[root@localhost opt ]$ mv apache-tomcat /data/tomcat8
[root@localhost opt ]$ cp -p /data/tomcat8/bin/catalina.sh /etc/init.d/tomcat
[root@localhost opt ]$ vim /data/tomcat8/conf/tomcat-user.xml
#配置tomcat启动进入manager管理页面帐号密码及角色
<roles name=/>
<user name="" password="" rolesname="" />
[root@localhost opt ]$ vim /etc/init.d/tomcat
#如下配置为了能add加入chkconfig服务列表
# chkconfig: 112 63 37
# description: tomcat server init script
# Source Function Library
JAVA_HOME=/usr/local/jdk1.8/
CATALINA_HOME=/data/tomcat8
[root@localhost opt ]$ chmod 755 /etc/init.d/tomcat
[root@localhost opt ]$ chkconfig --add tomcat
[root@localhost opt ]$ service tomcat start #启动tomcat服务
8. Jenkins安装
- 运行
java -jar jenkins.war --httpPort=8090
以启动Jenkins。
9. Nodejs安装
- 解压并移动至
/usr/local/nodejs
。 - 创建软链接以添加至系统路径。
[root@localhost opt]$ tar xf node-v11.5.0-linux-.armv7.tar -C /usr/local/nodejs
[root@localhost opt]$ cd /usr/local/
[root@localhost opt]$ mv node-v5.10.1-linux-x64/ nodejs
[root@localhost opt]$ ln -s /usr/local/nodejs/bin/node /usr/bin
[root@localhost opt]$ ln -s /usr/local/nodejs/bin/npm /usr/bin
10. Maven部署
- 解压并移动至
/usr/local/maven
。 - 配置环境变量并重新加载。
[root@localhost opt]$ tar zxvf maven3.5.tgz
[root@localhost opt]$ mv /usr/local/maven
[root@localhost opt]$ vi /etc/profile
#配置环境变量
MAVEN_HOME=/usr/local/maven
PATH=$PATH:$MAVEN_HOME/bin
[root@localhost opt]$ source /etc/profile
11. 环境搭建总结
文中还提供了MongoDB和MySQL的权限配置提示,以及MySQL安装过程中可能遇到的问题和解决方案。整个安装过程强调了一次性完成的流畅性,展示了从解压安装包到配置环境变量的完整流程。
通过上述步骤,可以确保性能测试环境的快速搭建和成功运行,为后续的性能测试工作打下坚实基础。