CentOS环境下Nacos2.3集成PostgreSQL


title: CentOS环境下Nacos2.3集成PostgreSQL
date: 2023-12-21 19:15:00
categories: Nacos
description: CentOS环境下Nacos2.3集成PostgreSQL

1. 目录

NACOS

  • 1. 目录
  • 2. 简介
  • 3. 安装部署
    • 3.1. 部署模式
    • 3.2. 环境准备
    • 3.3. 下载安装文件
    • 3.4. PostgreSQL插件
      • 3.4.1. 下载地址
      • 3.4.2. 结构
      • 3.4.3. 编译
      • 3.4.4. 初始化SQL
  • 4. 修改配置
  • 5. 启动服务
  • 6. 配置开机自启
    • 6.1. 添加nacos.service文件
    • 6.2. 加入Nacos服务
    • 6.3. 设置开机自启
    • 6.4. 启动/停止
  • 7. 可能存在问题

2. 简介

Nacos 是阿里巴巴最新开源的项目,核心定位是 一个更易于帮助构建云原生应用的动态服务发现、配置和服务管理平台Nacos 提供一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

项目地址:https://github.com/alibaba/nacos/releases。

Nacos 提供四个主要功能:

  • 服务发现和服务运行状况检查

Nacos 使服务易于注册并通过DNS或HTTP接口发现其他服务。 Nacos 还提供服务的实时运行状况检查,以防止向不正常的主机或服务实例发送请求

  • 动态配置管理

动态配置服务使您可以在所有环境中以集中和动态的方式管理所有服务的配置。 Nacos 消除了在更新配置时重新部署应用程序和服务的需求,这使配置更改更加有效和敏捷。

  • 动态DNS服务

Nacos 支持加权路由,使您更轻松地在数据中心内的生产环境中实施中间层负载平衡,灵活的路由策略,流控制和简单的DNS解析服务。它可帮助您轻松实现基于DNS的服务发现,并防止应用程序耦合到特定于供应商的服务发现API。

  • 服务和元数据管理

Nacos提供了一个易于使用的服务仪表板,可帮助您管理服务元数据,配置,kubernetes DNS,服务运行状况和指标统计信息。

3. 安装部署

3.1. 部署模式

  • 单机模式 - 用于测试和单机试用。
  • 集群模式 - 用于生产环境,确保高可用。
  • 多集群模式 - 用于多数据中心场景。

3.2. 环境准备

  • JDK17+
  • PostgreSQL 16.1

3.3. 下载安装文件

从官方网站下载最新安装 latest stable release。

这里以nacos-server-x.x.x.tar.gz作为演示版本。

下载完之后,解压文件,这块就没什么好说的,具体在什么目录下,自行定义。为了安全需要,还是创建一个用户nacos用于启停nacos服务。


[root@localhost nacos]$ pwd
/data/nacos

3.4. PostgreSQL插件

3.4.1. 下载地址

https://github.com/wuchubuzai2018/nacos-datasource-extend-plugins.git

3.4.2. 结构

下载来时的是源码,文件结构如下:


nacos-datasource-plugin-ext|---nacos-all-datasource-plugin-ext|---nacos-datasource-plugin-ext-base              ---------|---nacos-postgresql-datasource-plugin-ext|---src|---resources|---schema|---nacos-pg.sql
3.4.3. 编译

下载完毕,编译成功后,nacos-postgresql-datasource-plugin-ext.jar 下生成的 Jar,拷贝至 NACOS_HOMEplugins 文件夹下。

3.4.4. 初始化SQL

PostgrelSQL初始化脚本在 nacos-postgresql-datasource-plugin-ext 路径下 src/resources/schema 下。

4. 修改配置

配置文件也在naocs安装文件夹conf下,文件名称application.properties,配置文件中提供修改默认端口、访问路径的属性等,我这为演示需要,只添加了数据库配置项,仅供参考。


pring.datasource.platform=postgresqldb.num=1
db.url.0=jdbc:postgresql://127.0.0.1:15433/postgres?tcpKeepAlive=true&reWriteBatchedInserts=true&ApplicationName=nacos_java
db.user=postgres
db.password=password
db.pool.config.driverClassName=org.postgresql.Driver

5. 启动服务

独立模式服务运行比较简单,直接指定-m模式命令后的参数启动即可。

[naocs@localhost bin]$ sh startup.sh -m standalone

Windows平台中可以双击 startup.cmd 以运行 NacosServer

cmd startup.cmd -m standalone

后台启动日

浏览器访问地址:http://ip:port:8848/nacos

输入默认账号密码:nacos/nacos,即可看到

启动后效果

单机独立模式启动成功!!!

在实际生产环境中 Nacos 肯定都是集群模式,一般而言,集群模式至少3个节点。

集群配置文件在安装文件夹confcluster.conf ,将每个 nacos 节点按照IP:PORT格式配置即可,按行分割。

//IP:PORT
192.168.9.121:8848
192.168.9.122:8848
192.168.9.122:8848

启动命令sh startup.sh,不带任何参数。

使用 Nacos 集群需要利用负载均衡来代理每个节点,额外的配置非本篇重点介绍,大家自行完成。

6. 配置开机自启

6.1. 添加nacos.service文件

/lib/systemd/system/ 路径下,添加 nacos.service 文件。


[Unit]
Description=nacos
After=network.target[Service]
Type=forking
ExecStart=/data/nacos/nacos//bin/startup.sh -m standalone
ExecReload=/data/nacos/nacos/bin/shutdown.sh
ExecStop=/data/nacos/nacos//bin/shutdown.sh
PrivateTmp=true[Install] 
WantedBy=multi-user.target

6.2. 加入Nacos服务


systemctl daemon-reload

6.3. 设置开机自启


systemctl enable nacos.service

6.4. 启动/停止


systemctl start nacos.servicesystemctl stop nacos.service

7. 可能存在问题

启动过程中可能存在错误,Nacos 是有 JAVA 开发而成,在启动的时候需要 JDK 版本,在系统环境中已经配置 JAVA_HOME ,在 service 脚本中,会从 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin 这些路径中寻找 javac,需要将我们自己的 JAVA 目录软链接到 /usr/bin/java 即可

20231225100055

所以需要建立软连接


ln -s /data/jdk/jdk17/bin/javac /usr/bin/javacchmod +x /data/jdk/jdk17/bin/javac

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

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

相关文章

VScode远程连接服务器,Pycharm专业版下载及远程连接(深度学习远程篇)

Visual Code、PyCharm专业版,本地和远程交互。 远程连接需要用到SSH协议的技术,常用的代码编辑器vscode 和 pycharm都有此类功能。社区版的pycharm是免费的,但是社区版不支持ssh连接服务器,只有专业版才可以,需要破解…

【论文阅读】MCANet: Medical Image Segmentation with Multi-Scale Cross-Axis Attention

文章目录 摘要创新点总结实现效果总结 摘要 链接:https://arxiv.org/abs/2312.08866 医学图像分割是医学图像处理和计算机视觉领域的关键挑战之一。由于病变区域或器官的大小和形状各异,有效地捕捉多尺度信息和建立像素间的长距离依赖性至关重要。本文提…

人工智能_机器学习073_SVM支持向量机_人脸识别模型建模_预测可视化_网格搜索交叉验证最优化参数对比---人工智能工作笔记0113

接着上一节来说,可以看到我们已经找到了合适的参数,然后 我们可以看一下这里 gc.best_params_ 就可以打印出最合适的参数 然后我们把最合适串按说填入到代码中,然后进行计算,看看得分 可以看到得分,训练数据是1.0 然后测试数据得分是0.7857...对吧

2024深入评测CleanMyMac X4.14.6破解版新的功能

随着时间的推移,我们的Mac电脑往往会变得越来越慢,存储空间变得越来越紧张,这时候一个优秀的清理工具就显得尤为重要。作为一款备受好评的Mac清理工具,它能够为你的Mac带来全方位的清理和优化。在本文中,我们将深入评测…

【HarmonyOS开发】OpenHarmony如何实现⼀次开发,多端部署

OpenHarmony提供用户程序框架、Ability框架以及UI框架,能够保证开发的应用在多终端运行时保证一致性。一次开发、多端部署。 多终端软件平台API具备一致性,确保用户程序的运行兼容性。 HarmonyOS提供了用户程序框架、Ability框架以及UI框架,…

WebRTC概念

定义 一个实时通信标准 通话原理 媒体协商 在WebRTC中,参与视频通讯的双方必须先交换SDP信息,获得一个都支持的编码格式 网络协商 目的:找到一条相互通讯的链路 做法:获取外网IP地址映射,通过信令服务器交换“网…

华锐三维云展平台 | VR在线展览云平台提供定制化虚拟展厅制作工具

随着科技的飞速发展,互联网技术的不断革新,广州华锐互动顺应时代需求,开发了VR在线展览云平台,用户可以在平台上自主创建属于自己的3D展厅。VR在线展览云平台正改变着传统展览行业的模式,为参展者提供更高效、更便捷、…

Hazel macOS自动化清理

Hazel是一款在Mac平台上的自动化文件管理工具,它可以帮助用户自动化处理文件,从而提高工作效率和减少重复性任务的时间和精力。以下是Hazel软件的功能特色: 强大的自动化处理功能:Hazel可以根据用户设定的规则,自动执…

Android---Kotlin 学习009

继承 在 java 里如果一个类没有被 final 关键字修饰,那么它都是可以被继承的。而在 kotlin 中,类默认都是封闭的,要让某个类开放继承,必须使用 open 关键字修饰它,否则会编译报错。此外在子类中,如果要复写…

Redis设计与实现之服务器与客户端

目录 一、服务器与客户端 1、初始化服务器 1. 初始化服务器全局状态 2. 载入配置文件 3. 创建 daemon 进程 4. 初始化服务器功能模块 5. 载入数据 6. 开始事件循环 2、 客户端连接到服务器 3、命令的请求、处理和结果返回 4、命令请求实例:SET 的执行过程 5、Redis服…

数据仓库【1】:简介

数据仓库【1】:简介 1、诞生背景1.1、数据仓库诞生原因1.2、历史数据积存1.3、企业数据分析需要 2、基本概述2.1、数据仓库(Data Warehouse,DW)2.2、数据仓库特点2.3、数据仓库 VS 数据库 3、技术实现3.1、数据仓库建设方案3.2、传…

sql_lab之sqli中的搜索型注入

搜索型注入 原理是运用模糊查询: select * from users where username like %a% 1.找到具有模糊查询的搜索框的注入点 2.构造闭合 因为模糊查询的代码是 select * from users where username like %a% 所以应该 鱼%’ -- s 判断构造闭合的函数是否正确 鱼%…

【JavaEE初阶一】线程的概念与简单创建

1. 认识线程(Thread) 1.1 关于线程 1.1.1 线程是什么 由前一节的内容可知,进程在进行频繁的创建和销毁的时候,开销比较大(主要体现在资源的申请和释放上),线程就是为了解决上述产生的问题而提…

apache禁止遍历目录

禁止Apache显示目录索引,禁止Apache显示目录结构列表,禁止Apache浏览目录,这是网上提问比较多的,其实都是一个意思。下面说下禁止禁止Apache显示目录索引的常见的3种方法。 要实现禁止Apache显示目录索引,只需将 Optio…

Jenkins的特殊操作定时自动执行任务以及测试报告调优

java -Dhudson.model.DirectoryBrowserSupport.CSP -jar Jenkins.war 测试报告 不美丽 执行上面的代码 重启jenkins 就好了

Ai企业系统源码 Ai企联系统源码 商用去授权 支持文心 星火 GPT4等等20多种接口

智思Ai系统2.4.9版本去授权(可商用)支持市面上所有版本的接口例如:文心、星火、GPT4等等20多种接口!代过审AI小程序类目!!! 安装步骤: 1、在宝塔新建个站点,php版本使用…

使用pytorch神经网络拟合计算模型

一. 内容简介 python调用百度翻译api,将中文论文翻译英文,并保留部分格式 二. 软件环境 2.1vsCode 2.2Anaconda version: conda 22.9.0 2.3数据文件 链接:https://pan.baidu.com/s/1csJOoErGyx77MW_FImVKjg?pwd1234 三.主要流程 3.…

铁山靠之——HarmonyOS组件 - 2.0

HarmonyOS学习第二章 一、HarmonyOS基础组件的使用1.1 组件介绍1.2 Text1.2.1 文本样式1.2.2 设置文本对齐方式1.2.3 设置文本超长显示1.2.4 设置文本装饰线 1.3 Image1.3.1 设置缩放类型1.3.2 加载网络图片 1.4 TextInput1.4.1 设置输入提示文本1.4.2 设置输入类型1.4.3 设置光…

王道考研计算机网络——数据链路层

码元和信号变化是一一对应的 低通:低于最高频率的可以通过 奈氏准则无噪声,香农定理有噪声 给出db,利用公式求出S/N 放到数字信道上传输就是基带信号,放到模拟信道上传输就是宽带信号 把基带信号调制成宽带信号之后,…

JSON在Java中的使用

目录 第一章、快速了解JSON1.1)JSON是什么1.2)json的语法格式①键值对、字符串、数字、布尔值、数组、对象②嵌套的格式 1.3)为什么使用JSON 第二章、发送和接收JSON格式数据2.1)postman发送JSON格式数据2.2)Java后端接…