目录
一.构建分布式集群商城应用系统部署
1.节点规划
构建以Mycat为中间件的读写分离数据库集群,使用Mycat读写分离数据库作为应用系统的数据库后端,使用ZooKeeper集群,Kafka集群提供分布式应用系统调度服务,使用Reids提供应用系统消息队列服务,nginx用于构建负载均衡,节点规划见表:
节点规划
IP | 主机名 | 节点 |
192.168.100.73 | mycat | Mycat中间件服务节点 |
192.168.100.71 | db1 | MariaDB数据库集群主节点 |
192.168.100.72 | db2 | MariaDB数据库集群从节点 |
192.168.100.171 | zookeeper1 | 集群节点 |
192.168.100.172 | zookeeper2 | 集群节点 |
192.168.100.173 | zookeeper3 | 集群节点 |
192.168.100.181 | redis | 消息队列服务节点 |
192.168.100.111 | jar1 | Tomcat1节点 |
192.168.100.112 | jar2 | Tomcat2节点 |
192.168.100.145 | nginx | Nginx服务器 |
2.基础准备
开启十台安装好centos7.2系统的主机,我们先配置网卡ip地址,关闭防火墙,写好主机映射文件,再把这次实验的所需本地软件资源上传到对应目录并配置好yum源,修改好其对应主机名,完成最基本的实验开始前环境.
1.修改主机名
Hostnamectl set-hostname 主机名 Bash |
2.修改ip地址
Vi /etc/sysconfig/network-scripts/ifcfg-ens33 |
重启网络服务
Systemctl restart network |
3.关闭防火墙和selinux服务
Systemctl stop firewalld #关闭防火墙 Systemctl disable firewalld #关闭防火墙开启自启动 Setenforce 0 #关闭selinux服务 Vi /etc/selinux/config #去配置文件里修改关闭selinux服务自启动 |
4.编辑hosts文件
[root@mycat ~]# vi /etc/hosts [root@mycat ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.100.73 mysql.mall mycat 192.168.100.71 db1 192.168.100.72 db2 192.168.100.171 kafka1.mall 192.168.100.172 kafak1.mall 192.168.100.173 kafka1.mall 192.168.100.171 zk1.mall zookeeper1 192.168.100.172 zk1.mall zookeeper2 192.168.100.173 zk1.mall zookeeper3 192.168.100.181 redis.mall |
5.各节点所需软件资源
所有节点:将gpmall-repo文件上传至虚拟机的/opt目录下
db1节点:将提供的gpmall.sql数据库文件上传至数据库db1节点的/root目录下
mycat节点:将Mycat服务的二进制软件包Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz上传到Mycat虚拟机的/root目录下
Zookeeper1,2,3节点:将提供的zookeeper-3.4.14.tar.gz软件包和kafka_2.11-1.1.1.tgz软件包,上传至3个节点的/root目录下
jar1、jar2节点:将项目四提供的4个jar包,上传至jar1、jar2节点的/root目录下
nginx节点:将提供的dist文件夹上传至Nginx节点的/root目录下
6.配置yum安装源
使用提供的gpmall-repo文件上传至虚拟机的/opt目录下,设置本地Yum源。
首先将/etc/yum.repo.d/目录下的所有文件移动到/media目录下,命令如下:
Mv /etc/yum.repos.d/* /media/ |
然后在节点上的/etc/yum.repo.d目录下创建local.repo文件,内容如下:
读写分离数据库集群(db1,db2,mycat)节点:
#cat /etc/yum.repos.d/local.repo [mariadb] name=mariadb baseurl=file:///opt/gpmall-repo gpgcheck=0 enabled=1 |
zookeeper、kafka节点,redis节点,jar1、jar2节点,nginx节点配置:
[gpmall] name=gpmall baseurl=file:///opt/gpmall-repo gpgcheck=0 enabled=1 |
7.安装JDK环境
部署Mycat中间件服务需要先部署JDK 1.7或以上版本的JDK软件环境,这里部署JDK 1.8版本。因为需要在jar1、jar2节点上运行提供的4个JAR包,所以需要在jar1和jar2节点上配置Java环境
Mycat节点、zookeeper集群节点、jar1,jar2节点安装Java环境均执行命令如下:
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel java -version |
3.构建读写分离数据库集群
1.部署MariaDB主从数据库集群服务
(1)安装MariaDB服务
通过YUM命令在db1和db2虚拟机节点上安装MariaDB服务,命令如下:
Yum -y install mariadb mariadb-server |
2个节点启动MariaDB服务,并设置MariaDB服务为开机自启
Systemctl start mariadb Systemctl enable mariadb |
(2)初始化MariaDB数据库
在db1和db2虚拟机节点上初始化MariaDB数据库,并设置MariaDB数据库root访问用户的密码为123456。
[root@db1 ~]#Mysql_secure_installation In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): #默认输入回车 OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] y New password: #输入数据库密码123456 Re-enter new password: #确认密码 Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] n ... skipping. By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB! |
(3)配置数据库集群主节点
编辑主节点db1虚拟机的数据库配置文件my.cnf,在配置文件my.cnf中增添下面的内容:
[root@db1 ~]# cat /etc/my.cnf [mysqld] log_bin=mysql-bin #记录操作日志 binlog_ignore_db=mysql #不同步MySQL系统数据库 server_id=71 #数据库集群中的每个节点id都要不同,使用IP地址的最后段的数字,如192.168.100.71,server_id就写71 |
从节点db2同上把server_id修改为72
编辑完成配置文件my.cnf后重启mariadb服务
(4)开放主节点的数据库权限
在主节点db1虚拟机上使用mysql命令登录MariaDB数据库,授权在任何客户端机器上可以以root用户登录到数据库。
Mysql -uroot -p123456 grant all privileges on *.* to root@'%' identified by '123456'; |
在主节点db1数据库上创建一个user用户让从节点db2连接,并赋予从节点同步主节点数据库的权限,命令如下:
grant replication slave on *.* to 'user'@'db2' identified by '123456'; |
(5)配置从节点db2同步主节点db1
在从节点db2虚拟机上使用mysql命令登录MariaDB数据库,配置从节点连接主节点的连接信息。master_host为主节点主机名db1,master_user为在步骤(4)中创建的用户user,命令如下:
[root@db2~]#msyql -uroot -p123456 change master to master_host='db1',master_user='user',master_password='123456'; |
配置完毕主从数据库之间的连接信息之后,开启从节点服务。使用show slave status\G; 命令并查看从节点服务状态,如果Slave_IO_Running和Slave_SQL_Running的状态都为YES,则从节点服务开启成功。
start slave; show slave status\G; |
(6)验证主从数据库的同步功能
先在主节点db1的数据库中创建库test,并在库test中创建表company,插入表数据。创建完成后,查看表company数据,如下所示。
Create database test; Use test Create table company(id int not null primary key,name varchar(50),addr varchar(255)); insert into company values(1,"facebook","usa"); select * from company; |
这时从节点db2的数据库就会同步主节点数据库创建的test库,可以在从节点查询test数据库与表company,如果可以查询到信息,就能验证主从数据库集群功能在正常运行。查询结果如下所示。
show databases; select * from test.company; |
2.部署mycat读写分离中间件服务
(1)安装mycat服务
将软件包解压到/use/local目录中。赋予解压后的Mycat目录权限。
tar -zxvf Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz -C /usr/local/ chown -R 777 /usr/local/mycat/ |
在/etc/profile系统变量文件中添加Mycat服务的系统变量,并生效变量。
Echo export MYCAT_HOME=/usr/local/mycat/ >> /etc/profile source /etc/profile |
(2)编辑Mycat的逻辑库配置文件
配置Mycat服务读写分离的schema.xml配置文件在/usr/local/mycat/conf/目录下,可以在文件中定义一个逻辑库,使用户可以通过Mycat服务管理该逻辑库对应的MariaDB数据库。在这里定义一个逻辑库schema,name为USERDB;该逻辑库USERDB对应数据库database为test(在部署主从数据库时已安装);设置数据库写入节点为主节点db1;设置数据库读取节点为从节点db2。(可以直接删除原来schema.xml的内容,替换为如下。)
[root@mycat ~]# cat /usr/local/mycat/conf/schema.xml <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="USERDB" checkSQLschema="true" sqlMaxLimit="100" dataNode="dn1"></schema> <dataNode name="dn1" dataHost="localhost1" database="test" /> <dataHost name="localhost1" maxCon="1000" minCon="10" balance="3" dbType="mysql" dbDriver="native" writeType="0" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="172.16.51.18:3306" user="root" password="123456"> <readHost host="hostS1" url="172.16.51.30:3306" user="root" password="123456" /> </writeHost> </dataHost> </mycat:schema> |
代码说明:
l sqlMaxLimit:配置默认查询数量。
l database:为真实数据库名。
l balance="0":不开启读写分离机制,所有读操作都发送到当前可用的writeHost上。
l balance="1":全部的readHost与stand by writeHost参与select语句的负载均衡,简单来说,当双主双从模式(M1->S1,M2->S2,并且M1与M2互为主备),正常情况下,M2、S1、S2都参与select语句的负载均衡。
l balance="2":所有读操作都随机的在writeHost、readhost上分发。
l balance="3":所有读请求随机地分发到wiriterHost对应的readhost执行,writerHost不负担读压力,注意balance=3只在1.4及其以后版本有,1.3版本没有。
l writeType="0":所有写操作发送到配置的第一个writeHost,第一个挂了需要切换到还生存的第二个writeHost,重新启动后已切换后的为准,切换记录在配置文件dnindex.properties中。
l writeType="1":所有写操作都随机的发送到配置的writeHost.
(3)修改配置文件权限
修改schema.xml的用户权限,命令如下:
Chown root:root /usr/local/mycat/conf/schema.xml |
(4)编辑mycat的访问用户
修改/usr/local/mycat/conf/目录下的server.xml文件,修改root用户的访问密码与数据库,密码设置为123456,访问Mycat的逻辑库为USERDB,命令如下。
Cat /usr/local/mycat/conf/server.xml 在配置文件的最后部分: <user name="root"> <property name="password">123456</property> <property name="schemas">gpmall</property> 然后删除如下几行: <user name="user"> <property name="password">user</property> <property name="schemas">TESTDB</property> <property name="readOnly">true</property> </user> |
(5)启动mycat服务
通过命令启动Mycat数据库中间件服务,启动后使用netstat -ntpl命令查看虚拟机端口开放情况,如果有开放8066和9066端口,则表示Mycat服务开启成功。端口查询情况如图所示。
/usr/local/mycat/bin/mycat start Nestat -ntpl |
3.验证数据库集群服务读写分离功能
(1)用Mycat服务查询数据库信息
先在Mycat虚拟机上使用Yum安装mariadb-client服务。
Yum -y install MariaDB-client |
在Mycat虚拟机上使用mysql命令查看Mycat服务的逻辑库USERDB,因为Mycat的逻辑库USERDB对应数据库test(在部署主从数据库时已安装),所以可以查看库中已经创建的表company。命令如下。
Mysql -uroot -p123456 -h192.168.100.73 -P8066 Show databases; Use USERDB Show tables; Select * from company; |
(2)用Mycat服务添加表数据
在Mycat虚拟机上使用mysql命令对表company添加一条数据(2,"basketball","usa"),添加完毕后查看表信息。命令如下。
Insert into company values(2, "bastetball","usa"); Select * from company; |
(3)验证Mycat服务对数据库读写操作分离
在Mycat虚拟机节点使用mysql命令,通过9066端口查询对数据库读写操作的分离信息。可以看到所有的写入操作WRITE_LOAD数都在db1主数据库节点上,所有的读取操作READ_LOAD数都在db2主数据库节点上。由此可见,数据库读写操作已经分离到db1和db2节点上了。命令如下。
Mysql -uroot -p123456 -h192.168.100.73 -P9066 Show @@datasource; |
至此,Mycat读写分离数据库集群完成。
4.修改数据库配置
(1)新建gpmall数据库
登录db1节点,使用数据库用户名为root,密码为123456登录数据库,创建库gpmall,将提供的gpmall.sql文件导入到gpmall库中,命令如下。
Mysql -uroot -p123456 Create database gpmall; Use gpmall source /root/gpmall.sql |
gpmall.sql文件导入完毕后退出数据库
(2)修改mycat配置
登录db2节点,修改schema.xml配置文件,文件位置在/usr/local/mycat/conf目录下,修改schema.xml文件内容如下,将schema name修改为gpmall,true修改为false,database修改为gpmall
vi /usr/local/mycat/conf/schema.xml |
[root@mycat ~]# cat /usr/local/mycat/conf/schema.xml <?xml version="1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat="http://io.mycat/"> <schema name="gpmall" checkSQLschema="false" sqlMaxLimit="100" dataNode="dn1"></schema> <dataNode name="dn1" dataHost="localhost1" database="gpmall" /> <dataHost name="localhost1" maxCon="1000" minCon="10" balance="3" dbType="mysql" dbDriver="native" writeType="0" switchType="1" slaveThreshold="100"> <heartbeat>select user()</heartbeat> <writeHost host="hostM1" url="192.168.100.3:3306" user="root" password="123456"> <readHost host="hostS1" url="192.168.100.4:3306" user="root" password="123456" /> </writeHost> </dataHost> </mycat:schema> |
修改server.xml配置文件,文件位置在/usr/local/mycat/conf目录下。在server.xml文件的最后部分,将<property name="schemas">USERDB</property>改成<property name="schemas">gpmall</property>,具体配置文件如下:
Vi /usr/local/mycat/conf/server.xml |
<user name="root"> <property name="password">123456</property> <property name="schemas">gpmall</property>
<!-- 表级 DML 权限设置 --> <!-- <privileges check="false"> <schema name="TESTDB" dml="0110" > <table name="tb01" dml="0000"></table> <table name="tb02" dml="1111"></table> </schema> </privileges> |
(3)重启mycat服务
/usr/local/mycat/bin/mycat restart |
查看Mycat服务是否启动,命令如下,如果能看到8066端口,则说明Mycat服务启动成功
Netstat -ntpl |
4.zookeeper、kafka集群部署
1.解压zookeeper软件包
在zookeeper三个节点下均行解压操作
Tar -zxvf zookeeper-3.4.14.tar.gz |
2.修改三个节点配置文件
在zookeeper1节点 进入zookeeper-3.4.14/conf目录下 修改zoo_sample.cfg文件为zoocfg 并编辑该文件内容如下:
Cd zookeeper-3.4.14/conf Mv zoo_sample.cfg zoo.cfg Vi zoo.cfg |
在文件末尾添加
server.1=192.168.100.171:2888:3888 server.2=192.168.100.172:2888:3888 server.3=192.168.100.173:2888:3888 |
等号后面是相应的主机地址
命令解析:
l initLimit:ZooKeeper集群模式下包含多个zk进程,其中一个进程为leader,余下的进程为follower。当follower最初与leader建立连接时,它们之间会传输相当多的数据,尤其是follower的数据落后leader很多。initLimit配置follower与leader之间建立连接后进行同步的最长时间。
l syncLimit:配置follower和leader之间发送消息,请求和应答的最大时间长度。
l tickTime:tickTime则是上述两个超时配置的基本单位,例如对于initLimit,其配置值为5,说明其超时时间为 2000ms * 5 = 10秒。
l server.id=host:port1:port2:其中id为一个数字,表示zk进程的id,这个id也是dataDir目录下myid文件的内容。host是该zk进程所在的IP地址,port1表示follower和leader交换消息所使用的端口,port2表示选举leader所使用的端口。
l dataDir:其配置的含义跟单机模式下的含义类似,不同的是集群模式下还有一个myid文件。myid文件的内容只有一行,且内容只能为1 - 255之间的数字,这个数字亦即上面介绍server.id中的id,表示zk进程的id。
注意:zookeeper2和zookeeper3节点的操作与修改的配置和zookeeper1节点一样。
3.创建myid文件
在3台机器dataDir目录(此处为/tmp/zookeeper)下,分别创建一个myid文件,文件内容分别只有一行,其内容为1,2,3。即文件中只有一个数字,这个数字即为上面zoo.cfg配置文件中指定的值。ZooKeeper是根据该文件来决定ZooKeeper集群各个机器的身份分配。
创建myid文件,命令如下:
Zookeeper1节点:
Mkdir /tmp/zookeeper Vi /tmp/zookeeper/myid Cat /tmp/zookeeper/myid |
Zookeeper2节点:同理
Zookeeper3节点:同理
4.启动zookeeper服务
在3台机器的zookeeper-3.4.14/bin目录下执行命令如下:
Zookeeper1节点:
[root@zookeeper1 bin]# ./zkServer.sh start [root@zookeeper1 bin]# ./zkServer.sh status |
Zookeeper2节点:
[root@zookeeper2 bin]# ./zkServer.sh start [root@zookeeper2 bin]# ./zkServer.sh status |
Zookeeper3节点:
[root@zookeeper3 bin]# ./zkServer.sh start [root@zookeeper3 bin]# ./zkServer.sh status |
可以看到三个节点,zookeeper2为leader,zookeeper1和zookeeper3都是follower
注意:查看状态出现问题时,所有节点都启动一下,再查看状态。
至此zookeeper集群配置完毕
5.解压Kafka软件包
在zookeeper的三个节点下均执行解压操作
Tar -zxvf kafka_2.11-1.1.1.tgz |
6.修改3个节点配置文件
在zookeeper1节点,进入kafka_2.11-1.1.1/config目录下,编辑server.properties文件。
在配置文件中找到以下两行并注释掉(在文本前加#)如下所示:
#broker.id=0 #zookeeper.connect=localhost:2181 |
然后在配置文件的底部添加如下3个配置
broker.id=1 zookeeper.connect=192.168.100.171:2181,192.168.100.172:2181,192.168.100.173:2181 listeners=PLAINTEXT://192.168.100.171:9092 |
命令解析:
l broker.id:每台机器不能一样。
l zookeeper.connect:因为有3台ZooKeeper服务器,所以在这里zookeeper.connect设置为3台。
l listeners:在配置集群的时候,必须设置,不然以后的操作会报找不到leader的错误。
另外两台服务器,zookeeper.connect的配置跟这里的一样,但是broker.id和listeners不能一样。
zookeeper2节点:
broker.id=2 zookeeper.connect=192.168.100.171:2181,192.168.100.172:2181,192.168.100.173:2181 listeners=PLAINTEXT://192.168.100.172:9092 |
Zookeeper3节点:
broker.id=3 zookeeper.connect=192.168.100.171:2181,192.168.100.172:2181,192.168.100.173:2181 listeners=PLAINTEXT://192.168.100.173:9092 |
7.启动kafka服务
在zookeeper1节点,进入kafka_2.11-1.1.1/bin目录下,启动服务命令如下:
Zookeeper1节点:
Cd kafka_2.11-1.1.1/bin ./kafka-server-start.sh -daemon ../config/server.properties Jps |
Zookeeper2节点:
Zookeeper3节点:
8.测试服务
在zookeeper1节点,进入kafka_2.11-1.1.1/bin目录下,创建topic命令如下。
zookeeper1节点:
./kafka-topics.sh --create --zookeeper 192.168.100.171:2181 --replication-factor 1 --partitions 1 --topic test |
如果成功的话,会输出“Created topic "test".”。
查看topic,虽然topic是在192.168.100.171上创建的,但是在其他机器上也能看到。例如在任意启动的机器kafka_2.11-1.1.1/bin的目录中执行命令如下:
zookeeper2节点:
./kafka-topics.sh --list --zookeeper 192.168.100.172:2181 |
Zookeeper3节点:
./kafka-topics.sh --list --zookeeper 192.168.100.173:2181 |
测试成功
5.安装redis服务
1.安装redis服务
使用Yum命令安装Redis服务,命令如下:
Yum -y install redis |
2.启动Redis服务
修改Redis配置文件,编辑/etc/redis.conf文件。
将bind 127.0.0.1这一行注释掉,将protected-mode yes改为protected-mode no。
启动Redis服务命令如下。
Systemctl start redis Systemctl enable redis Netstat -ntpl |
检查Redis服务启动,命令如下,如果检查到6379端口,即证明Redis服务运行成功.
至此,应用商城集群部署需要的环境Mycat、Redis、Zookeeper、Kafka服务均已部署完毕。
6.商城前端配置
1.安装nginx服务
登入Nginx节点,安装Nginx服务,命令如下:
Yum -y install nginx |
2.上传前端代码
将提供的dist文件夹上传至Nginx节点的/root目录下,然后将dist中的内容复制到nginx的项目目录,命令如下:
首先将nginx默认项目目录的文件删除:
Rm -rf /usr/share/nginx/html/* |
然后将dist中的文件复制至/usr/share/nginx/html目录下:
cp -rvf dist/* /usr/share/nginx/html |
3.修改nginx配置文件
修改nginx配置文件/etc/nginx/conf.d/default.conf如下,ip为运行jar包的两个服务器的ip
[root@nginx ~]# cat /etc/nginx/conf.d/default.conf upstream myuser { server 192.168.100.111:8082; server 192.168.100.112:8082; ip_hash; } upstream myshopping { server 192.168.100.111:8081; server 192.168.100.112:8081; ip_hash; } upstream mycashier { server 192.168.100.111:8083; server 192.168.100.112:8083; ip_hash; } server { listen 80; server_name localhost; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { root /usr/share/nginx/html; index index.html index.htm; } location /user { proxy_pass http://myuser; } location /shopping { proxy_pass http://myshopping; } location /cashier { proxy_pass http://mycashier; } #error_page 404 /404.html; } |
4.启动nginx服务
在nginx节点,启动nginx服务:
Systemctl start nginx |
查看Nginx是否启动,命令如下(查看80端口是否启动):
Netstat -ntpl |
7.商城后端配置
运行jar包
在两个jar节点上运行4个上传完毕的jar包,命令如下:
Jar1节点:
[root@jar1 ~]# nohup java -jar user-provider-0.0.1-SNAPSHOT.jar & [1] 2722 [root@jar1 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar1 ~]# nohup java -jar shopping-provider-0.0.1-SNAPSHOT.jar & [2] 2758 [root@jar1 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar1 ~]# nohup java -jar gpmall-shopping-0.0.1-SNAPSHOT.jar & [3] 2783 [root@jar1 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar1 ~]# nohup java -jar gpmall-user-0.0.1-SNAPSHOT.jar & [4] 2830 [root@jar1 ~]# nohup: 忽略输入并把输出追加到"nohup.out" |
查看jar包是否运行
Jar2节点:
[root@jar2 ~]# nohup java -jar user-provider-0.0.1-SNAPSHOT.jar & [1] 2576 [root@jar2 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar2 ~]# nohup java -jar shopping-provider-0.0.1-SNAPSHOT.jar & [2] 2598 [root@jar2 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar2 ~]# nohup java -jar gpmall-shopping-0.0.1-SNAPSHOT.jar & [3] 2620 [root@jar2 ~]# nohup: 忽略输入并把输出追加到"nohup.out" [root@jar2 ~]# nohup java -jar gpmall-user-0.0.1-SNAPSHOT.jar & [4] 2654 |
检查jar包是否运行
jobs
至此,商城系统部署完成
8.网站访问
打开浏览器,在地址栏中输入192.168.100.145,访问界面,如图所示