集群应用系统
集群应用系统
使用Mycat读写分离数据库作为应用系统的数据库后端,使用ZooKeeper集群,Kafka集群提供应用系统调度服务,使用Reids提供应用系统消息队列服务
节点分配
192.168.37.14 mycat,zookeeper1
192.168.37.12 db1,zookeeper2
192.168.37.13 db2,zookeeper3
192.168.37.15 redis,nginx
192.168.37.16 jar1
192.168.37.17 jar2
修改各个节点名称
# hostnamectl set-hostname jar1
# hostnamectl set-hostname jar2
# hostnamectl set-hostname redis
构建集群应用系统环境
修改数据库配置
新建gpmall数据库(db1)
将提供的gpmall.sql数据库文件上传到db1的/root目录下
# mysql -uroot -p123456
创建库gpmall,将提供的gpmall.sql文件导入到gpmall库中
> create database gpmall;
> use gpmall
> source /root/gpmall.sql
> quit
退出数据库
修改mycat配置(mycat)
修改配置文件
# vi /usr/local/mycat/conf/schema.xml
# vi /usr/local/mycat/conf/server.xml
在文件的最后部分
重启服务(mycat)
# cd /usr/local/mycat/bin
重启mycat服务
# ./mycat restart
查看服务状态(8066端口存在)
# netstat -ntpl
安装redis服务
修改yum源(redis)
将提供的gpmall-repo文件夹上传至redis的/opt目录下
移动文件
# mv /etc/yum.repos.d/* /media/
修改yum源文件
# vi /etc/yum.repos.d/local.repo
[gpmall]
name=gpmall
baseurl=file:///opt/gpmall-repo
gpgcheck=0
enabled=1
安装并启动redis服务(redis)
安装服务
# yum install -y redis
修改配置文件
# vi /etc/redis.conf
将bind 127.0.0.1这一行注释掉,将protected-mode yes改为protected-mode no
启动服务
# systemctl start redis
# systemctl enable redis
查看服务状态(6379端口存在)
# netstat -ntpl
部署集群应用系统
基础环境配置
安装java环境(jar1、2)
# yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
查看java版本
# java -version
后端配置
配置hosts文件(jar1、2,nginx)
编辑hosts文件
# vi /etc/hosts
运行jar包(jar1、2)
将提供的4个jar包,上传至jar1、jar2的/root目录下
运行jar包
# nohup java -jar user-provider-0.0.1-SNAPSHOT.jar &
# nohup java -jar shopping-provider-0.0.1-SNAPSHOT.jar &
# nohup java -jar gpmall-shopping-0.0.1-SNAPSHOT.jar &
# nohup java -jar gpmall-user-0.0.1-SNAPSHOT.jar &
检查是否同时运行
# ps -aux |grep java
前端配置
安装nginx服务(nginx)
# yum install -y nginx
上传前端代码(nginx)
将提供的dist文件夹上传至nginx的/root目录下
先将nginx默认项目目录的文件删除
# rm -rf /usr/share/nginx/html/*
将dist中的文件复制到目录下
# cp -rvf dist/* /usr/share/nginx/html/
修改nginx配置文件(nginx)
# vi /etc/nginx/conf.d/default.conf
添加内容
启动nginx服务(nginx)
# systemctl start nginx
查看服务状态(80端口存在)
# netstat -ntpl
网站访问
关闭各个机器的防火墙
# systemctl stop firewalld
在地址栏中输入nginx对应ip,购买产品成功