Nacos
- 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
1 下载Nacos
2 上传虚拟机
- 上传用到xshell、xftp => 下载
3 Nacos配置站点、用户名、密码
-
cd /path/nacos/conf
#进入nacos配置文件夹 -
vi application.properties
#编辑配置文件 -
chmod -R 775 /path/nacos/
#赋予执行权限
4 修改启动文件
vi /path/nacos/bin/startup.sh
#编辑启动脚本- 找到
export MODE
=> 修改export MODE="standalone"
5 设置开机自启
-
vi /etc/init.d/nacos
#创建一个开机启动脚本 -
yum -y install lsof
#安装一个插件,用来查找nacos的pid
#!/bin/sh
#chkconfig: 2345 80 90
#description:auto_run
export JAVA_HOME="/path/java" #jdk路径
source /etc/profile;
export NACOS=/path/nacos #nacos路径
export NACOS_port=8848 #启动端口
start()
{
echo "--------nacos 开始启动---------------"
nohup $NACOS/bin/startup.sh -p $NACOS_port > $NACOS/logs/log.log 2>&1 &
NACOS_pid=`lsof -i:$NACOS_port|grep "LISTEN"|awk '{print $2}'`
until [ -n "$NACOS_pid" ]
do
NACOS_pid=`lsof -i:$NACOS_port|grep "LISTEN"|awk '{print $2}'`
done
echo "---------nacos 启动成功-----------"
echo "nacos pid is $NACOS_pid"
}
stop()
{
echo "nacos 准备关闭"
P_ID=`ps -ef | grep -w $NACOS | grep -v "grep" | awk '{print $2}'`
if [ "$P_ID" == "" ]; then
$NACOS/bin/shutdown.sh &
echo "nacos 成功关闭"
else
kill -9 $P_ID
echo "nacos 成功关闭"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
echo "===nacos重启 成功==="
;;
*)
echo "请使用参数start stop restart"
echo "默认重启..."
stop
start
echo "===nacos重启 成功==="
;;
esac
exit 0
-
chmod 775 /etc/init.d/naocs
#赋予执行权限 -
chkconfig --add nacos
#注册到全局中 -
chkconfig nacos on
#开机自动执行脚本 -
service nacos start/stop/restart
#现在可以通过service
命令启动关闭nacos了 -
添加指定需要开放的端口:
firewall-cmd --add-port=8848/tcp --permanent
-
重载入添加的端口:
firewall-cmd --reload
-
可以在外部连接nacos了
1.1.1.111:8848/nacos
附件
Nacos中文配置
#
#版权所有1999-2018阿里巴巴集团控股有限公司。
#
#根据Apache许可证2.0版(以下简称“许可证”)获得许可;
#除非遵守许可证,否则不得使用此文件。
#您可以通过以下方式获得许可证副本:
#
#http://www.apache.org/licenses/LICENSE-2.0
#
#除非适用法律要求或书面同意,软件
#根据许可证进行的分发是按“原样”进行分发的,
#无任何明示或暗示的保证或条件。
#请参阅许可证以了解管理权限和权限的特定语言
#许可证下的限制。
#
#***************** oracle ****************************
sfs.dbconfig.debug=true
sfs.dbconfig.default-db=db1
sfs.dbconfig.providers.db1.dbtype=oracle
sfs.dbconfig.providers.db1.url=jdbc:oracle:thin:@192.168.0.2:1521:ORCL
sfs.dbconfig.providers.db1.username=sgssjdnacos
sfs.dbconfig.providers.db1.password=sgssjdnacos
#***************** kingbase ****************************
#sfs.dbconfig.debug=true
#sfs.dbconfig.default-db=db1
#sfs.dbconfig.providers.db1.dbtype=kingbase
#sfs.dbconfig.providers.db1.url=jdbc:kingbase8://ip:port/NACOS?clientEncoding=UTF8
#sfs.dbconfig.providers.db1.username=nacos
#sfs.dbconfig.providers.db1.password=nacos
#*************** Spring Boot 跳转引导相关配置 ***************#
### 默认web上下文路径:
server.servlet.contextPath=/nacos
### 默认web服务器端口:
server.port=8848
# JPA
spring.data.jpa.repositories.enabled=true
spring.jpa.show-sql=true
#*************** Network 跳转引导相关配置 ***************#
### 如果您更喜欢cluster.conf中Naco服务器地址的主机名而不是ip:
# nacos.inetutils.prefer-hostname-over-ip=false
### 指定本地服务器的IP地址:
# nacos.inetutils.ip-address=
#*************** 配置相关配置模块 ***************#
### 如果使用MySQL作为数据源:
# spring.datasource.platform=mysql
### 数量 of DB:
# db.num=1
### 连接URL of DB:
# db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
# db.user.0=nacos
# db.password.0=nacos
#nacos.datasource.type=ORACLE
#
#nacos.datasource.relational.dsList[0].url=jdbc:oracle:thin:@192.168.0.2:1521:ORCL
#nacos.datasource.relational.dsList[0].username=nacos
#nacos.datasource.relational.dsList[0].password=nacos
#nacos.datasource.relational.dsList[0].driver-class-name=oracle.jdbc.driver.OracleDriver
#nacos.datasource.relational.dsList[0].hikari.connection-timeout=10000
#nacos.datasource.relational.dsList[0].hikari.idle-timeout=120000
#nacos.datasource.relational.dsList[0].hikari.max-lifetime=240000
#nacos.datasource.relational.dsList[0].hikari.maximum-pool-size=20
#nacos.datasource.relational.dsList[0].hikari.data-source-properties.cachePrepStmts=true
#nacos.datasource.relational.dsList[0].hikari.data-source-properties.prepStmtCacheSize=250
#nacos.datasource.relational.dsList[0].hikari.data-source-properties.prepStmtCacheSqlLimit=2048
#nacos.datasource.relational.dsList[0].hikari.connection-test-query=SELECT 1 FROM dual
### Connection pool configuration: hikariCP
#db.pool.config.connectionTimeout=30000
#db.pool.config.validationTimeout=10000
#db.pool.config.maximumPoolSize=20
#db.pool.config.minimumIdle=2
#*************** 命名模块相关配置 ***************#
### 数据分派任务执行周期(毫秒):
# nacos.naming.distro.taskDispatchPeriod=200
### 批同步任务的数据计数:
# nacos.naming.distro.batchSyncKeyCount=1000
### 如果同步任务失败,重试延迟(毫秒):
# nacos.naming.distro.syncRetryDelay=5000
### 如果启用数据预热。如果设置为false,服务器将在不准备本地数据的情况下接受请求:
# nacos.naming.data.warmup=true
### 如果启用实例自动过期,则类似于实例的运行状况检查:
# nacos.naming.expireInstance=true
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
#*************** CMDB模块相关配置 ***************#
### 转储外部CMDB的时间间隔(秒):
# nacos.cmdb.dumpTaskInterval=3600
### 轮询数据更改事件的间隔(秒):
# nacos.cmdb.eventTaskInterval=10
### 加载标签的间隔(秒):
# nacos.cmdb.labelTaskInterval=300
### 如果启用数据加载任务:
# nacos.cmdb.loadDataAtStart=false
#***************与指标相关的设置 ***************#
### 普罗米修斯的度量
#management.endpoints.web.exposure.include=*
### 弹性搜索的度量
management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=http://localhost:9200
### 流入指标
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 %{User-Agent}i %{Request-Source}i
### 访问日志的目录:
server.tomcat.basedir=
#*************** 访问控制相关配置 ***************#
### 如果启用spring安全性,则在1.2.0中不推荐使用此选项:
#spring.security.enabled=false
### 1.2.0中不推荐使用auth的忽略URL:
nacos.security.ignore.urls=/,/error,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-ui/public/**,/v1/auth/**,/v1/console/health/**,/actuator/**,/v1/console/server/**
### 要使用的身份验证系统,目前仅支持“nacos”:
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
### 打开/关闭缓存或身份验证信息。通过打开此开关,身份验证信息的更新将有15秒的延迟。
nacos.core.auth.caching.enabled=true
### 从1.4.1开始,为用户代理打开/关闭白色身份验证:nacos服务器,仅用于从旧版本升级。
nacos.core.auth.enable.userAgentAuthWhite=false
### 从1.4.1开始,当nacos.core.auth.enabled=true和nacos.core.auth.enable.UserAgentAuthHite=false时,该选项起作用。
### 这两个属性是auth的白名单,用于标识来自另一台服务器的请求。
#nacos.core.auth.server.identity.key=
#nacos.core.auth.server.identity.value=
#*************** Istio相关配置 ***************#
### 如果打开MCP服务器:
nacos.istio.mcp.server.enabled=false
###*************** 从1.3.0添加 ***************###
#***************颜色相关设置***************#
### 手动设置WorkerID
# nacos.core.snowflake.worker-id=
### 成员元数据
# nacos.core.member.meta.site=
# nacos.core.member.meta.adweight=
# nacos.core.member.meta.weight=
### 成员查找
### 寻址模式类别,如果设置,优先级最高
# nacos.core.member.lookup.type=[file,address-server]
## 使用配置文件或命令行参数设置集群列表
# nacos.member.list=192.168.16.101:8847?raft_port=8807,192.168.16.101?raft_port=8808,192.168.16.101:8849?raft_port=8809
## 用于AddressServerMemberLookup
# 初始化时查询地址服务器的最大重试次数
# nacos.core.address-server.retry=5
## [address Server]模式的服务器域名地址
# address.server.domain=jmenv.tbsite.net
## [地址服务器]模式的服务器端口
# address.server.port=8080
## [address server]模式的请求地址
# address.server.url=/nacos/serverlist
#*************** JRaft相关配置 ***************#
### 设置Raft群集选择超时,默认值为5秒
# nacos.core.protocol.raft.data.election_timeout_ms=5000
### 设置Raft快照将定期执行的时间量,默认值为30分钟
# nacos.core.protocol.raft.data.snapshot_interval_secs=30
### raft 内部工作线程
# nacos.core.protocol.raft.data.core_thread_num=8
### raft业务请求处理所需的线程数
# nacos.core.protocol.raft.data.cli_service_thread_num=4
### raft 线性读取策略。默认情况下使用安全线性读取,也就是说,引线任期由heartbeat确认
# nacos.core.protocol.raft.data.read_index_type=ReadOnlySafe
### rpc 请求超时,默认为5秒
# nacos.core.protocol.raft.data.rpc_request_timeout_ms=5000