linux搭建nacos集群

准备

检查是否安装jdk
[root@hao /usr/local/software/elk/logstash]# java -version
java version "1.8.0_341"
Java(TM) SE Runtime Environment (build 1.8.0_341-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.341-b10, mixed mode)

配置nacos

去github下载nacos:2.2.3:https://github.com/alibaba/nacos/tags
上传到linux的nacos文件夹并解压
[root@hao /usr/local/software/nacos]# tar -zxvf nacos-server-2.2.3.tar.gz
nacos/LICENSE
nacos/NOTICE
nacos/target/nacos-server.jar
nacos/conf/
nacos/conf/derby-schema.sql
nacos/conf/1.4.0-ipv6_support-update.sql
nacos/conf/application.properties.example
nacos/conf/nacos-logback.xml
nacos/conf/announcement.conf
nacos/conf/mysql-schema.sql
nacos/conf/cluster.conf.example
nacos/conf/application.properties
nacos/bin/startup.sh
nacos/bin/startup.cmd
nacos/bin/shutdown.sh
nacos/bin/shutdown.cmd
[root@hao /usr/local/software/nacos]# ls
nacos  nacos-server-2.2.3.tar.gz
改名为nacos_8848
[root@hao /usr/local/software/nacos]# mv nacos nacos_8848
[root@hao /usr/local/software/nacos]# ls
nacos_8848  nacos-server-2.2.3.tar.gz
复制两份分别为nacos_8858、nacos_8868
[root@hao /usr/local/software/nacos]# cp -r nacos_8848 nacos_8858
[root@hao /usr/local/software/nacos]# cp -r nacos_8848 nacos_8868
[root@hao /usr/local/software/nacos]# ls
nacos_8848  nacos_8858  nacos_8868  nacos-server-2.2.3.tar.gz
删除application.properties文件,把application.properties.example改为application.properties文件
[root@hao /usr/local/software/nacos]# cd nacos_8848/
[root@hao /usr/local/software/nacos/nacos_8848]# ls
bin  conf  LICENSE  NOTICE  target
[root@hao /usr/local/software/nacos/nacos_8848]# cd conf/
[root@hao /usr/local/software/nacos/nacos_8848/conf]# ls
1.4.0-ipv6_support-update.sql  application.properties          cluster.conf.example  mysql-schema.sql
announcement.conf              application.properties.example  derby-schema.sql      nacos-logback.xml
[root@hao /usr/local/software/nacos/nacos_8848/conf]# rm -rf application.properties
[root@hao /usr/local/software/nacos/nacos_8848/conf]# mv application.properties.example application.properties
[root@hao /usr/local/software/nacos/nacos_8848/conf]# ls
1.4.0-ipv6_support-update.sql  announcement.conf  application.properties  cluster.conf.example  derby-schema.sql  mysql-schema.sql  nacos-logback.xml
再修改application.properties文件

分类/spring/nacos_10.png  0 → 100644

### Count of DB:
db.num=1### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.133.100:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=Asia/Shanghai
db.user.0=root
db.password.0=123456
运行sql文件[解压文件夹下的conf/nacos-mysql.sql]
运行nacos:官网
启动:进入bin/文件夹下面
启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone
访问地址:http://192.168.133.100:8848/nacos,账号密码:nacos

SpringCloud-alibaba整合nacos作为配置中心

nacos作为项目的配置中心,替代config模块

新建命名空间

分类/spring/nacos_1.png  0 → 100644

分类/spring/nacos_2.png  0 → 100644

配置管理
新建配置

分类/spring/nacos_3.png  0 → 100644

分类/spring/nacos_4.png  0 → 100644

分类/spring/nacos_5.png  0 → 100644

点击发布
SpringBoot整合SpringCloud-alibaba
配置文件bootstrap.yml、application.yml文件
spring:cloud:nacos:config:server-addr: 192.168.133.100:8848namespace: b4d78fc0-d403-43d0-b721-93375733c9d2name: smart-configgroup: devfile-extension: yamlapplication:name: smart-alibaba-nacos
server:port: 15360
logging:level:com.wnhz.smart.cloud.alibaba: debug
测试
package com.wnhz.smart.cloud.alibaba.nacos.controller;import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** @author Hao* @date 2023-12-06 17:13*/
@RestController
@RequestMapping("/api/nacos")
@RefreshScope
@Slf4j
public class NacosController {@Value("${name}")private String name;@GetMapping("ali")public String ali() {log.debug("读取nacos的配置数据:{}", name);return name;}
}

分类/spring/nacos_9.png  0 → 100644

分类/spring/nacos_7.png  0 → 100644

其中@RefreshScope注解是实时监控配置内容的变化
下面是启动一次程序,换了次配置文件的返回结果由xxx变为yyy

分类/spring/nacos_8.png  0 → 100644

SpringCloud-alibaba整合nacos作为服务中心

为什么要使用集群

CAP,nacos实现了AP

配置nacos集群

进入/usr/local/software/nacos/nacos_8848/conf文件夹
把cluster.conf.example文件重命名为cluster.conf
[root@hao /usr/local/software/nacos/nacos_8848/conf]# ls
1.4.0-ipv6_support-update.sql  announcement.conf  application.properties  cluster.conf.example  derby-schema.sql  mysql-schema.sql  nacos-logback.xml
[root@hao /usr/local/software/nacos/nacos_8848/conf]# mv cluster.conf.example cluster.conf
编辑cluster.conf文件
[root@hao /usr/local/software/nacos/nacos_8848/conf]# vim cluster.conf

分类/nacos/nacos_3.png  0 → 100644

进入/nacos_8858/conf修改application.properties文件和cluster.conf文件,同上
分别启动8848和8858
[root@hao /usr/local/software/nacos/nacos_8848/bin]# ./startup.sh
[root@hao /usr/local/software/nacos/nacos_8858/bin]# ./startup.sh
进入网页:http://192.168.133.100:8848/nacos

分类/nacos/nacos_11.png

成功
配置一键启动脚本

startup.sh

echo "准备开启nacos服务集群..."#调用启动nacos的脚本
/usr/local/software/nacos/nacos_8848/bin/startup.sh
/usr/local/software/nacos/nacos_8858/bin/startup.sh

shutdown.sh

echo "准备关闭nacos服务集群..."#调用启动nacos的脚本
/usr/local/software/nacos/nacos_8848/bin/shutdown.sh
/usr/local/software/nacos/nacos_8858/bin/shutdown.sh

restart.sh

echo "准备重启nacos服务集群..."#调用关闭、启动nacos的脚本
/usr/local/software/nacos/nacos_8848/bin/shutdown.sh
/usr/local/software/nacos/nacos_8858/bin/shutdown.sh
/usr/local/software/nacos/nacos_8848/bin/startup.sh
/usr/local/software/nacos/nacos_8858/bin/startup.sh
3个文件给777权限
完成

实现负载均衡

删除docker的nginx容器
修改nginx.conf文件
user  nginx;
worker_processes  auto;
error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;
events {worker_connections  1024;
}
stream {#loadBlance is hereupstream nacos-tcp{server 192.168.201.107:9848;server 192.168.201.107:9858;}#server  code is here....server {listen 8777;proxy_pass     nacos-tcp;}
}
http {include       /etc/nginx/mime.types;default_type  application/octet-stream;log_format  main  '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  /var/log/nginx/access.log  main;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;#gzip  on;#loadBlance is hereupstream nacos-http{server 192.168.201.107:8848;server 192.168.201.107:8858;}#server  code is here....server {keepalive_requests 120;listen 7777;location /{proxy_pass             http://nacos-http;proxy_redirect         off;}}include /etc/nginx/conf.d/*.conf;
}
创建新容器
docker run -it \
--name nginx \
-p 8075:80 \
-p 8080:8080 \
-p 7777:7777 \
-p 8777:8777 \
--privileged=true \
--network wn_docker_net \
--ip 172.18.12.90 \
-v /etc/localtime:/etc/localtime \
-v /usr/local/software/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/software/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /usr/local/software/nginx/html:/usr/share/nginx/html \
-v /usr/local/software/nginx/logs:/var/log/nginx \
-d nginx
访问地址:http://192.168.133.100:7777/nacos

分类/nacos/nacos_8.png  0 → 100644

idea中的bootstrap.yml文件中修改ip和端口

分类/nacos/nacos_5.png  0 → 100644

启动idea,查看是否成功

分类/nacos/nacos_6.png  0 → 100644

完成

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

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

相关文章

【PTA-C语言】编程练习4 - 数组Ⅰ

如果代码存在问题,麻烦大家指正 ~ ~有帮助麻烦点个赞 ~ ~ 编程练习4 - 数组Ⅰ(1~7) 7-1 评委打分(分数 10)7-2 组合数的和(分数 10)7-3 找不同(分数 15)7-4 利用二分查找…

【Python】Python音乐网站数据+音频文件数据抓取(代码+报告)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

数据库:JDBC编程

专栏目录 MySQL基本操作-CSDN博客 MySQL基本操作-CSDN博客 数据库的增删查改(CRUD)基础版-CSDN博客 数据库增删改查(CRUD)进阶版-CSDN博客 数据库的索引-CSDN博客 基本概念 JDBC编程就是通过Java代码来操作数据库 api 数据库是…

深入理解网络 I/O 多路复用:SELECT、POLL

🔭 嗨,您好 👋 我是 vnjohn,在互联网企业担任 Java 开发,CSDN 优质创作者 📖 推荐专栏:Spring、MySQL、Nacos、Java,后续其他专栏会持续优化更新迭代 🌲文章所在专栏&…

工业4G路由器助力轨道交通城市地铁实现数字化转型

随着城市的科技不断发展,地铁系统的智能化程度也在不断提高。地铁闸机的网络部署已经成为地铁建设中必不可少环节。而4G路由器作为地铁闸机的网络通讯设备,助力轨道交通地铁闸机实现数字化转型。 工业4G路由器在地铁系统光纤宽带网络遇到故障或其他问题…

CGAL的推进前表面重建

从非结构化点云进行的曲面重建相当于生成一个合理的曲面,该曲面很好地近似于输入点。由于可能生成许多曲面,因此此问题不适合解决。已经提出了一系列广泛的方法来解决这个问题。其中包括变分方法、张量表决、隐式曲面和Delaunay三角剖分。 对于基于Delau…

gRPC三种流和消息格式

文章目录 消息格式RPC流长度前缀的消息分帧请求消息响应信息 三种流一元RPC服务流RPC客户流RPC双工流RPC 代码仓库 消息格式 RPC流 服务端实现protocol buffer定义的方法,客户端保留一个存根,提供服务端方法的抽象,客户端只需要调用存根中的…

【dig命令查询方法】

dig(Domain Information Groper)是一个用于查询DNS(域名系统)的命令行工具,它可以帮助您获取关于域名的各种信息,如IP地址、MX记录、NS记录等。下面是dig的详细使用教程。 基本语法: dig [ser…

文件被删除了怎么恢复?3个宝藏方法,快来get!

“我是一个学生党,期末的一些资料保存在电脑上,但是不知道是不是被我误删了,导致很多文件都找不到了。文件被删除了怎么恢复呢?大家帮我出出主意吧!” 对于经常在电脑上保存各种文件的用户来说,文件误删除是…

IPC之五:使用 System V 信号量集解决经典的‘哲学家就餐问题‘

IPC 是 Linux 编程中一个重要的概念,IPC 有多种方式,本文主要介绍信号量集(Semaphore Sets),尽管信号量集被认为是 IPC 的一种方式,但实际上通常把信号量集用于进程间同步或者资源访问互斥,信号量集和共享内存(Shared …

系列学习前端之第 2 章:一文精通 HTML

全套学习 HTMLCSSJavaScript 代码和笔记请下载网盘的资料: 链接: https://pan.baidu.com/s/1-vY2anBdrsBSwDZfALZ6FQ 提取码: 6666 HTML 全称:HyperText Markup Language(超文本标记语言) 1、 HTML 标签 1. 标签又称元素&#…

PR剪辑视频素材|真实胶片特效转场PR项目模板文件

Premiere转场模板,8个真实胶片特效转场PR项目模板视频素材。可以编辑和自定义媒体占位符。在视频的开头、中间和结尾使用。包含视频教程。 适用软件:PR2023及更新版本 | 分辨率:38402160 (4K) | 文件大小:16.43MB | 无需插件 来自…

AI并行计算:CUDA和ROCm

1 介绍 1.1 CUDA CUDA(Compute Unified Device Architecture)是Nvidia于2006年推出的一套通用并行计算架构,旨在解决在GPU上的并行计算问题。其易用性和便捷性能够方便开发者方便的进行GPU编程,充分利用GPU的并行能力&#xff0…

如何使用ArcGIS Pro制作类似CAD的尺寸注记

经常使用CAD制图的朋友应该比较熟悉CAD内的尺寸标注,这样的标注看起来直观且简洁,那么在ArcGIS Pro内能不能制作这样尺寸注记呢,答案是肯定的,这里为大家介绍一下制作的方法,希望能对你有所帮助。 数据来源 本教程所…

OpenGL ES 帧缓冲对象介绍和使用示例

一、介绍 1. 帧缓冲对象 默认情况下,OpenGL渲染的目标是屏幕,但如果你不想直接渲染到屏幕上,还需要对渲染结果做某些后期处理、渲染到纹理、阴影映射等操作,便可以使用帧缓冲对象,实现离屏渲染。 帧缓冲对象&#x…

JSON字符串转泛型对象

JSON字符串转泛型对象 以下问题只仅限于博主自身遇到&#xff0c;不代表绝对出现问题 相关类展示&#xff1a; 参数基类 public class BaseParams { }基类 public abstract class AbstractPush<Params extends BaseParams> {protected abstract void execute(Params…

怎么选护眼灯?考公必备护眼灯推荐

随着现在的近视问题受到越来越广泛的关注&#xff0c;各种护眼产品的需求量也一直在快速增加&#xff0c;其中最受广大家长、学生党欢迎的还是护眼台灯。因为专业的护眼台灯不仅可以补充我们夜晚工作、学习时不足的光亮&#xff0c;避免眼睛长时间处于昏暗的环境导致疲劳。 而…

018 OpenCV 人脸检测

目录 一、环境 二、分类器原理 2.1、概述 2.2、工作原理 三、人脸检测代码 一、环境 本文使用环境为&#xff1a; Windows10Python 3.9.17opencv-python 4.8.0.74 二、分类器原理 CascadeClassifier是OpenCV&#xff08;开源计算机视觉库&#xff09;中的一个强大的类…

day01十五模拟第二期

2 2——608#include <stdio.h> #include <math.h>int main(int argc, const char * argv[]) {int res1;for(int i1;i<2023;i){res(res*2)%1000;}printf("%d",res );return 0; }3 4-----4169 #include <stdio.h> #include<string.h> #inc…

C语言——指针(五)

&#x1f4dd;前言&#xff1a; 上篇文章C语言——指针&#xff08;四&#xff09;更加深入的介绍了不同类型指针的特点&#xff0c;这篇文章主要想记录一下函数与指针的结合运用以及const和assert关于指针的用法&#xff1a; 1&#xff0c;函数与指针 2&#xff0c;const 3&am…