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.hqwc.cn/news/265675.html

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

相关文章

java--正则表达式用于查找信息、用于搜索替换、分割内容

1.案例:使用正则表达式查找一段文本中的内容 需求:请把下面文本中的电话,邮箱,座机号码,热线都爬取出来。 2.正则表达式用于搜索替换、分割内容,需要结合String提供的如下方法完成

java定位系统源码,UWB技术的无线定位系统源码

UWB技术是一种传输速率高,发射功率较低,穿透能力较强并且是基于极窄脉冲的无线技术。UWB最优的应用环境是室内或者相对密闭的空间,有着厘米级的定位精度,不仅可以非常精准地进行位置跟踪,还可以快速地进行数据传输。 智…

npm run build时提示vue/types/jsx.d.ts中的错误

解决方法一: 可能是因为vue版本过高引起的 我直接将package.json中vue以及vue-template-compiler的版本的前面^去掉,安装指定的版本 注意:vue和vue-template-compiler需要版本一致 参考链接:链接 解决方法二: 如果如…

Unity_ET-TimerComponent

Unity_ET-TimerComponent 源码&#xff1a; namespace ETModel {public struct Timer{public long Id { get; set; }public long Time { get; set; }public TaskCompletionSource<bool> tcs;}[ObjectSystem]public class TimerComponentUpdateSystem : UpdateSystem<…

Facebook广告投放常见错误

在进行Facebook广告投放时&#xff0c;很容易犯一些常见的错误。这些错误可能导致广告投资的浪费&#xff0c;影响广告效果并降低回报。本文小编讲一些常见的Facebook广告投放错误&#xff0c;以及如何避免它们。 1、不明确目标受众 广告的成功与否很大程度上取决于你选择的目…

6-9 求一元函数定积分

一元函数f(x)在区间[a,b]上定积分∫ab​f(x)dx的几何意义是被积函数与横坐标轴以及直线xa和直线xb围成的曲边形的面积。依据几何意义求定积分的方法是将这个区域按x轴方向等分成若干个细小的条状区域&#xff0c;每个小区域近似于一个梯形(如图所示)&#xff0c;计算出所有小梯…

mycat部署和配置读写分离(二)

说明&#xff1a; MyCAT 是使用 JAVA 语言进行编写开发&#xff0c;使用前需要先安装 JAVA 运行环境(JRE),由于 MyCAT 中使用了 JDK7 中的一些特性&#xff0c;所以要求必须在 JDK7 以上的版本上运行。 1. jdk1.8安装 详见jdk环境安装 2. Mysql安装 详见mysql8.0.11源码安装…

pycharm手动安装包

1.下载对应的包 TTS PyPI 2.手动解压&#xff0c;找到文件放到pycharm对应项目的lib文件夹中 以TTS包为例&#xff0c;找到下载并解压的包中的2个文件&#xff0c;一个名称一个info结尾 3.放到项目的lib文件夹中 eg&#xff1a;路径&#xff1b;C:\doc\myProject\speaker\venv…

工业级路由器在货运物流仓储管理中的应用

工业级路由器在货运物流仓储管理中扮演着重要的角色&#xff0c;为整个物流系统提供了稳定可靠的网络连接和数据传输支持。下面将从以下几个方面介绍工业级路由器在货运物流仓储管理中的应用。 实时监控和追踪&#xff1a;工业级路由器通过与各种传感器、监控设备和物联网设备的…

亚马逊云科技Amazon Bedrock,现推出更多模型选择和全新强大功能

亚马逊云科技在re:Invent 2023上宣布推出Amazon Bedrock更多模型选择和强大功能&#xff0c;帮助客户更轻松地构建和规模化针对其业务定制的生成式AI应用程序。 Amazon Bedrock是一项全面托管的服务&#xff0c;用户可轻松访问来自AI21 Labs、Anthropic、Cohere、Meta、Stabili…

Word插件-好用的插件-一键标记-大珩助手

一键标记 在审阅重要文件时&#xff0c;需要将重点的信息标记出来&#xff0c;这些重点信息有一些具有相似性&#xff0c;比如甲方、地址、要求、必续等等&#xff0c;以避免遗漏重要内容&#xff0c;由此设计一个可一次标记多个关键字的标记工具 使用方法 关键字之间用逗号“…

PO模式在selenium自动化测试框架有什么好处

PO模式是在UI自动化测试过程当中使用非常频繁的一种设计模式&#xff0c;使用这种模式后&#xff0c;可以有效的提升代码的复用能力&#xff0c;并且让自动化测试代码维护起来更加方便。 PO模式的全称叫page object model&#xff08;POM&#xff09;&#xff0c;有时候叫做 p…