文章目录

  • 环境准备
  • 下载Nacos稳定发布包
  • 解压运行Nacos包
  • 配置Nacos多环境
  • 配置列表
  • 全局参数
  • Naming模块
  • Config模块
  • CMDB模块
  • Nacos Java Client
  • 通用参数
  • Naming客户端
  • Config客户端


环境准备

安装Nacos需要Java和Maven环境,如果未安装可以参考:
Centos安装配置Java环境Centos7安装Maven3.6.x

下载Nacos稳定发布包

运行命令wget https://github.com/alibaba/nacos/releases/download/1.2.1/nacos-server-1.2.1.tar.gz

解压运行Nacos包

运行命令tar -zxvf nacos-server-1.2.1.tar.gz

进入解压目录 cd nacos-server-1.2.1

编辑配置 vim conf/application.properties 一般默认配置就够用了,如果有特殊需求可参考配置列表进行自定义配置

运行 Nacos bin/startup.sh -m standalone 这里是以单机模式运行的命令,如果要配置集群需要编辑conf/cluster.conf 文件,并且需要在每个Nacos实例内conf/application.properties 配置数据库连接信息

启动完毕访问http://ip:8848/nacos

默认账号密码都是nacos

centos yum安装etcdctl centos yum安装nacos_Centos

配置Nacos多环境

Nacos提供了命名空间(namespace)供我们用来做不同的环境之间隔离和切换管理,Group 来做不同项目的之间的服务与配置隔离、管理(Group需要在具体开发的服务上进行配置GroupId)

自定义开发、测试、生产环境:登录到Nacos控制台,点击命名空间。新建命名空间,我这里按照平常开发的习惯分成了三个环境分别是dev开发环境、test测试环境、pro生产环境。

centos yum安装etcdctl centos yum安装nacos_centos yum安装etcdctl_02

配置列表

全局参数

参数名

含义

可选值

默认值

支持版本

nacos.home(-D)

Nacos的根目录

目录路径

Nacos安装的目录

>= 0.1.0

nacos.standalone(-D)

是否在单机模式

true/false

false

>= 0.1.0

nacos.functionMode(-D)

启动模式,支持只启动某一个模块,不设置时所有模块都会启动

config/naming/空


>= 0.9.0

nacos.inetutils.prefer-hostname-over-ip

cluster.conf里是否应该填hostname

true/false

false

>= 0.3.0

nacos.inetutils.ip-address

本机IP,该参数设置后,将会使用这个IP去cluster.conf里进行匹配,请确保这个IP的值在cluster.conf里是存在的

本机IP

null

>= 0.3.0

nacos.security.ignore.urls

控制台鉴权跳过的接口

需要跳过控制台鉴权的接口列表


>= 0.9.0

Naming模块

参数名

含义

可选值

默认值

支持版本

nacos.naming.data.warmup

是否在Server启动时进行数据预热

true/false

false

>= 1.0.2

nacos.naming.expireInstance

是否自动摘除临时实例

true/false

true

>= 1.0.2

nacos.naming.distro.taskDispatchPeriod

同步任务生成的周期,单位为毫秒

正整数

200

>= 1.0.2

nacos.naming.distro.batchSyncKeyCount

同步任务每批的key的数目

正整数

1000

>= 1.0.2

nacos.naming.distro.syncRetryDelay

同步任务失败的重试间隔,单位为毫秒

正整数

5000

>= 1.0.2

除了上面列到的在application.properties里配置的属性,还有一些可以在运行时调用接口来进行调节,这些参数都在Open API里的查看系统当前数据指标这个API里有声明。

Config模块

参数名

含义

可选值

默认值

支持版本

db.num

数据库数目

正整数

0

>= 0.1.0

db.url.0

第一个数据库的URL

字符串


>= 0.1.0

db.url.1

第二个数据库的URL

字符串


>= 0.1.0

db.user

数据库连接的用户名

字符串


>= 0.1.0

db.password

数据库连接的密码

字符串


>= 0.1.0

CMDB模块

参数名

含义

可选值

默认值

支持版本

nacos.cmdb.loadDataAtStart

是否打开CMDB

true/false

false

>= 0.7.0

nacos.cmdb.dumpTaskInterval

全量dump的间隔,单位为秒

正整数

3600

>= 0.7.0

nacos.cmdb.eventTaskInterval

变更事件的拉取间隔,单位为秒

正整数

10

>= 0.7.0

nacos.cmdb.labelTaskInterval

标签集合的拉取间隔,单位为秒

正整数

300

>= 0.7.0

Nacos Java Client

客户端的参数分为两种,一种是通过-D参数进行指定的配置,一种是构造客户端时,通过Properties对象指定的配置,以下没有带-D标注的都是通过Properties注入的配置。

通用参数

参数名

含义

可选值

默认值

支持版本

endpoint

连接Nacos Server指定的连接点,可以参考文档

域名


>= 0.1.0

endpointPort

连接Nacos Server指定的连接点端口,可以参考文档

合法端口号


>= 0.1.0

namespace

命名空间的ID

命名空间的ID

config模块为空,naming模块为public

>= 0.8.0

serverAddr

Nacos Server的地址列表,这个值的优先级比endpoint高

ip:port,ip:port,…


>= 0.1.0

nacos.logging.path(-D)

客户端日志的目录

目录路径

用户根目录

>= 0.1.0

Naming客户端

参数名

含义

可选值

默认值

支持版本

namingLoadCacheAtStart

启动时是否优先读取本地缓存

true/false

false

>= 1.0.0

namingClientBeatThreadCount

客户端心跳的线程池大小

正整数

机器的CPU数的一半

>= 1.0.0

namingPollingThreadCount

客户端定时轮询数据更新的线程池大小

正整数

机器的CPU数的一半

>= 1.0.0

com.alibaba.nacos.naming.cache.dir(-D)

客户端缓存目录

目录路径

{user.home}/nacos/naming

>= 1.0.0

com.alibaba.nacos.naming.log.level(-D)

Naming客户端的日志级别

info,error,warn等

info

>= 1.0.0

com.alibaba.nacos.client.naming.tls.enable(-D)

是否打开HTTPS

true/false

false

>= 1.0.0

Config客户端

参数名

含义

可选值

默认值

支持版本

configLongPollTimeout(config.long-poll.timeout 1.0.1版本)

长轮询的超时时间,单位为毫秒

正整数

30000

>= 1.0.2

configRetryTime(config.retry.time 1.0.1版本)

长轮询任务重试时间,单位为毫秒

正整数

2000

>= 1.0.2

maxRetry

长轮询的重试次数

正整数

3

>= 1.0.2

enableRemoteSyncConfig

监听器首次添加时拉取远端配置

布尔值

false

>= 1.0.2

com.alibaba.nacos.config.log.level(-D)

Config客户端的日志级别

info,error,warn等

info

>= 1.0.0

JM.SNAPSHOT.PATH(-D)

客户端缓存目录

目录路径

{user.home}/nacos/config

>= 1.0.0