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

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,182元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
简介: 使用服务器部署微服务项目,其中也用到了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'
相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
11天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1230 5
|
11天前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
59 0
API 微服务
27 0
|
18天前
|
jenkins Java 持续交付
使用 Jenkins 和 Spring Cloud 自动化微服务部署
随着单体应用逐渐被微服务架构取代,企业对快速发布、可扩展性和高可用性的需求日益增长。Jenkins 作为领先的持续集成与部署工具,结合 Spring Cloud 提供的云原生解决方案,能够有效简化微服务的开发、测试与部署流程。本文介绍了如何通过 Jenkins 实现微服务的自动化构建与部署,并结合 Spring Cloud 的配置管理、服务发现等功能,打造高效、稳定的微服务交付流程。
使用 Jenkins 和 Spring Cloud 自动化微服务部署
|
18天前
|
存储 域名解析 弹性计算
阿里云上云流程参考:云服务器+域名+备案+域名解析绑定,全流程图文详解
对于初次通过阿里云完成上云的企业和个人用户来说,很多用户不仅是需要选购云服务器,同时还需要注册域名以及完成备案和域名的解析相关流程,从而实现网站的上线。本文将以上云操作流程为核心,结合阿里云的活动政策与用户系统梳理云服务器选购、域名注册、备案申请及域名绑定四大关键环节,以供用户完成线上业务部署做出参考。
|
19天前
|
存储 缓存 安全
阿里云企业级云服务器收费标准、选型指南与活动价格参考
2025年租用阿里云企业级云服务器,用户可以选择多种实例类型和配置,以满足不同规模和需求的企业应用。目前在阿里云的活动中提供了包括通用算力型u1、通用型g9i与g8y、计算型c9i与c8y、内存型r9i等在内的多种企业级云服务器实例,例如,通用算力型u1实例2核4G5M带宽80G ESSD Entry云盘特惠价199元1年,计算型c9i实例2核4G活动价为1686.70元/1年起,通用型g9i实例2核8G活动价为2097.69元/1年起。本文将详细解析阿里云企业级云服务器的价格体系,涵盖实例规格、收费标准与活动及选型指南等,以供了解和参考。
|
25天前
|
存储 弹性计算 固态存储
阿里云云服务器配置攻略
选择云服务器需结合业务需求、访问量、ECS实例规格、存储类型与带宽等因素。个人用户可选轻量服务器,企业应用需更高配置,如通用型或内存型实例。带宽根据流量选择,支持按固定或使用量计费。存储方面,系统盘可选小容量,数据盘按需配置,I/O敏感业务建议SSD或ESSD云盘。
|
26天前
|
存储 缓存 数据挖掘
阿里云目前最便宜云服务器介绍:38元、99元、199元性能,选购攻略参考
轻量应用服务器2核2G峰值200M带宽38元1年;云服务器经济型e实例2核2G3M带宽99元1年;云服务器通用算力型u1实例2核4G5M带宽199元1年。对于还未使用过阿里云服务器的用户来说,大家也不免有些疑虑,这些云服务器性能究竟如何?它们适用于哪些场景?能否满足自己的使用需求呢?接下来,本文将为您全方位介绍这几款云服务器,以供您了解及选择参考。
|
27天前
|
弹性计算 运维 安全
阿里云轻量应用服务器介绍及搭建个人博客教程参考
阿里云轻量应用服务器是面向单机应用的新一代计算服务,支持一键部署,提供域名、网站、安全、运维等一站式管理,降低云计算使用门槛。本文介绍其产品特性,并详解如何用该服务器搭建WordPress个人博客,适合入门用户和开发者快速上手。
|
30天前
|
网络安全 云计算
如何设置阿里云轻量应用服务器镜像?
本文介绍了在阿里云轻量应用服务器上创建与配置镜像的详细步骤。镜像是一种特殊的文件系统映射,可用于快速克隆服务器配置。内容涵盖准备条件、登录控制台、创建实例、生成镜像、下载与设置镜像,以及如何使用镜像启动新实例。适合希望提升服务器部署效率的用户参考。