目录
一、准备数据库
数据库用了 mysql, 其实nacos 也是支持mysql 主从集群的,不过简单起见, 这里就只用了一个 mysql 节点。 mysql 是需要自己事先安装 配置的(需要执行 nacos 提供的 conf/nacos-mysql.sql 脚本)
这个其实很简单。schema 名字不重要,重要的是 执行 nacos 的sql 脚本就好了。
二、安装Nacos
Nacos包下载地址:https://github.com/alibaba/nacos/releases
2.1 获取Nacos安装包
可以通过两种方式来获取 Nacos:
- 从 Github 上下载源码方式
$ unzip nacos-source.zip
$ cd nacos/
$ mvn -Prelease-nacos clean install -U
$ cd nacos/distribution/target/nacos-server-1.2.1/nacos/bin
- 下载编译后压缩包方式
$ unzip nacos-server-1.2.1.tar.gz 或者 tar -xvf nacos-server-1.2.1.tar.gz
$ cd nacos/bin
我们使用第二种方式安装,把下载好的nacos-server-1.2.1.tar.gz
放置于/usr/local
目录下,并解压缩。
2.2 配置集群配置文件
在nacos的解压目录nacos/的conf
目录下,有配置文件cluster.conf
,请每行配置成ip:port
。(请配置3个或3个以上节点)
$ cp conf/cluster.conf.example conf/cluster.conf
将各个节点的IP配置于conf/cluster.conf
配置文件中:
10.4.7.101:8848
10.4.7.102:8848
10.4.7.103:8848
2.3 配置MySQL数据库
注意:生产使用建议至少主备模式,或者采用高可用数据库。
2.3.1 初始化MySQL数据库
mysql> CREATE DATABASE `nacos_config`;
mysql> USE `nacos_config`;
mysql> source nacos-mysql.sql;
2.3.2 application.properties 配置
#*************** Config Module Related Configurations ***************#
# 配置数据库连接地址
### If user MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://10.4.7.101:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=test
#*************** CMDB Module Related Configurations ***************#
### The interval to dump external CMDB in seconds:
nacos.cmdb.dumpTaskInterval=3600
### The interval of polling data change event in seconds:
nacos.cmdb.eventTaskInterval=10
### The interval of loading labels in seconds:
nacos.cmdb.labelTaskInterval=300
### If turn on data loading task:
nacos.cmdb.loadDataAtStart=false
# 激活权限认证
nacos.core.auth.enabled=true
#*************** Metrics Related Configurations ***************#
### Metrics for prometheus
# 激活Prometheus监控采集Exporter
management.endpoints.web.exposure.include=*
### Metrics for elastic search
#management.metrics.export.elastic.enabled=true
#management.metrics.export.elastic.host=http://localhost:9200
注意:三节点conf/cluster.conf
和conf/application.properties
配置一样即可!
2.3.3 启动服务
$ sh nacos/bin/startup.sh
查看端口是否启动:
$ netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 958/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1192/master
tcp6 0 0 :::22 :::* LISTEN 958/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1192/master
tcp6 0 0 :::3306 :::* LISTEN 12155/mysqld
tcp6 0 0 :::8848 :::* LISTEN 12550/java
如果8848端口以启动,则可通过Web界面访问8848
端口,访问方式:http://10.4.7.101:8848/nacos
默认账号:nacos
默认密码:nacos
2.4 配置Nacos为系统服务
$ vim /usr/lib/systemd/system/nacos.service
[Unit]
Description=nacos-server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nacos/bin/startup.sh
ExecStop=/usr/local/nacos/bin/shutdown.sh
Restart=always PrivateTmp=true
[Install]
WantedBy=multi-user.target
$ systemctl start nacos.service
$ systemctl status nacos.service
$ systemctl enable nacos.service