【亚马逊云科技产品测评】活动征文|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.mzph.cn/news/152707.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RPC vs. HTTP:谁主沉浮在网络通信的江湖?

🎏:你只管努力,剩下的交给时间 🏠 :小破站 RPC vs. HTTP:谁主沉浮在网络通信的江湖? 前言第一:背景介绍第二:性能对比第三:适用场景第四:总结 前言…

golang学习笔记——要求用户输入一个数字,如果该数字为负数,则进入紧急状态

要求用户输入一个数字,如果该数字为负数,则进入紧急状态 编写一个要求用户输入一个数字的程序。 在开始时使用以下代码片段: package mainimport "fmt"func main() {val : 0fmt.Print("Enter number: ")fmt.Scanf(&quo…

代码随想录 Day50 单调栈 LeetCodeT503 下一个最大元素II T42接雨水

前言 前面我们说到了单调栈的第一题,下一个最大元素I,其实今天的两道题都是对他的变种,知道第一个单调栈的思想能够想清楚,其实这道题是很简单的 考虑好三个状态,大于等于小于,其实对于前面这些题目只要细心的小伙伴就会发现其实小于和等于的处理是一样的都是直接入栈,只有大于…

【Ubuntu】Windows远程Ubuntu系统

步骤 开启ssh服务并开放22端口关闭防火墙ufw或iptables ;或者将远程端口添加到入站与出站规则安装xrdp并将xrdp用户添加到ssl-cert用户组mstsc 远程,输入账号密码 1、开启ssh服务 1.1. 查看ssh是否已经开启 sudo ps -e | grep ssh如果最后返回是sshd…

Go并发编程学习-class1

class1. Mutex 解决资源并发访问 基础概念 临界区概念:一个被共享的资源,可以被并发访问。通过Mutex互斥锁,可以限定临界区只能由一个线程获取。 根据不同情况,不同适用场景 ●共享资源。并发地读写共享资源,会出现…

shell 脚本变量

目录 什么是 shell shell 的两种面向对象 shell 脚本概述 脚本 (本质为程序) 脚本的组成 执行脚本 例题 脚本构成 脚本执行逻辑及执行方式 脚本的常见错误 编写 shell 脚本 执行脚本文件的方式 重定向 重定向操作 shell 变量的作用及类型…

LeetCode第七题整数反转

题目描述如下 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 示例 1&…

【六袆 - MySQL】SQL优化;Explain SQL执行计划分析;

Explain SQL执行计划分析 概念:English Unit案例分析1.分析的SQL2.执行计划分析 【如图】MySQL执行计划参数以及它们的影响或意义:概念: MySQL执行计划(Execution Plan)是数据库系统根据查询语句生成的一种执行策略,用于指导数据库引擎执行查询操作。 English Unit This…

Spring整合Mybatis

之间简单配置过SqlSessionFactory&#xff0c;但这并不是正规的整合方式&#xff0c;MyBatis提供了mybatis-spring.jar专门用于两大框架的整合 Spring整合Mybatis的步骤&#xff1a; 导入MyBatis整合Spring的相关坐标 <dependency><groupId>org.springframework&l…

CentOS7安装部署Kafka with KRaft

文章目录 CentOS7安装部署Kafka with KRaft一、前言1.简介2.架构3.环境 二、正文1.部署服务器2.基础环境1&#xff09;主机名2&#xff09;Hosts文件3&#xff09;关闭防火墙4&#xff09;JDK 安装部署 3.单机部署1&#xff09;下载软件包2&#xff09;修改配置文件3&#xff0…

数据结构【栈】

文章目录 数据结构 栈栈的概念与结构栈接口实现 数据结构 栈 栈的概念与结构 栈是是一种特殊的线性表&#xff0c;栈的规定是只在一端插入删除数据&#xff0c;插入删除的一端叫做栈顶&#xff0c;另一端叫栈底。根据上面的特性&#xff0c;栈的数据是后入先出 栈接口实现 栈接…

【算法】二分查找-20231121

这里写目录标题 一、344. 反转字符串二、392. 判断子序列三、581. 最短无序连续子数组四、680. 验证回文串 II 一、344. 反转字符串 提示 简单 865 相关企业 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组…

JMeter-BeanShell预处理程序和BeanShell后置处理程序的应用

一、什么是BeanShell&#xff1f; BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器&#xff0c;JMeter性能测试工具也充分接纳了BeanShell解释器&#xff0c;封装成了可配置的BeanShell前置和后置处理器&#xff0c;分别是 BeanShell Pre…

代码随想录算法训练营第六十天 | LeetCode 84. 柱状图中最大的矩形

代码随想录算法训练营第六十天 | LeetCode 84. 柱状图中最大的矩形 文章链接&#xff1a;柱状图中最大的矩形 视频链接&#xff1a;柱状图中最大的矩形 1. LeetCode 84. 柱状图中最大的矩形 1.1 思路 本题是给一个数组形象得画出图后求矩形的最大面积是多少。本题和42. 接雨水…

Matlab loglog函数

loglog(X,Y) loglog(X,Y,LineSpec) loglog(X1,Y1,...,Xn,Yn) loglog(X1,Y1,LineSpec1,...,Xn,Yn,LineSpecn) loglog(Y) loglog(Y,LineSpec) loglog(tbl,xvar,yvar) loglog(tbl,yvar) loglog(ax,___) loglog(___,Name,Value) p loglog(___)说明 向量和矩阵数据 示例 loglog(X,Y…

IDEA前端thymeleaf只显示部分数据库问题

只显示int类型的number&#xff0c;不显示string类型的price和weight 先看一下apple.html <!DOCTYPE html> <html xmlns:th"http://www.thymeleaf.org"> <head><meta charset"UTF-8"><title>User List</title> </…

RuntimeError: PyPI no longer supports ‘pip search‘ (or XML-RPC search).

RuntimeError: PyPI no longer supports ‘pip search’ (or XML-RPC search). 1. ERROR: XMLRPC request failed Deprecated Methods https://warehouse.pypa.io/api-reference/xml-rpc.html#deprecated-methods PyPI XMLRPC Search Disabled https://status.python.org/inc…

el-popover和el-tooltip样式修改(普通的组件样式修改方法,对popover是不生效的)

第一步:‘popper-class’=‘popperClass’ //添加类名 <el-table-column label="审核状态" align="center"><template slot-scope="scope"><el-popoverpopper-class="addformPanel"placement="top"width=&…

8086/8088 存储器分段概念

8086/8088 存储器分段概念 这一节主要讲述8086/8088 存储器分段的概念。 目的 从8086 CPU开始采用了分段的方法管理存储器&#xff0c;只有充分理解存储器分段的概念和存储器逻辑地址和物理地址的关系&#xff0c;才能有助于我们掌握8086/8088汇编语言。 存储器分段的原因 在此…

【ArcGIS Pro微课1000例】0033:ArcGIS Pro处理cad数据(格式转换、投影变换)

文章目录 一、cad dwg转shp1. 导出为shp2. cad至地理数据库3. data interoperability tools二、shp投影变换一、cad dwg转shp 1. 导出为shp 加载cad数据,显示如下: 选择需要导出的数据,如面状,右键→数据→导出要素: 导出要素参数如下,点击确定。 导出的要素不带空间参…