深入浅出 -- 系统架构之微服务中Nacos的部署

news2024/11/18 2:30:48

前面我们提到过,在微服务架构中,Nacos注册中心属于核心组件,通常我们会采用高性能独立服务器进行部署,下面我们一起来看看Nacos部署过程:

1、环境准备

因为Nacos是支持windows和Linux系统的,且服务器操作系统一般都是Linux的,为了大家看完文章,可以按照步骤一步步把Nacos部署好,我们这里也采用Linux来部署Nacos。这里建议大家在电脑上装虚拟机,并搭建一个CentOs7或CentOs8的操作系统环境。我们这里服务器地址是:192.168.3.102,Nacos采用Java开发的,我们需要先安装JDK。

2、安装jdk

这里我们使用yum命令安装OpenJDK8。

yum -y install java-1.8.0-openjdk-devel.x86_64

#安装成功后验证Java版本

java -version

执行后输出:

(1)配置JAVA_HOME环境变量

安装完JDK后,需要手动配置一下JDK的环境变量,一般命名为JAVA_HOME,OpenJDK默认安装在usr/lib/jvm路径下的,我们通过编辑profile设置JAVA_HOME的环境变量:

[root@server-1 ~]# vim /etc/profile

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.el7_9.x86_64

export JRE_HOME=$JAVA_HOME/jre

export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

[root@server-1 ~]# source /etc/profile

最后要确认下,JAVA_HOME环境变量是否正确。

 
[root@server-1 ~]# echo $JAVA_HOME

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.272.b10-1.el7_9.x86_64

JDK安装完成后,我们开始进入Nacos的安装过程。

3、Nacos安装

(1)下载Nacos安装包

这里需要访问Nacos的中文官网获取Nacos的安装包:nacos-server-1.4.0.tar.gz。(不会下载的可以在gzh留言“Nacos”获取文件)。

(2)上传及解压

将Nacos压缩包上传到我们的虚拟机中,并进行解压。

[root@server-1 local]#  tar -xvf nacos-server-1.4.0.tar.gz

解压后进入文件夹即可看到以下结构:

  • bin:启用、关闭Nacos Server脚本。
  • conf:Nacos Server的配置文件。
  • data:Nacos数据目录。
  • logs:Nacos 日志目录
  • target:Nacos jar包目录。

(3)启动Nacos

[root@server-1 local]# cd nacos/bin

[root@server-1 bin]# sh startup.sh -m standalone

启动日志如下:

 
nacos is starting with standalone

nacos is starting, you can check the /usr/local/nacos/nacos/logs/start.out

Nacos默认是后台启动,与Redis类似,我们可以利用tail命令查看启动日志。可以看到Nacos默认

端口是8848,下面日志说明Nacos单机模式已经启动。

[root@server-1 bin]# tail -f /usr/local/nacos/logs/start.out

2024-02-06 21:03:18,759 INFO Tomcat started on port(s): 8848 (http) with context path '/nacos'

2024-02-06 21:03:18,766 INFO Nacos Log files: /usr/local/nacos/nacos/logs

2024-02-06 21:03:18,766 INFO Nacos Log files: /usr/loca/nacos/nacos/conf

2024-02-06 21:03:18,766 INFO Nacos Log files: /usr/local/nacos/nacos/data

2024-02-06 21:03:18,767 INFO Nacos started successfully in stand alone mode. use embedded storage

(4)开启防火墙

CentOs系统默认没有开放7848和8848端口,这里我们需要手动在防火墙放行这两个端口。

这里7848是Nacos集群通信端口,用于Nacos集群间进行检举、检测等。8848端口是Nacos对客户端提供服务的端口。

[root@server-1 bin]# firewall-cmd --zone=public --add-port=8848/tcp --permanent

success

[root@server-1 bin]# firewall-cmd --zone=public --add-port=7848/tcp --permanent

success

[root@server-1 bin]# firewall-cmd  --reload

success

至此,Nacos单机模式部署完毕。

(5)查看Nacos管理界面

上述操作完成后,我们可以在浏览器中输入:http://localhost:8848/nacos,回车后可以看到如下界面:

  • 管理界面账号密码默认都是nacos,提交后进入首页,点击左侧服务管理-服务列表,可以查看已注册微服务列表。

目前因为没有任何微服务注册,所以列表是空的,那如何在Nacos中注册微服务呢?我们以后下篇文章接着聊。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1571158.html

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

相关文章

【Java SE】继承与组合

🥰🥰🥰来都来了,不妨点个关注叭! 👉博客主页:欢迎各位大佬!👈 文章目录 1. 再谈初始化2. 再谈protected关键字2.1 子类可见性2.2 访问修饰限定符的选择 3. 继承与组合 1. 再谈初始化…

【Canvas与艺术】绘制铜质蓝底五周年(Five Years Anniversary)徽章

【关键点】 利用二次贝塞尔曲线生成环形波纹轮廓。 【成果图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>铜质五周年徽…

深入浅出 -- 系统架构之微服务标准组件及职责

我们来认识一下微服务架构在Java体系中依托哪些组件实现的。 相对于单体架构的简单粗暴&#xff0c;微服务的核心是将应用打散&#xff0c;形成多个独立提供的微服务&#xff0c;虽然从管理与逻辑上更符合业务需要。但微服务架构也带来了很多急需解决的核心问题&#xff1a; 1…

[数据结构初阶]堆的应用

各位读者老爷好&#xff0c;鼠鼠又来了捏&#xff01;鼠鼠上一篇博客介绍的堆&#xff0c;那么今天来浅谈以下堆的应用&#xff0c;那么好&#xff0c;我们先来看两个问题&#xff1a; 1.如果有一组乱序的数组数据&#xff0c;希望你将这组数组的数据排成升序或降序&#xff0c…

BP算法的直观原理

这幅图非常清晰说明了BP算法的原理。 这幅图非常清楚展现了每个隐藏神经元权重关联的downstream。

vscode-task.json自定义任务

以下所有内容,参考自VScode官方文档: vscode_task-docs任务说明文档vscode_variables-reference-docs变量说明文档vscode addtional docs for task 说明: 博客内容均为个人理解,有错误请移步官方文档, 查阅文档, 纠正错误. 这篇blog记录一下个人对vscode任务(task)的使用方法 个…

【opencv】教程代码 —video(1) 对象追踪

CamShift算法、MeanShift追踪算法来追踪视频中的一个目标 camshift.cpp CamShift算法 // 引入相关的头文件 #include <iostream> // 包含C的输入输出流库 #include <opencv2/imgcodecs.hpp> // OpenCV图像编解码功能 #include <opencv2/imgproc.hpp> // Open…

Redis -- 缓存击穿问题

缓存击穿问题也叫热点Key问题&#xff0c;就是一个被高并发访问并且缓存重建业务较复杂的key突然失效了&#xff0c;无数的请求访问会在瞬间给数据库带来巨大的冲击。 常见的解决方案有两种&#xff1a; 互斥锁 逻辑过期 逻辑分析&#xff1a;假设线程1在查询缓存之后&…

Java实现一个简易的布隆过滤器Bloom Filter

目录 什么是布隆过滤器&#xff1f; 作用&#xff1a; 实现一个简单的布隆过滤器&#xff1a; 解析&#xff1a; 什么是布隆过滤器&#xff1f; 布隆过滤器&#xff08;Bloom Filter&#xff09;是一种用于快速检查一个元素是否可能存在于一个集合中的数据结构&#xff0c;它…

【移动安全】对webview漏洞的一些分析

这次分析的app如下&#xff1a; 打开发现该app发现需要登录界面&#xff1a; 拖进jadx看一下&#xff0c;先来看一下AndroidManifest.xml文件 发现有两个类是导出&#xff0c;再来分析这两个类 这个RegistrationWebView类利用webview.loadUrl进行加载网页 java public class…

代码随想录第三十一天 | 贪心算法P1 | ● 理论基础 ● 455. ● 376. ● 53.

理论基础 题目分类 一般解题步骤 贪心算法一般分为如下四步&#xff1a; 将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解 这个四步其实过于理论化了&#xff0c;我们平时在做贪心类的题目 很难去按照这四步去思考&…

Ps:合并到 HDR Pro

Ps菜单&#xff1a;文件/自动/合并到 HDR Pro Automate/Merge to HDR Pro 合并到 HDR Pro Merge to HDR Pro命令可以将同一场景的具有不同曝光度的多个图像合并起来&#xff0c;从而捕获单个 HDR 图像中的全部动态范围。 合并到 HDR Pro 命令分两步进行。 首先&#xff0c;需要…

什么是NLP?

&#x1f916;NLP是什么&#xff1f;&#x1f916; NLP&#xff08;Natural Language Processing&#xff09;&#xff0c;全称自然语言处理&#xff0c;是人工智能不可或缺的一环&#xff0c;它搭建了人与计算机之间沟通的桥梁&#x1f309;。 &#x1f6e0;️NLP强大功能一…

Day:003 | Python爬虫:高效数据抓取的编程技术(爬虫基础)

urllib发送get请求 在目前网络获取数据的方式有多种方式&#xff1a;GET方式大部分被传输到浏览器的html&#xff0c;images, js,css, … 都是通过GET 方法发出请求的。它是获取数据的主要方法 例如&#xff1a;www.baidu.com 搜索 Get请求的参数都是在Url中体现的,如果有中…

客户不报预算咋办?

谈崩了10个单子&#xff0c;我才领悟到谈判的精髓。创业一年了&#xff0c;去年累计服务客户30。说起来是市场好也罢&#xff0c;凑巧也罢反正没怎么费劲就谈下了不少客户&#xff0c;也做到了月入5位数。 今年一开年因为有老客户撑着&#xff0c;我也没太认真拓展新客户&#…

Mysql数据库getshell方法

今天摸鱼时候&#xff0c;突然有人问我不同的数据库getshell的方式&#xff0c;一时间我想到了mysql还有redis未授权访问到getshell的方式&#xff0c;但是仅仅第一时间只想到了这两种&#xff0c;我有查了查资料&#xff0c;找到了上面两种数据库getshell的补充&#xff0c;以…

Android源码笔记-输入事件(二)

这一节主要了解输入事件的获取&#xff0c;InputReaderThread继承自C的Thread类&#xff0c;Thread类封装了pthread线程工具&#xff0c;提供了与Java层Thread类相似的API。C的Thread类提供了一个名为threadLoop()的纯虚函数&#xff0c;当线程开始运行后&#xff0c;将会在内建…

【Linux】软硬链接 / 动静态库

目录 一. 软硬链接1. 硬链接2. 软链接3. unlink4. 目录的硬链接 二. 动静态库1.1 静态库制作1.2 静态库使用2.1 动态库制作2.2 动态库使用3. 动态链接原理 一. 软硬链接 1. 硬链接 硬链接(hard link) 可以将它理解为原始文件的别名, 和原始文件使用相同的 inode 编号和 data …

GraphSage

背景 大型图中节点的低维嵌入在各种预测任务中非常有用。GraphSage是一种通用的归纳框架&#xff0c;它利用节点特征信息&#xff08;例如&#xff0c;文本属性&#xff09;有效地为以前看不见的数据生成节点嵌入。相比于对每个节点训练单独的嵌入&#xff0c;GraphSage学习了一…

深入浅出 -- 系统架构之单体到分布式架构的演变

一、传统模式的技术改革 在很多年以前&#xff0c;其实没有严格意义上的前后端工程师之分&#xff0c;每个后端就是前端&#xff0c;同理&#xff0c;前端也可以是后端&#xff0c;即Ajax、jQuery技术未盛行前的年代。 起初&#xff0c;大部分前端界面很简单&#xff0c;显示的…