阿里nacos的使用笔记(一)

一、定位:

  1. 它是一个Service的:注册发现管理、配置管理的服务器。
  2. 自身是用SpringBoot的完在的Java项目
  3. 有着“独立和集群”两种启动模式。
  4. 采用Derby(standalone模式)或Mysql(Cluster模式)做为持久化存储方案。
  5. 其管理的服务可以是:
    (1)SpringBoot微服务
    (2) K8S的Service
    (3)Doubbo的RPC Service

二、安装与启停管理:

  1. 下载:
    可以从https://github.com/alibaba/nacos/releases进行下载,我采用的是1.3.2的最新版本。
  2. 解压,并观察目录结构
    核心为bin和conf目录
  3. 启动和停止
    启动:bash startup.sh -m standalone,此时8848端口打开,同时可以使用http://localhost:8848/nacos/index.html进入管理界面,使用nacos/nacos进行登录。
    停止: bash shutdown.sh
    到此,完成了独立运行,此时使用了内置的tomcat和derby。

三、集群配置(单机版准备)

1. 配置application.properties

重新配置${nacos_home}/conf/application.properties文件:

server.servlet.contextPath=/nacos
server.port=8848
# ============ 以下部分是配置的关键所在 =============================
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=johnn
db.password=123
# ============ 以上部分是配置的关键所在 =============================
nacos.naming.empty-service.auto-clean=true
nacos.naming.empty-service.clean.initial-delay-ms=50000
nacos.naming.empty-service.clean.period-time-ms=30000
management.metrics.export.elastic.enabled=false
management.metrics.export.influx.enabled=false
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
server.tomcat.basedir=

nacos.security.ignore.urls=/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**
nacos.core.auth.system.type=nacos

nacos.core.auth.enabled=false

nacos.core.auth.default.token.expire.seconds=18000

nacos.core.auth.default.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789
nacos.core.auth.caching.enabled=true

nacos.istio.mcp.server.enabled=false

2、准备数据 库和表

mysql>create database nacos_config;
mysql>use nancos_config
mysql>source ../conf/nacos-mysql.sql

3. 集群方式单机启动测试:

bin/bash startup.sh

如果没有问题,则可以进一步进行多机集群测试环境搭建。

四、集群配置(多机版)

1. 编辑集群配置文件conf/cluster.conf

192.168.31.164:8848
192.168.31.164:8849

以上配置可以指定到同一个可用区的不同主机上(笔者对未做跨可用区的集群,希望有人能够补充)
此时可以使用bin/bash startup.sh启动(此时是8848节点启动),可以在nacos管理界面的集群管理->节点列表中看到集群的情况。

2. 启动8849节点。

(1)方法一:
复制一份nacos的安装文件,并发动application.properties,使用使用8849端口启动(注意:数据库配置应该和8848保持一致)。
当然,也可以使用不同的主机或docker来完成,只要保证不同的ip:port组合。
(2)方法二:
改动bin/startup.sh启动脚本,使其加上-o 8849参数,文件改动如下:

59  while getopts ":m:f:s:c:p:o:" opt
60  do
61     case $opt in
 62         m)
 63             MODE=$OPTARG;;
 64         f)
 65             FUNCTION_MODE=$OPTARG;;
 66         s)
 67             SERVER=$OPTARG;;
 68         c)
 69             MEMBER_LIST=$OPTARG;;
 70         p)
 71             EMBEDDED_STORAGE=$OPTARG;;
 72         o)
 73             PORT=$OPTARG;;
 74         ?)
 75         echo "Unknown parameter"
 76         exit 1;;
 77     esac
 78 done

144 nohup $JAVA -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &

文件的改动在59,72,73,144四行代码。
此时可以使用bash startup.sh -o 8848bash startup.sh -o 8849启动nacos即可以完成测试了。

你可能感兴趣的:(阿里nacos的使用笔记(一))