阅读 82

搭建一套完整的Linux测试环境

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

背景

公司项目,搭建性能测试环境,架构比较简单,nginx负载均衡,采用权重轮询,redis缓存、MongoDB热库、Mysql、tomcat部署方式,jenkins集成打包部署环境、Nodejs、maven环境,应用软件比较多,但是没有采用dubbo或spring boot微服务架构或采用mq消息队列等中间件,所以纯粹的安装这些软件只消半天功夫,剩下的就是服务部署调试了。

1、首先准备需要的软件包(为了和预发布、现网环境,软件版本尽量保持一致),把所有安装包放在opt目录里,包是怎么放到linux系统的?介绍3种方式:一是wget 下载地址,会download到当前目录,二是先download本地,再通过xftp连接服务器工具上传到linux指定目录data下,三是仍旧是先download本地,在使用rz -bye 选择上传包文件到指定目录即可(yum -y install lrzsz):

JDK1.8Nginx1.9Tomcat8.0Jenkins2.156Nodejs11.5Maven3.5Redis2.8MySQL5.7MongoDB3.2.1

2、安装软件不分先后,MongoDB第一个安装,也是第一次安装(往后所有动作默认从opt目录开始):

[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路径

    logpath=/data/logs/mongodb/mongod.log

[root@localhost bin]$ ./mongod -f /etc/mongod.conf   #启动mongodb数据库

[root@localhost opt]$ vim /etc/mongod.conf   #开启认证,添加账号密码

authorization: "enabled" 

mongodb > db.createUser({user:"root",pwd:"你的密码",roles:["root"]});

mongodb > db.auth("root","你的密码");

#以上步骤完成从/opt临时文件解压安装包,mv移到/data/目录下,配置环境变量、MongoDB配置、帐号密码

    1. 数据库用户角色:read、readWrite;

    2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;

    3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;

    4. 备份恢复角色:backup、restore;

    5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase

    // 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
复制代码

3、安装mysql痛苦的记忆,想当年在linux系统玩安装mysql,花了一个月时间都没安装成功,各种百度各种资料,实在汗颜,最后尝试安装得到提示:mysql的版本不一致,安装方式也略有不同,点击这里查看不同版本的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

[root@localhost opt]$  service mysqld start   #mysql服务启动

[root@localhost opt]$ ./bin/mysql -u root -p 

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> alter user 'root'@'localhost' identified by '你的密码';

mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.

touch /var/log/mariadb/mariadb.log

chown -R mysql:mysql /var/log/mariadb/

/usr/local/mysql/bin/mysqld: Can't create/write to file '/var/run/mariadb/mariadb.pid' (Errcode: 2 - No such file or directory)

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、除去自己常部署的jdk、tomcat、nginx、apache、mysql、php、maven、ant、jmeter、jenkins等环境,redis、MongoDB、nodejs都是首次安装,安装测试环境,安装得多了也就熟悉了,唯手熟尔,在贴出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

[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

1.访问redis根目录    cd  /usr/local/redis-2.8.19

2.登录redis:redis-cli -h 127.0.0.1 -p 6379

5.清空整个 Redis 服务器的数据:flushall 
复制代码

5、JDK安装,解压即可,毋须编译,只需配置环境变量即可:

[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

[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安装

[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

    PATH=$PATH:$NGINX_HOME/sbin

[root@localhost opt/]$ source /etc/profile
复制代码

7、Tomcat安装如下:

[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管理页面帐号密码及角色

<user name="" password="" rolesname="" />

[root@localhost opt ]$ vim /etc/init.d/tomcat

#如下配置为了能add加入chkconfig服务列表

# 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、Linux的jenkins启动的方式与在windows系统一样,java -jar jenkins.war --httpPort=8090,指定端口启动即可:

9、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部署:

[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、整个测试环境需要的软件均以顺利安装完成,并没有很难的样子,一次性安装,都不带停歇的。

文章分类
后端
文章标签