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

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 使用服务器部署微服务项目,其中也用到了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'
相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
弹性计算 监控 负载均衡
|
1月前
|
弹性计算 开发工具 git
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我在部署托管于Github/Gitee的代码到阿里云ECS服务器时,经常遇到繁琐的手动配置问题。近期,阿里云ECS控制台推出了一键构建部署功能,简化了这一过程,支持Gitee和GitHub仓库,自动处理git、docker等安装配置,无需手动登录服务器执行命令,大大提升了部署效率。本文将详细介绍该功能的使用方法和适用场景。
2分钟在阿里云ECS控制台部署个人应用(图文示例)
|
1月前
|
NoSQL 容灾 MongoDB
MongoDB主备副本集方案:两台服务器使用非对称部署的方式实现高可用与容灾备份
在资源受限的情况下,为了实现MongoDB的高可用性,本文探讨了两种在两台服务器上部署MongoDB的方案。方案一是通过主备身份轮换,即一台服务器作为主节点,另一台同时部署备节点和仲裁节点;方案二是利用`priority`设置实现自动主备切换。两者相比,方案二自动化程度更高,适合追求快速故障恢复的场景,而方案一则提供了更多的手动控制选项。文章最后对比了这两种方案与标准三节点副本集的优缺点,指出三节点方案在高可用性和数据一致性方面表现更佳。
|
1月前
|
监控 安全 持续交付
构建高效的微服务架构:从设计到部署
构建高效的微服务架构:从设计到部署
25 1
|
1月前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
68 1
|
1月前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
514 3
|
2月前
|
弹性计算 Java Linux
ECS使用体验的文章
ECS使用体验的文章
|
2月前
|
NoSQL Linux PHP
|
2月前
|
弹性计算 运维 安全
阿里云ecs使用体验
整了台服务器部署项目上线