开发者学堂课程【精通 Spring Cloud Alibaba:基于 Nginx 实现 Nacos 集群部署】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/634/detail/10093
基于 Nginx 实现 Nacos 集群部署
内容介绍:
一、基本介绍
二、集群部署方法
一、基本介绍
如果有两个 nacos 的情况下,本地应用怎么知道到底应该使用哪
nacos。
基于 lvs 实现,就是给服务器绑定一个虚拟的 ip,但是比较麻烦,所以可以直接架设一个 nginx,用户访问到 nginx 的时候,做负载均衡轮询,分别轮询到每个 nacos,
因为每个 nacos 最终都是对应到同一个 mysql 服务器中的,所以可以查询到。
在这种方法里最大的问题是 nginx 先在其中一个 nacos 里面登录做轮询,那么到下一个 nacos 时又需要重新登录,如果其中一台 nacos 挂掉的情况下,nginx 会自动进行故障转移到另一个 nacos,但是只要所有的 nacos 都同步到 mysql 服务器里,就不会有太大问题。
二、集群部署方法
相关集群配置
创建 cluster 文件夹.
--nacos-server. 8848.
--nacos- server 8849.
--nacos- server-8850
再修改 cluster.config 的配置
121.0.0.1:8848
127.0.0.1:8849
127.0.0.1:8850
哪几个 nacos 做集群,他们之间的相互感知是一开始就要写死的,这样不好,最好是通过动态获取可以修改。
举一反三写三台 nacos 作为一个集群,启动三台 nacos,默认情况下有一个登录配置,这个情况先忽略不管,之后假设一个 nginx 可以轮询 nacos,
首先在c盘 window 系统32里 drivers、etc、hosts 去修改配置文件,再加上 127.0.0.1 nacos.mayikt.com。再配置 nginx。
#pid logs/nginx.pid;
Events{
worker_ connections 1024;
}
http {
include mime. types ;
default_ type application/octet-stream;
upstream mayiktnacosadds {
server 127.0.0.1:8848;
server 127.0.0.1:8849;
server 127.0.0.1:8850;
}
server {
listen 80; .
server_ name nacos . mayikt . com;
location /nacos/ {
proxy_pass
http://mayiktnacosadds/nacos/
;
}
}
然后直接运行,默认进入到 nginx 的欢迎页面。