这是我参与8月更文挑战的第3天,活动详情查看:8月更文挑战
技术栈选择
- Nacos
- Mysql
- Docker
Nacos的安装与部署
安装Nacos
nacos下载地址
下载下来后放到合适的位置执行
tar -zxvf nacos-server-2.0.1.tar.gz
生成一个名为nacos的文件夹
安装mysql
docker run -p 3306:3306 --name Docker_MySQL --restart=always --privileged=true -v ~/docker/mysql/conf/my.cnf:/etc/mysql/my.cnf -v ~/docker/mysql/data:/var/lib/mysql -v ~/docker/mysql/logs:/logs -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest --lower_case_table_names=1 -- character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
新建一个名为nacos的数据库并执行nacos下conf/nacos-mysql.sql。
部署Nacos
修改配置文件
vi conf/application.properties
主要属性修改为
server.servlet.contextPath=/nacos
server.port=8848
nacos.inetutils.ip-address={you_ip_address}
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://{you_ip_address}:3306/{you_database}?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user={you_user}
db.password={you_password}
以单节点方式启动刚刚部署好的Nacos
sh bin/startup.sh -m standalone
登录 localhost:8848/nacos 进入页面即为成功。
默认账号:nacos
默认密码:nacos
Nacos集群部署
Nacos官方给出的集群部署注意事项
- 使用内置数据源无需任何配置
- 使用外置数据源生产环境建议至少主备模式,或者高可用模式
- Nacos2.0服务端完全兼容1.X客户端,但是Nacos2.0客户端不兼容Nacos1.x服务端
- Nacos最少要部署3台保证高可用
官方推荐集群模式为
最少3台Nacos部署为集群,将集群信息记录到负载均衡中,外部访问负载均衡
修改cluster.conf文件
cd conf
vi cluster.conf.example
#内容修改为
#2021-06-01T03:34:47.788
172.16.77.18:8848
172.16.77.19:8848
172.16.77.20:8848
mv cluster.conf.example cluster.conf #修改文件名
将本地cluster.conf 与application.properties文件发送到其他两台服务器,注意修改application.properties的ip-address属性
启动Nacos集群
3台机器分别 进入/nacos/bin
执行 sh start.sh 集群模式启动,这个启动时间一般较长。可以进入打开logs/start.out实时查看打开进度
进入客户端,发现客户端页面集群管理项->节点列表已经包含了3个节点。
在此3台Nacos集群部署成功。