一、安装前的准备工作
1. 系统要求
- 操作系统:Windows/Linux/macOS
- Java 版本:JDK 1.8+(推荐 JDK 11)
- 内存:2GB+(生产环境建议 4GB+)
- 磁盘:1GB + 可用空间
- 端口:8848(默认)、9848、9849(集群模式)
2. 下载最新版本
# 稳定版(示例为2.2.4)
wget https://github.com/alibaba/nacos/releases/download/2.2.4/nacos-server-2.2.4.zip
# 解压
unzip nacos-server-2.2.4.zip -d nacos
二、安装步骤详解
1. Windows 系统安装
# 解压后进入目录
cd nacos\bin
# 启动单机模式(推荐)
startup.cmd -m standalone
# 启动集群模式(需提前配置cluster.conf)
startup.cmd -m cluster
2. Linux/macOS 系统安装
# 解压后进入目录
cd nacos/bin
# 单机模式
sh startup.sh -m standalone
# 集群模式
sh startup.sh -m cluster
3. 验证安装
# 检查进程
ps -ef | grep nacos
# 访问控制台
http://localhost:8848/nacos (默认账号:nacos/nacos)
三、核心配置详解
1. 基础配置文件
# 主配置文件
conf/application.properties
# 集群配置(集群模式必填)
conf/cluster.conf
# MySQL初始化脚本(如需持久化)
conf/nacos-mysql.sql
2. 关键配置项说明
| 配置项 | 描述 |
|---|---|
server.port | 服务端口(默认 8848) |
spring.datasource.platform | 数据库类型(可选:mysql、derby) |
nacos.core.auth.enabled | 启用权限控制(默认关闭) |
nacos.core.auth.default.token | 默认令牌(用于安全认证) |
3. 持久化配置示例(MySQL)
# 启用MySQL存储
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/nacos?useUnicode=true&characterEncoding=utf8&useSSL=false
db.user=root
db.password=your_password
四、高级配置优化
1. JVM 参数优化
# 编辑 startup.sh/startup.cmd
JAVA_OPT="${JAVA_OPT} -Xms1g -Xmx2g -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m"
2. 集群配置(3 节点示例)
# cluster.conf
192.168.1.101:8848
192.168.1.102:8848
192.168.1.103:8848
3. 负载均衡配置(Nginx)
upstream nacos-cluster {
server 192.168.1.101:8848 weight=1;
server 192.168.1.102:8848 weight=1;
server 192.168.1.103:8848 weight=1;
}
server {
listen 80;
location /nacos {
proxy_pass http://nacos-cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
五、常见问题解决方案
1. 端口冲突
# 修改端口
server.port=8849
2. 内存溢出
# 调整JVM参数
-Xms512m -Xmx1g -XX:+HeapDumpOnOutOfMemoryError
3. 数据库连接失败
# 检查MySQL配置
jdbc:mysql://localhost:3306/nacos?useSSL=false&serverTimezone=Asia/Shanghai
4. 控制台无法访问
# 检查防火墙规则
iptables -A INPUT -p tcp --dport 8848 -j ACCEPT
六、生产环境部署建议
- 高可用架构
- 至少 3 个节点的集群
- 使用 Nginx/F5 实现负载均衡
- 数据库主从复制
- 安全加固
- 启用 RBAC 权限控制
- 使用 HTTPS 加密通信
- 定期更新补丁
- 监控与报警
- 集成 Prometheus+Grafana
- 配置 JVM 监控参数
-XX:+UseConcMarkSweepGC -XX:+HeapDumpOnOutOfMemoryError
- 备份策略
1
# 每日全量备份
2
mysqldump -u root -p nacos > nacos_backup_$(date +%Y%m%d).sql
七、扩展功能配置
1. 集成 Spring Cloud
<!-- pom.xml -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2. 配置管理示例
# 发布配置
curl -X POST "http://localhost:8848/nacos/v1/cs/configs" \
-d "dataId=example.properties&group=DEFAULT_GROUP&content=user.name=admin"
3. 服务注册验证
curl -X POST "http://localhost:8848/nacos/v1/ns/instance" \
-d "serviceName=nacos.test.1&ip=192.168.1.100&port=8080"
总结
通过本指南,您将掌握 Nacos 从基础安装到生产环境部署的全流程。建议在开发阶段使用单机模式快速验证功能,逐步过渡到集群模式以满足高可用性需求。合理配置 JVM 参数、数据库持久化和安全策略,能显著提升 Nacos 服务的稳定性和性能。