美文网首页
Nacos 集群搭建

Nacos 集群搭建

作者: markeNick | 来源:发表于2021-01-19 15:31 被阅读0次

    【官方文档】

    环境准备

    • JDK1.8以上

    • 新建一个数据库,执行SQL

    sql语句源文件

    Nacos集群搭建-01.png

    步骤

    下载安装包

    新建一个文件夹,获取安装包,zip、tar.gz包 二选一下载

    # zip包
    wget https://github.com/alibaba/nacos/releases/download/1.3.0/nacos-server-1.3.0.zip
    unzip nacos-server-1.3.0.zip
    
    # tar.gz包
    wget https://github.com/alibaba/nacos/releases/download/1.3.0/nacos-server-1.3.0.tar.gz
    tar -xvf nacos-server-1.3.0.tar.gz
    

    修改配置

    在nacos的解压目录 nacos/ 的 conf/ 目录下,有配置文件 cluster.conf ,修改为各个节点的 IP:端口号

    这里的IP,要linux环境下 输入hostname -I 所显示的,否则可能无法连接

    192.168.138.135:8848
    192.168.138.135:8849
    192.168.138.135:8850
    

    接着在 conf/ 目录下,修改 application.properties 文件中的这几处内容

    这个文件可以配置MySQL集群相关实例信息,这里暂时使用单机的MySQL

    # 表明用MySQL作为后端存储
    spring.datasource.platform=mysql
    
    # 有几个数据库实例
    db.num=1
    
    db.url.1=jdbc:mysql://192.168.138.135:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root
    db.password=123456
    

    将该 nacos/文件夹 复制成三份,然后分别修改每份的 application.properties 文件的服务端口号

    server.port=8848
    server.port=8849
    server.port=8850
    

    启动服务

    分别进入到三个文件夹中的 bin/ 目录,启动服务

    # 8848
    cd nacos/cluster-1/bin
    bash startup.sh
    
    # 8849
    cd nacos/cluster-2/bin
    bash startup.sh
    
    # 8850
    cd nacos/cluster-3/bin
    bash startup.sh
    

    查看是否启动成功

    ps -ef | grep nacos
    ps -ef | grep nacos | grep -v grep | wc -l
    

    测试

    此时,访问以下URL均可进入nacos的控制面板

    http://192.168.138.135:8848/nacos/login

    http://192.168.138.135:8849/nacos/login

    http://192.168.138.135:8850/nacos/login

    利用Nginx分发请求

    显然,上面的访问方式是不可取,因此我们需要利用nginx来进行分发请求

    修改配置

    nginx.conf文件添加以下内容

    # http中添加
    upstream nacos {
        server 127.0.0.1:8848 weight=1;
        server 127.0.0.1:8849 weight=1;
        server 127.0.0.1:8850 weight=1;
    }
    
    # server中添加
    location /nacos {
        proxy_pass http://nacos/nacos;
    }
    
    # 我的完整server如下:
        server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
    
            location /nacos {
                # 下面两个用于后面测试
                add_header backendIP $upstream_addr;
                add_header backendCode $upstream_status;
                
                proxy_pass http://nacos/nacos;
            }
    
            error_log    logs/error_nginx.log    error;
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
    

    重启nginx

    cd /usr/local/nginx/sbin
    
    # 停掉nginx
    ./nginx -s stop
    
    # 指定配置文件启动nginx
    ./nginx -c /usr/local/nginx/conf/nginx.conf
    

    访问:http://192.168.138.135/nacos/#/login

    登录,然后按F12 打开Network,刷新,查看各个请求的 Headers,可以看到请求分发给不同端口的nacos

    这里能看到Nginx代理的ip地址,是因为nginx配置加了 backendIP和backendCode属性

    自此,Nacos的集群搭建完成。

    相关文章

      网友评论

          本文标题:Nacos 集群搭建

          本文链接:https://www.haomeiwen.com/subject/rgaqzktx.html