阿里云ECS使用体验--部署微服务项目

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 使用服务器部署微服务项目,其中也用到了mysql,nacos。

阿里云ECS使用体验--部署微服务项目

1. 使用背景

本人是计算机科学与技术专业大二学生,最近在做一个实验室管理系统项目。老师想让我们这个系统能够用起来,这是就需要服务器来支持了,所以就免费领取了阿里云的ECS进行使用。我的这个项目是一个SpringBoot的微服务项目,一共包含四个微服务,分别为api_gateway网关模块,oss阿里云存储模块,service_device设备模块,service_ucenter用户管理中心模块。除此之外,也使用了阿里巴巴的nacos注册中心,mysql数据库。

2.项目部署

  1. 首先,通过xshell远程连接到服务器
  2. 为服务器配置java环境
# 进入usr/local目录
cd /usr/local
# 通过Xshell从windows向linux传输文件, 输入rz,选择要传输的文件等待传输完成 
# 安装java环境,这里的安装包为jdk-8u281-linux-x64.tar.gz,解压安装包
tar -zxvf jdk-8u281-linux-x64.tar.gz
# 删除安装包
rm jdk-8u281-linux-x64.tar.gz
# 修改环境变量
vim /etc/profile

export JAVA_HOME=/usr/local/jdk1.8.0_281
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
# 使配置文件立即生效
source /etc/profile
# 测试java是否安装成功,输出java版本即代表配置成功
java -version
  1. 配置maven环境
# 进入usr/local目录
cd /usr/local
# 上传maven安装包,这里是apache-maven-3.6.3-bin.tar
# 解压
tar -zxvf apache-maven-3.6.3-bin.tar.gz
# 删除安装包
rm apache-maven-3.6.3-bin.tar.gz
# 修改环境变量
vim /etc/profile

export MAVEN_HOME=/usr/local/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
# 使配置文件立即生效
source /etc/profile
# 测试maven是否成功
mvn -version
  1. 安装mysql
# 下载mysql安装包
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
# 安装软件源
rpm -Uvh mysql57-community-release-el7-10.noarch.rpm
# 安装mysql服务端
yum install -y mysql-community-server
# 启动mysql
service mysqld start
# 启动服务
systemctl start mysqld
systemctl start mysqld.service
# 检测mysql运行状态
service mysqld status
systemctl status mysqld.service
# 查看临时密码
grep 'temporary password' /var/log/mysqld.log
# 登录
mysql -u root -p
https://blog.csdn.net/qq_23077403/article/details/85093705
# 修改密码复杂度
set global validate_password_policy=0;
set global validate_password_length=1;
# 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
  1. nacos
wget https://github.com/alibaba/nacos/releases/download/1.2.0/nacos-server-1.2.0.tar.gz
mv ./nacos-server-1.2.0.tar.gz /usr/local/
tar -zxvf ./nacos-server-1.2.0.tar.gz
application.properties中nacos.core.auth.enabled修改为true

#开启服务
[root@iZ0jl4zeeakpsmjy77xb38Z bin]# sh startup.sh -m standalone

#停止服务
[root@iZ0jl4zeeakpsmjy77xb38Z bin]# sh shutdown.sh
The nacosServer(8458) is running...
Send shutdown request to nacosServer(8458) OK

#查看状态
ps -ef | grep nacos
  1. 将打包好的项目jar包上传到服务器上面

其中运行jar包的几种方式如下:

  1. 方式一
java -jar service_device-0.0.1-SNAPSHOT.jar

特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出

那如何让窗口不锁定?

  1. 方式二
java -jar shareniu.jar &

&代表在后台运行。

特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。

继续改进,如何让窗口关闭时,程序仍然运行?

  1. 方式三,一般使用这种方式
nohup java -jar shareniu.jar &

nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行

当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。

  1. 方式四
nohup java -jar shareniu.jar >/dev/null  &  

解释下 >temp.txt

command >out.file

command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。

可通过jobs命令查看后台运行任务

jobs

那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。

查看某端口占用的线程的pid

netstat -nlp |grep :9181

3、访问服务器资源

将本地用到后台接口的URL改为服务器ip+端口号,并在ECS控制台中找到安全组,并开放对应的网关端口号即可。

const BASE_URL = 'http://服务器ip:8222'
相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2天前
|
弹性计算 负载均衡 算法
负载均衡如何帮助阿里云国际服务器搭建的网站或应用程序?
负载均衡如何帮助阿里云国际服务器搭建的网站或应用程序?
|
2天前
|
弹性计算
新手必看,阿里云国际购买服务器带宽如何选择
新手必看,阿里云国际购买服务器带宽如何选择
|
2天前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据
|
2天前
|
弹性计算 网络协议 Ubuntu
如何在阿里云国际版Linux云服务器中自定义配置DNS
如何在阿里云国际版Linux云服务器中自定义配置DNS
|
2天前
|
弹性计算 安全 Linux
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
|
2天前
|
人工智能 运维 Kubernetes
87cloud案例分析:阿里云国际服务器如何支持在线教育
87cloud案例分析:阿里云国际服务器如何支持在线教育
|
1天前
|
弹性计算
ECS使用体验
ECS使用体验
|
2天前
|
弹性计算
阿里云ECS使用体验
在申请高校学生免费体验阿里云ECS云服务器后的一些使用体验和感受。
|
2天前
|
固态存储
网站优化后如何降低阿里云国际版服务器成本
网站优化后如何降低阿里云国际版服务器成本
|
2天前
阿里云国际香港服务器,入手到底行不行?
阿里云国际香港服务器,入手到底行不行?