Nacos 是什么?
https://nacos.io/zh-cn/docs/what-is-nacos.html
服务(Service)是 Nacos 世界的一等公民。Nacos 支持几乎所有主流类型的“服务”的发现、配置和管理
我们开发说是:
配置中心和服务注册中心
不纠结了,做为一个运维,还是好好部署吧。
单机部署:
这个没什么好说的,用docker-compose 一键启动
- Clone 项目
git clone https://github.com/nacos-group/nacos-docker.git
cd nacos-docker
- 单机模式
docker-compose -f example/standalone-mysql.yaml up -d
集群部署
官网的文档比较简洁,用docker去搭建集群是伪集群。于是放弃用docker搭集群。换用官方的编译包。
以下为官方推荐的部署架构图
下载地址
https://github.com/alibaba/nacos/releases/download/1.1.3/nacos-server-1.1.3.tar.gz
tar -xvf nacos-server-1.1.3.tar.gz
cd nacos/conf
配置文件
[root@nodejs1 conf]# cat cluster.conf
#it is ip
#example
10.11.19.13
10.11.19.14
10.11.19.15
[root@nodejs1 conf]# cat application.properties
# spring
server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
# metrics for prometheus
#management.endpoints.web.exposure.include=*
# metrics for elastic search
management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=http://localhost:9200
# metrics for influx
management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=http://localhost:8086
#management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one
#management.metrics.export.influx.compressed=true
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D
# default current work dir
server.tomcat.basedir=
## spring security config
### turn off security
#spring.security.enabled=false
#management.security=false
#security.basic.enabled=false
#nacos.security.ignore.urls=/**
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://10.11.19.251:5500/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=nacos
db.password=Nacos_123.--
将更改好配置的压缩包传送到另外两台服务器,然后三台都执行启动操作
启动
cd nacos/bin
./startup.sh
nginx 配置反向代理
[root@mysql vhost]# cat nacos.conf
upstream serverNacos {
server 10.11.19.13:8848;
server 10.11.19.14:8848;
server 10.11.19.15:8848;
}
server {
listen 8080;
server_name localhost;
#charset koi8-r;
#access_log logs/nacos.log main;
location /nacos/ {
proxy_pass http://serverNacos/nacos/;
}
}
访问
http://nginxip:8080/nacos