SpringCloud Alibaba Nacos集群搭建
Posted 小毕超
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud Alibaba Nacos集群搭建相关的知识,希望对你有一定的参考价值。
一、Nacos
前面的文章中我们讲解了Spring Cloud H版SR9版本全家桶,从本篇文章开始步入SpringCloud Alibabba,首先我们了解下什么是nacos。
Nacos 致力于发现、配置和管理微服务。提供了一组简单易用的特性集,帮助快速实现动态服务发现、服务配置、服务元数据及流量管理。
可以更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
二、CenterOS 中Nacos集群搭建
Nacos相比于eureka优点是不需要我们在创建项目进行集成,官方已经有集成好的安装包,我们直接使用即可。
首先进入官网,下载安装包:
https://github.com/alibaba/nacos/releases
下载好安装包,下面我们来搭建下nacos集群,下面先看下我们的部署架构:
主机 | 角色 |
---|---|
192.168.40.130 | mysql,nacos1 |
192.168.40.167 | nginx,nacos2 |
192.168.40.168 | nacos3 |
开始安装Nacos集群
注意nacos依赖于java环境,安装前,确保已经安装好jdk
以下配制在三台主机上均做相同操作。
- 将安装包上传至服务器中
scp C:\\Users\\Administrator\\Desktop\\nacos\\nacos-server-2.0.3.tar.gz root@192.168.40.130:/nacos
- 解压安装包
tar -zxvf nacos-server-2.0.3.tar.gz
- 进入conf 目录下,在mysql 数据库中新建数据库nacos_config数据库,然后执行
nacos-mysql.sql
sql脚本
- 复制一份 cluster.conf
cp cluster.conf.example cluster.conf
- 修改为以下内容:
192.168.40.130:8848
192.168.40.167:8848
192.168.40.168:8848
- 修改 application.properties,主要修改mysql的连接
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://192.168.40.130:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root123
- 进入bin 目录启动nacos
./startup.sh
如果启动内存不够,修改下startup.sh
JAVA_OPT="$JAVA_OPT -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
启动后查看/log/start.out
已经安装成功了,下面随便写其中一个ip 进入可视化页面:
http://192.168.40.168:8848/nacos
用户名\\密码:nacos\\nacos
配制Nginx
使用nginx统一访问入口,修改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;
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;
include /etc/nginx/conf.d/*.conf;
upstream backserver
server 192.168.40.130:8848;
server 192.168.40.167:8848;
server 192.168.40.168:8848;
server
listen 8849;
server_name 192.168.40.167;
location /
proxy_pass http://backserver;
index index.html index.htm;
下面使用http://192.168.40.167:8849/nacos
即可
三、测试
从nginx入口进入nacos,创建一个配制文件:
创建后去每个主机下的nacos中查看:
由于数据存在mysql数据库中,其他节点也肯定有,也保证了数据的一致性。
喜欢的小伙伴可以关注我的个人微信公众号,获取更多学习资料!
以上是关于SpringCloud Alibaba Nacos集群搭建的主要内容,如果未能解决你的问题,请参考以下文章
SpringCloud Alibaba——服务注册与发现(Nacos)
springcloud 微服务Spring Cloud Alibaba 整合Nacos实战