当前位置: 首页 > article >正文

【亚马逊云科技产品测评】活动征文|aws云服务器 + 微服务Spring Cloud Nacos 实战

文章目录

  • 前言
  • 一、拥有一台Aws Linux服务器
    • 1.1、选择Ubuntu版本Linux系统
    • 1.2、创建新密钥对
    • 1.3、网络设置
    • 1.4、配置成功,启动实例
    • 1.5、回到实例区域
    • 1.6、进入具体的实例
    • 1.7、设置安全组
  • 二、在Mac上连接Aws云服务,并安装配置JDK11
    • 2.1、解决离奇的错误
    • 2.2、正常的连接
    • 2.3、更新apt管理软件包
    • 2.4、搜索openjdk11
    • 2.5、安装openjdk11
    • 2.6、检查Java版本
  • 3、安装Spring Cloud Nacos
    • 3.1、找到Nacos的下载地址
    • 3.2、在终端下载此地址
      • 3.2.1、在终端下,切换到软件包(soft)区域(没有可用sudo mkdir soft 创建)
      • 3.2.2、下载软件
    • 3.3、安装unzip
    • 3.4、解压Nacos压缩软件
  • 4、启动Nacos
    • 4.1、安全组开放Naocs端口
    • 4.2、访问Nacos管理端
  • 总结


前言

Java云原生微服务的发展史可以追溯到近几年云计算和微服务架构的兴起。以下是一个简化的概述:

  • 初始阶段:在云原生和微服务概念出现之前,Java应用程序通常是单体应用,所有功能都打包在一个应用中。这些应用程序部署在大型机上,随着业务需求的增长,这种模式的扩展性和维护性逐渐暴露出问题。

  • 微服务架构的出现:为了解决单体应用的问题,微服务架构逐渐流行。在这种架构中,应用被拆分成一系列小型的、独立的服务,每个服务都运行在自己的进程中,并使用轻量级通信机制进行通信。Java由于其强大的生态系统和丰富的库支持,成为微服务开发的重要语言。

  • 云原生的兴起:云原生是一种应用开发和部署的方法,它强调应用程序应该是为云环境设计的,能够充分利用云的弹性和分布式特性。云原生和微服务经常一起使用,云原生为微服务提供了最佳的运行环境。

  • Java与云原生微服务的融合:随着云原生和微服务的发展,Java社区也积极适应这种变化。例如,Spring Boot和Spring Cloud等框架的出现,使得使用Java开发云原生微服务变得更加容易。这些框架提供了开发、部署和管理微服务所需的各种功能。

  • 未来的发展:随着云原生技术的进一步发展,Java在云原生微服务领域的地位将更加重要。同时,由于Kubernetes等云原生技术的普及,Java应用程序的部署和管理也将变得更加简单和高效。

今天我们以aws云服务器 + 微服务Spring Cloud Nacos 实战为例,来体验一下云原生微服务的便捷。

一、拥有一台Aws Linux服务器

原来的文章里,我们创建了一个AWS Linux实例:【亚马逊云科技产品测评】活动征文|10分钟拥有一台AWS Linux系统,今天我们把Linux版本换成Ubuntu系统,在创建实例时,需要有针对性的调整。

1.1、选择Ubuntu版本Linux系统

点击【浏览其他AMI】,选择【Ubuntu Server 22.04 LTS(HVM) …】系统
在这里插入图片描述

1.2、创建新密钥对

创建完新密钥对,会自动下载同名的秘钥文件(aws.pem)。
在这里插入图片描述
可以把秘钥(aws.pem)移动到 Desktop文件夹下
在这里插入图片描述

1.3、网络设置

第一次创建实例,可以选择【创建安全组】
在这里插入图片描述
非第一次创建实例,可以选择【选择现有的安全组】
在这里插入图片描述

1.4、配置成功,启动实例

创建实例成功。( 这里新账号有一年期免费实例使用权,但是只能有一个实例免费。)
点击左上角的【EC2】或者【实例】
在这里插入图片描述

1.5、回到实例区域

EC2控制面板里的资源区域,可以看到正在运行的实例、安全组、弹性IP、密钥对、卷、实例等。
我们点击【实例(正在运行)】,进入正在运行的实例列表页面。
在这里插入图片描述

1.6、进入具体的实例

点击【实例ID】里的实例,进入实例详情页面。
在这里插入图片描述

1.7、设置安全组

可以看到左边的导航,以及内容页左上角的导航。
EC2 -> 实例 -> 我们选中的具体实例
在这里插入图片描述
点击【安全】,这里可以看到我们添加的【myweb】实例(默认实例开放80、22端口,不能开放8000、8848、8888等自定义端口)。
在这里插入图片描述

二、在Mac上连接Aws云服务,并安装配置JDK11

在Mac电脑上打开【终端】(Windows就是Xshell了)
在这里插入图片描述

2.1、解决离奇的错误

1.2处我们生成了aws.pem的秘钥,所以这里要选中aws.pem作为秘钥,我们可以把秘钥配置到环境变量,或者我们进入存放秘钥的文件夹操作。
比如1.2处我们把秘钥放在了Desktop ,我们第一步就是【cd Desktop】,进入到Desktop目录。
否则就会出现下面图上的错误情况
在这里插入图片描述

2.2、正常的连接

当秘钥正确,主机名无误后,就能正常连接上Aws Ubuntu Linux云服务器了。
在这里插入图片描述

2.3、更新apt管理软件包

执行【sudo apt update】命令,更新apt管理软件包配置,拉取到最新软件版本。
在这里插入图片描述

2.4、搜索openjdk11

执行【apt search openjdk】命令,会出现jdk可安装的信息列表,记住我们要安装的openjdk-11-jdk。

2.5、安装openjdk11

执行【sudo apt install openjdk-11-jdk】命令,安装openjdk-11-jdk。
在这里插入图片描述
在这里插入图片描述

2.6、检查Java版本

执行【java -version】命令,检查java的版本。我们刚才安装的是openjdk-11-jdk,这里显示【openjdk version “11.0.20.1” 2023-08-24 … 】,证明JDK 11安装配置成功。
在这里插入图片描述

3、安装Spring Cloud Nacos

可见以往的文章,云原生微服务实战 Spring Cloud Alibaba 之 Nacos,4.2部分有Nacos的可执行版本下载地址:
https://github.com/alibaba/nacos/releases/tag/2.0.4
关于Nacos的使用,在上述文章里有详细介绍,包括服务端、调用方等。
在这里插入图片描述

3.1、找到Nacos的下载地址

在github页面上找到Assets区域,并复制链接地址:https://github.com/alibaba/nacos/releases/download/2.0.4/nacos-server-2.0.4.zip
在这里插入图片描述

3.2、在终端下载此地址

3.2.1、在终端下,切换到软件包(soft)区域(没有可用sudo mkdir soft 创建)

【cd soft】
在这里插入图片描述

3.2.2、下载软件

执行命令【wget https://github.com/alibaba/nacos/releases/download/2.0.4/nacos-server-2.0.4.zip】,下载Nacos软件

此时去解压缩Nacos的压缩包,找不到unzip命令,我们需要去安装unzip工具。
在这里插入图片描述

3.3、安装unzip

执行命令【sudo apt install unzip】,下载解压缩软件,可以解压Nacos的zip压缩包。
在这里插入图片描述

3.4、解压Nacos压缩软件

执行命令【unzip nacos-server-2.0.4.zip】,解压Nacos的zip压缩包。
在这里插入图片描述

4、启动Nacos

进入到 **/nacos/bin 目录下,执行【./startup.sh -m standlone】(单机模式)
在这里插入图片描述

4.1、安全组开放Naocs端口

1、1.7部分,设置的 8888 端口
2、/nacos/conf/application.yaml文件,修改8848端口成8888
在这里插入图片描述
在这里插入图片描述

4.2、访问Nacos管理端

  • 访问地址:http://{AWS实例公网IP}/8888/nacos
  • 登录鉴权:nacos/nacos
  • 进入管理页面
    在这里插入图片描述

总结

以上就是今天要讲的内容,本文仅仅简单介绍了在Aws Ubuntu Linux系统上更新apt源、安装JDK11/unzip/nacos,并最终启动成功Spring Cloud Nacos服务,并通过开放Aws云服务安全组,使得Nacos服务能在公网上访问。


http://www.kler.cn/a/135993.html

相关文章:

  • Python tkinter写的《电脑装配单》和 Html版 可打印 可导出 excel 文件
  • day12
  • SpringBoot+Vue3实现阿里云视频点播 实现教育网站 在上面上传对应的视频,用户开会员以后才能查看视频
  • 基于Spring Boot的找律师系统
  • 【Maven】dependencyManagement依赖版本管理
  • maven-resources-production:ratel-fast: java.lang.IndexOutOfBoundsException
  • 使用Java解决快手滑块验证码
  • unity 打包exe设置分辨率
  • 线上bug-接口速度慢
  • Spring Boot - 自定义注解来记录访问路径以及访问信息,并将记录存储到MySQL
  • 解决 Python requests 库中 SSL 错误转换为 Timeouts 问题
  • 使用 Core Tools 在本地开发 Azure Functions
  • 【图数据库实战】-HugeGraph系列
  • SpringCloud 微服务全栈体系(十四)
  • 【brpc学习案例实践一】rpc服务构造基本流程
  • 彻底解决electron-builder安装问题与npm下载配置问题
  • Docker发布简单springboot项目
  • C++ 删除无头链上所有指定值为x的节点。
  • Redis设计与实现-数据结构(建设进度15%)
  • Re50:读论文 Large Language Models Struggle to Learn Long-Tail Knowledge
  • ubuntu 查看5000端口是否开放
  • 2023 极术通讯-汽车“新四化”路上,需要一片安全山海
  • 享元模式学习
  • 艾泊宇产品战略:灵感于鬼屋,掌握打造卓越用户体验的关键要素
  • C#单例模式懒汉式与饿汉式
  • CentOS 8搭建WordPress