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

系列五、搭建Naco(集群版)

一、搭建Naco(集群版)

1.1、前置说明

(1)64位Red Hat7 Linux 系统;

(2)64位JDK1.8+;备注:如果没有安装JDK,请参考【系列二、Linux中安装JDK】

(3)3个或者3个以上Nacos节点才能构成集群(伪分布式);

1.2、下载nacos1.4.2.tar.gz

参考【系列三、下载 & 安装Nacos(单机版)】这里不再赘述! 

1.3、上传 & 解压

(1)上传至/opt目录

(2)解压至/usr/local/nacos-cluster/

1.4、拷贝 &  重命名

(1)约定:集群的端口分别为7777、7778、7779

(2)拷贝3份,并重命名nacos7777、nacos7778、nacos7779,然后删除nacos文件夹

1.5、修改配置(注意备份!)

(1)application.properties端口修改:7777、7778、7779

(2)application.properties数据源修改为MySQL(3个配置文件都要修改),修改内容如下:
spring.datasource.platform=mysql
db.num=1
db.url=jdbc:mysql://localhost:3306/nacos?allowPublicKeyRetrieval=true&characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456

大坑:

        坑一:搭建时为了省事儿,我想连接Window中的nacos,发现死活连接不上,mysql.user#root用户的Host修改为%也不行,后台报错不允许连接!

        坑二:连接MySQL改成连接Linux中的MySQL,然后报:com.mysql.cj.exceptions.UnableToConnectException: Public Key Retrieval is not allowed!

                  解决方案:url加一个参数allowPublicKeyRetrieval=true,如上

                  参考:https://cloud.tencent.com/developer/article/2366608

(3)创建nacos数据库,并初始表,sql脚本在 /usr/local/nacos-cluster/nacos7777/conf/nacos-mysql.sql

(4)拷贝cluster.conf.example 为 cluster.conf,并添加节点配置;

说明:下面的IP为你的Linux服务器的IP地址。

(5)配置startup.sh

备份:

修改前:

修改后:

(6)启动nacos7777,观察能否正常启动,如果能正常启动,再分别启动7778、7779

# 启动7777服务

./startup.sh

# 查看启动日志

tail -1000f /usr/local/nacos-cluster/nacos7777/logs/start.out

 7777启动成功,接着分别启动7778、7779!

(7)Nginx反向代理配置 & 启动Nginx

# Nginx Nacos集群
upstream nacosClusterServer{server 127.0.0.1:7777;server 127.0.0.1:7778;server 127.0.0.1:7779;
}
server {listen			7788;server_name		127.0.0.1;location / {proxy_pass	http://nacosClusterServer;}
}

(8) spring.cloud.nacos.server-addr=xxx:7788

说明:此处的xxx为你的Nginx所在服务的IP地址,本集群搭建我的Nginx和nacos在同一台机器,如果不在同一台机器,修改为真实IP即可。

http://www.lryc.cn/news/272678.html

相关文章:

  • JavaScript中alert、prompt 和 confirm区别及使用【通俗易懂】
  • 【GoLang入门教程】Go语言几种标准库介绍(四)
  • 面试算法:快速排序
  • 航空业数字化展翅高飞,开源网安专业服务保驾护航
  • SpringBoot学习(三)-员工管理系统开发(重在理解)
  • 2 Windows网络编程
  • uniapp选择android非图片文件的方案踩坑记录
  • 前端发开的性能优化 请求级:请求前(资源预加载和预读取)
  • B01、类加载子系统-02
  • 用PHP搭建一个绘画API
  • 西安人民检察院 | OLED翻页查询一体机
  • superset利用mysql物化视图解决不同数据授权需要写好几次中文别名的问题
  • 输入输出流
  • IOS:Safari无法播放MP4(H.264编码)
  • Pycharm恢复默认设置
  • 简单计算器实现,包括两个数
  • 竞赛保研 基于机器视觉的手势检测和识别算法
  • Android App从备案到上架全过程
  • 用邮件及时获取变更的公网IP--------python爬虫+打包成exe文件
  • c++学习:函数模板+实战
  • three.js gltf后处理颜色异常(伽马校正)
  • 面试经典150题(55-58)
  • 如果一个n位正整数等于其各位数字的n次方之和
  • solidity显示以太坊美元价格
  • ChatGPT学习笔记——大模型基础理论体系
  • Termius for Mac/Win:一款功能强大的终端模拟器、SSH 和 SFTP 客户端软件
  • python如何读取被压缩的图像
  • 华为OD机试 - 寻找最优的路测线路(Java JS Python C)
  • 互联网演进历程:从“全球等待”到“全球智慧”的技术革新与商业变革
  • 计算机组成原理——总线