[Spring Cloud] Nacos 实战 + Aws云服务器

文章目录

  • 前言
  • 一、拥有一台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/153416.shtml

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

相关文章

Zynq-Linux移植学习笔记之66- 国产ZYNQ通过裕太PHY8521连接国产交换芯片

1、背景介绍 ZYNQ通过裕太PHY 8521主要连接两种国产交换芯片,一种为盛科的CTC8096,另一种为32所的JEM5396。框图示意如下: 2、硬件状态确认 首先检查phy的模式,确认为SGMII_MAC-RGMII_PHY 可通过读出A001寄存器确认状态 读出来应…

RESTful API 设计指南——开篇词

引言 十年后的今天,我终于学会了RESTful API。 以上,就是我最近一个月的心路历程。入职新公司不到2周,自己都还没完全理解RESTful API就要求给校招应届生培训,着实压力山大。培训结束后也感觉收获颇丰,遂总结分享出来&…

牛客——OR36 链表的回文结构(C语言,配图,快慢指针)

目录 思路一:链表翻转 思路二:快慢指针,分别从头和尾间开始比较 本题是没有对C的支持的,但因为CPP支持C,所以这里就用C写了,可以面向更多用户 链表的回文结构_牛客题霸_牛客网 (nowcoder.com) 思路一&am…

redis数据结构

redis数据结构 redis全名(Remote Dictionary Server),即远程字典服务 redis的值的数据结构类型有String、List、Set、Hash、zset(sorted set,有序集合)、Bitmaps(位图)、HyperLogLogs 注意:我使用的版本是6.0.10,不同版本可能略有…

YOLOv8-seg改进:重新思考轻量化视觉Transformer中的局部感知CloFormer,提升上下文感知权重来增强局部特征 |2023清华

🚀🚀🚀本文改进:CloFormertAttention利用共享权重和上下文感知权重有效地提取高频局部特征表示 🚀🚀🚀SEAM、MultiSEAM分割物与物相互遮挡、分割小目标性能 🚀🚀🚀YOLOv8-seg创新专栏:http://t.csdnimg.cn/KLSdv 学姐带你学习YOLOv8,从入门到创新,轻轻…

Java Enumeration 接口

Java Enumeration 接口 这段代码展示了如何使用 Enumeration 接口来遍历 Properties 对象的键。在这里,foo.getProp() 返回一个 Properties 对象,而 propertyNames() 方法返回一个 Enumeration 对象,它包含了 Properties 对象中所有键的枚举。…

synchronized锁膨胀过程

轻量级锁: 使用场景:如果一个对象虽然有多线程要加锁,但加锁的时间是错开的(也就是没有竞争),那么可以 使用轻量级锁来优化。 轻量级锁原理 1.创建锁记录(Lock Record)对象&#…

光谱图像超分辨率综述

光谱图像超分辨率综述 简介 ​ 论文链接:A Review of Hyperspectral Image Super-Resolution Based on Deep Learning UpSample网络框架 1.Front-end Upsampling ​ 在Front-end上采样中,是首先扩大LR图像,然后通过卷积网络对放大图像进行…

竞赛 题目:基于深度学习的中文汉字识别 - 深度学习 卷积神经网络 机器视觉 OCR

文章目录 0 简介1 数据集合2 网络构建3 模型训练4 模型性能评估5 文字预测6 最后 0 简介 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的中文汉字识别 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! &a…

什么是媒体见证?媒体宣传有哪些好处?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 一,什么是媒体见证? 媒体见证是指企业举办活动,发布会,邀请媒体现场采访的一种宣传方式,媒体到场后,对其进行记录…

lenovo联想笔记本ThinkPad P1 Gen5/X1 Extreme Gen5原装出厂Windows11预装OEM系统

链接:https://pan.baidu.com/s/13E97Nwc-0-N7ffPjEeeeOw?pwdep4l 提取码:ep41 原装出厂系统自带所有驱动、出厂主题壁纸、Office办公软件、联想电脑管家等预装程序 所需要工具:32G或以上的U盘 文件格式:ISO 文件大小&#xff…

Java实现俄罗斯方块游戏

俄罗斯方块游戏本身的逻辑: 俄罗斯方块游戏的逻辑是比较简单的。它就类似于堆砌房子一样,各种各样的方地形状是不同的。但是,俄罗斯方块游戏的界面被等均的分为若干行和若干列,因此方块的本质就是占用了多少个单元。 首先来考虑…

解决 Python requests 库中 SSL 错误转换为 Timeouts 问题

解决 Python requests 库中 SSL 错误转换为 Timeouts 问题:理解和处理 SSL 错误的关键 在使用Python的requests库进行HTTPS请求时,可能会遇到SSL错误,这些错误包括但不限于证书不匹配、SSL层出现问题等。如果在requests库中设置verifyFalse&…

《向量数据库指南》——Range Search 使用方法和参数检查

Range Search 使用方法 如需使用 Range Search,只需要修改搜索请求中的搜索参数。接下来我会讲一下的详细使用指南,在指南的最后还提供了 Python 示例代码。 开始前 请确保已安装并运行 Milvus Cloud。请确保已创建 1 个 Collection,并为该 Collection 创建索引。 Ra…

【LeetCode:2216. 美化数组的最少删除数 | 贪心】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

掌握源码,轻松搭建:一站式建站系统源码 附完整搭建步骤与教程

随着互联网的快速发展,网站已成为人们生活中不可或缺的一部分。然而,对于许多初学者或中小企业来说,搭建一个完整的网站系统并非易事。这涉及到前端和后端的开发、数据库管理等多个环节。为了解决这一痛点,我们推出了一站式建站系…

sortablejs拖拽后新增和删除行时顺序错乱

问题描述:如下图所示,使用sortablejs拖拽后,在序号2后新增行会出现新增行跑到第一行的错误顺序。 解决:在进行拖拽后,对表格数据进行清空重新赋值。

一种可度量的测试体系-精准测试

行业现状 软件行业长期存在一个痛点,即测试效果无法度量。通常依赖于测试人员的能力和经验,测试结果往往不可控,极端情况下同一个业务功能,即使是同一个人员在不同的时间段,测试场景和过程也可能不一致,从而…

抖音电商双11官方数据最全汇总!

11月13日,抖音电商数据发布“抖音商城双11好物节”数据报告,展现双11期间平台全域经营情况及大众消费趋势。 报告显示,10月20日至11月11日,抖音电商里的直播间累计直播时长达到5827万小时,挂购物车的短视频播放了1697亿…