首页 > 其他分享 >企业商城单节点部署

企业商城单节点部署

时间:2024-10-11 13:18:54浏览次数:10  
标签:gpmall 部署 jar nginx mall MariaDB root 节点 商城

3.8应用系统基础服务安装

3.8.1 案例目标

(1)了解应用系统需要的基础服务。

(2)安装应用系统需要的基础服务。

3.8.2规划节点

安装基础服务的服务器规划

IP地址

主机名

节点

192.168.213.160

mall

单节点服务器

3.8.3基础准备

使用VMWare Workstation软件安装CentOS 7.2操作系统,镜像使用提供的CentOS-7-x86_64-DVD-1511.iso,最小化安装CentOS 7.2系统,YUM源使用提供的本地gpmall-repo包(在项目3-软件包/商城系统-单节点中),安装基础环境。

1.修改主机名

修改主机名命令如下所示:

[root@localhost ~]# hostnamectl set-hostname mall

[root@mall ~]# hostnamectl

   Static hostname: mall

         Icon name: computer-vm

           Chassis: vm

        Machine ID: dae72fe0cc064eb0b7797f25bfaf69df

           Boot ID: af0da0209e864a9badd064fcc9ad7b0e

    Virtualization: kvm

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-229.el7.x86_64

      Architecture: x86_64

2.修改/etc/hosts配置文件如下:

[root@mall ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.213.160 mall

3.配置本地YUM源

将提供的packages包上传到服务器的/root目录下,并配置本地local.repo文件,具体代码如下所示。(若使用的是vmware安装的centos7.2系统,自带的CentOS.repo文件不要移除。若使用的是openstack中的centos7.2qcow2镜像需要将自带的CentOS.repo文件移除。)

[root@mall ~]# cat /etc/yum.repos.d/local.repo

[centos]

name=centos

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

[mall]

name=mall

baseurl=file:///root/gpmall-repo

gpgcheck=0

enabled=1

配置完文件

使用命令清除完缓存

#yum clean all

表示清除缓存数据

#yum repolist

列出当前系统中已配置的软件仓库信息

4.安装基础服务

安装基础服务,包括Java JDK环境、数据库、Redis、Nginx等,安装基础服务的命令具体如下。

(1)安装Java环境

[root@mall ~]# yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel

...

[root@mall ~]# java -version

openjdk version "1.8.0_222"

OpenJDK Runtime Environment (build 1.8.0_222-b10)

OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

  1. 安装Redis缓存服务

在安装redis前先安装epel-re源

yum -y install epel-release

[root@mall ~]# yum install redis -y

安装成功

(3)安装Elasticsearch服务

增加yum源,写入yum源文件

[elasticsearch-7.x]

name=Elasticsearch repository for 7.x packages

baseurl=https://artifacts.elastic.co/packages/7.x/yum

gpgcheck=1

gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

enabled=1

autoload=1

下载elasticesearch

yum install elasticsearch -y

(4)安装nginx服务

yum install nginx -y

(5)安装mariadb

yum -y install mariadb mariadb-server

(6)安装zookeeper:

[root@mall ~]# tar -zxvf zookeeper-3.4.14.tar.gz

进入到zookeeper的conf目录下,将zoo_sample.cfg文件重命名为zoo.cfg,启动zookeeper

[root@mall conf]# mv zoo_sample.cfg zoo.cfg

[root@mall bin]# ./zkServer.sh status

(7)查看zookeeper状态

(8)安装kafka服务

[root@mall ~]# tar -zxvf kafka_2.11-1.1.1.tgz

(9)启动kafuka并查看是否启动成功。9092端口为kafka端口

#netstat -lnpt(如果命令使用不了#yum install -y net-tools)使用括号内得安装一下

5.启动服务

  1. 启动数据库并配置:修改数据库配置文件并启动,uroot p123456

并创建gpmall数据库,导入gpmall.sql.

修改/etc/my.cnf配置文件添加如下字段

[mysqld]

init_connect='SET collation_connection = utf8_unicode_ci'

init_connect='SET NAMES utf8'

character-set-server=utf8

collation-server=utf8_unicode_ci

skip-character-set-client-handshake

(2)启动数据库

[root@mall ~]# systemctl start mariadb

(3)给予root用户权限

MariaDB [(none)]> grant all privileges on *.* to root@localhost identified by '123456' with grant option;

MariaDB [(none)]> grant all privileges on *.* to root@"%" identified by '123456' with grant option;

启动数据库命令如下。

[root@mall ~]# systemctl start mariadb

(4)设置root用户的密码为123456并登录。

[root@mall ~]# mysqladmin -uroot password 123456

[root@mall ~]# mysql -uroot –p123456

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 9

Server version: 10.3.18-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>

设置root用户的权限,命令如下:

MariaDB [(none)]> grant all privileges on *.* to root@localhost identified by '123456' with grant option;

Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> grant all privileges on *.* to root@"%" identified by '123456' with grant option;

Query OK, 0 rows affected (0.001 sec)

(5)将gpmall.sql文件上传至云主机的/root目录下。创建数据库gpmall并导入gpmall.sql文件。

MariaDB [(none)]> create database gpmall;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> use gpmall;

MariaDB [mall]> source /root/gpmall.sql

(6)退出数据库并设置开机自启。

MariaDB [mall]> Ctrl-C -- exit!

Aborted

[root@mall ~]# systemctl enable mariadb

(7)启动Redis服务

(8)修改Redis配置文件,编辑/etc/redis.conf文件。

将bind 127.0.0.1这一行注释掉;将protected-mode yes 改为 protected-mode no。

启动Redis服务命令如下。

(9)配置Elasticsearch服务并启动

配置Elasticsearch服务命令如下

[root@mall ~]# vi /etc/elasticsearch/elasticsearch.yml

在文件最上面加入三条语句如下:

http.cors.enabled: true

http.cors.allow-origin: "*"

http.cors.allow-credentials: true

将如下4条语句前的注释符去掉,并修改network.host的IP为本机IP。

cluster.name: my-application

node.name: node-1

network.host: 172.16.51.29

http.port: 9200

(10)最后修改完之后保存退出。然后启动Elasticsearch并设置开机自启,命令如下。

[root@mall ~]# systemctl start elasticsearch

[root@mall ~]# systemctl enable elasticsearch

Created symlink from /etc/systemd/system/multi-user.target.wants/elasticsearch.service to /usr/lib/systemd/system/elasticsearch.service.

(11)启动Nginx服务

启动Nginx服务命令如下。

[root@mall ~]# systemctl start nginx

[root@mall ~]# systemctl enable nginx

Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

3.9实战案例——应用系统部署

3.9.1 案例目标

(1)了解应用系统的部署架构。

(2)单节点部署应用系统。

3.9.2 案例分析

1.规划节点

单节点部署应用系统的规划,见表3-9-1。

表3-9-1 规划节点

IP地址

主机名

节点

192.168.213.160

mall

单节点服务器

2.基础准备

使用提供gpmall-shopping-0.0.1-SNAPSHOT.jar、gpmall-user-0.0.1-SNAPSHOT.jar、shopping-provider-0.0.1-SNAPSHOT.jar、user-provider-0.0.1-SNAPSHOT.jar 、dist这5个包部署应用系统,其中4个jar包为后端服务包,dist为前端包。(在项目3-软件包\商城系统-单节点\gpmall项目包-单机下)

3.9.3 案例实施

1.全局变量控制

修改/etc/hosts文件,修改项目全局配置文件如下(红框标注的IP地址应修改为本机IP,原有的172.16.51.29 mall映射删除):

[root@mall ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.51.29 kafka.mall

127.0.0.1 mysql.mall    

172.16.51.29 redis.mall

172.16.51.29 zookeeper.mall

此处后期mysql前IP地址改为127.0.0.1

2.部署前端

将dist目录上传至服务器的/root目录下。接着将dist目录下的文件,复制到Nginx默认项目路径(首先清空默认项目路径下的文件)。

[root@mall ~]# rm -rf /usr/share/nginx/html/*

[root@mall ~]# cp -rvf dist/* /usr/share/nginx/html/

修改Nginx配置文件/etc/nginx/conf.d/default.conf,添加映射如下所示(红框部分):

[root@mall ~]# vi /etc/nginx/conf.d/default.conf

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://127.0.0.1:8082;

        }

    location /shopping {

            proxy_pass http://127.0.0.1:8081;

        }

    location /cashier {

            proxy_pass http://127.0.0.1:8083;

        }

    #error_page  404              /404.html;

注意:这里最后大括号要括回来

重启nginx服务

systemctl restart nginx

前端配置完毕。

出现的问题:在安装nginx后,在/etc/nginx/conf.d/目录下没有任何文件,我自行创建了一个default.conf文件并写入相关参数保存。

3.后端配置

上传四个jar包到服务器的/root下面

极易出现问题

启动如下命令:

[root@mall gpmall]# nohup java -jar shopping-provider-0.0.1-SNAPSHOT.jar &

[root@mall gpmall]# nohup java -jar user-provider-0.0.1-SNAPSHOT.jar &

[root@mall gpmall]# nohup java -jar gpmall-shopping-0.0.1-SNAPSHOT.jar &

[root@mall gpmall]# nohup java -jar gpmall-user-0.0.1-SNAPSHOT.jar &

4.网站访问

在浏览器中输入本机ip

http://ip

登入用户

选中商品加入购物车并下单

标签:gpmall,部署,jar,nginx,mall,MariaDB,root,节点,商城
From: https://blog.csdn.net/2401_86247463/article/details/142807120

相关文章

  • 【孤岛划分】分布式能源接入弹性配电网模型研究【IEEE33节点】(Matlab代码实现)
    目录......
  • LLAVA部署
    先简单记录版本,以后再详细;haotian-liu/LLaVAatv1.2.1(github.com) 当前调通版本:cuda11.7;cudnnLLava-1.2.1;python3.10;torch2.0.1flash-attn; flash_attn-2.0.7+cu117torch2.0cxx11abiTRUE-cp310-cp310-linux_x86_64.whl3090Tillava-7b......
  • ArgoCD + ArgoCD Image Updater 部署实现
    部署思路踩坑整理1、ArgoCD和ArgoCDImageUpdater是2个不同的程序。"ArgoCDImageUpdater小工具"没有集成在ArgoCD中需要单独部署。2、单独的ArgoCD能够实现基于git仓库变更作为应用部署的事实来源[参考子页:argocd根据镜像tag变化实现自动发布的2种方式];ArgoCD+"ArgoCD......
  • 深信服超融合平台部署Kylin系统详细步骤
    创建虚拟机登录深信服超融合平台,按照图下所示选择虚拟机在想要新增虚拟机的分组里,右键,点击新增虚拟机在弹出的窗口里设置好虚拟机名称和操作系统,其他的选项按照需求自己设定处理器、内存、磁盘大小按照需求设定好,网络需要点击图下所示位置进行设置点击图下所示位置......
  • jsp大学生公寓管理系统tj767--程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,工作人员,宿舍信息,住宿信息,报修信息,维修信息,人员评分,评分信息开题报告内容一、研究背景与目的随着高校扩招,大学生公寓管理面临诸多挑战,如住宿分配、......
  • jsp大学生创新创业管理系统09jwy程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表学生,教师,专家,项目信息,项目分配,项目类型开题报告内容一、项目名称大学生创新创业管理系统二、项目背景与意义在“大众创业,万众创新”的时代背景下,大学生......
  • jsp村级技能培训管理系统q7e84(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表用户,品种分类,种植技术,农业知识,科学技术开题报告内容一、研究背景与意义随着农村经济的快速发展,农民对技能培训的需求日益增长。传统的村级技能培训管理方......
  • jsp大连东软人才培训中心oa系统tc617--(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表员工,部门,岗位,会议室类型,会议室,会议室预约,会议室取消,考勤信息,日程信息,员工请假,公文信息开题报告内容一、研究背景随着信息技术的不断发展和企业管理......
  • 昆仑虚 - NextJS 项目如何进行部署?
    引言NextJS是一个构建于NodeJS之上的一个Web开发框架。它基于React特性进行了一些列的扩展!!在社区中也很是火热,前段时间「昆仑虚」也终于完成了项目的迁移(React=>NexJS)!!那么接下来就是项目部署,NextJS相比常规的前端部署还是有所区别的:常规的前端项......
  • 基于SpringBoot+Vue+uniapp的在线远程考试系统的详细设计和实现(源码+lw+部署文档+讲
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我代码参考数据库参考源码获取前言......