zoukankan      html  css  js  c++  java
  • nacos-server集群 安装、运行(ubuntu)

    下载、解压

    wget -P /opt/downloads https://github.com/alibaba/nacos/releases/download/1.0.0/nacos-server-1.0.0.tar.gz
    tar zxvf /opt/downloads/nacos-server-1.0.0.tar.gz -C /opt

    复制到另外3个目录,本文在同一服务器上用8841,8842,8843这3个不同端口模拟nacos集群,前端放nginx进行负载均衡。

    cp -r /opt/nacos /opt/nacos-server-1
    cp -r /opt/nacos /opt/nacos-server-2
    cp -r /opt/nacos /opt/nacos-server-3

    若是ubuntu系统,默认使用dash而不是bash,若执行startup.sh启动会报[[: not found

    vim /opt/nacos-server-1/bin/startup.sh
    #!/bin/sh改成#!/bin/bash

    赋予权限

    chmod 777 /opt/nacos-server-1/bin/startup.sh
    chmod 777 /opt/nacos-server-1/bin/shutdown.sh

    若是standalone模式
    启动

    /opt/nacos-server-1/bin/startup.sh -m standalone

    集群模式搭建

    端口有两种方式设置:

    1.

    vim /opt/nacos-server-1/conf/application.properties

    设置server.port=8848为server.port=8841

    注:这里改为8841是为了在一台服务器上通过3个端口模拟集群,生产环境可以保持8848不变。

    2.

    vim /opt/nacos-server-1/bin/startup.sh

    在 # JVM Configuration 下方加入
    JAVA_OPT="${JAVA_OPT} -Dserver.port=8841"
    相当于设置java程序中System.getProperty("server.port")的值

    增加支持MySQL数据源配置

    vim /opt/nacos-server-1/conf/application.properties

    增加以下代码段,参数自行修改

    spring.datasource.platform=mysql
    db.num=1
    db.url.0=jdbc:mysql://localhost:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true db.user=root db.password=root

    mysql脚本见:https://github.com/alibaba/nacos/blob/master/distribution/conf/nacos-mysql.sql
    数据库建立(略)

    修改cluster文件

    touch /opt/nacos-server-1/conf/cluster.conf
    vim /opt/nacos-server-1/conf/cluster.conf

    内容加入:

    192.168.1.102:8841
    192.168.1.102:8842
    192.168.1.102:8843

    启动:

    /opt/nacos-server-1/bin/startup.sh或bash -f /opt/nacos-server-1/bin/startup.sh

    守护进程方式启动:

    vim /lib/systemd/system/nacos-server-8841.service

    文件中填入

    [Unit]
    Description=nacos-server
    After=syslog.target network.target remote-fs.target nss-lookup.target

    [Service]
    Type=forking
    ExecStart=/opt/nacos-server-1/bin/startup.sh
    ExecStop=/opt/nacos-server-1/bin/shutdown.sh
    Restart=always PrivateTmp=true

    [Install]
    WantedBy=multi-user.target

    添加权限

    chmod 777 /lib/systemd/system/nacos-server-8841.service

    启用服务

    systemctl enable nacos-server-8841.service
    systemctl daemon-reload

    运行

    systemctl start nacos-server-8841.service

    查看状态

    systemctl status nacos-server-8841.service

    查看进程

    netstat -anltp|grep 8841

    nacos-server-2和nacos-server-3做以上同等修改

    nginx的安装、运行见:
    https://www.cnblogs.com/wintersoft/p/10537946.html

    修改nginx配置

    vim /opt/nginx/conf/nginx.conf

    http节点内加入

    upstream nacosserver {
        server 192.168.1.101:8841;
        server 192.168.1.102:8841;
    }

    另外增加一个server节点

    server {
        listen 8848;
        server_name 192.168.1.102;
    access_log  logs/host.access.log  main; location
    /nacos/ { proxy_pass http://nacosserver/nacos/; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

    目前只是单节点的nginx,在生产环境需实现高可用,可设置成多个keepalive+多个nginx;或网关+多个nginx;或云服务的负载均衡器。

    nacos地址可以解析到一个域名下,防止服务器ip更换后不用挨着去修改配置(此处配置不是配置中心里的值)。

  • 相关阅读:
    Linux驱动入门(三)Led驱动
    Linux驱动入门(二)操作硬件
    mysql表的完整性约束
    数据库操作
    初识数据库
    mysql的安装、启动和基础配置 —— windows版本
    Socket网络编程
    python进阶之多线程(简单介绍协程)
    python进阶多进程(进程池,进程间通信)
    python基础之异常处理
  • 原文地址:https://www.cnblogs.com/wintersoft/p/10538119.html
Copyright © 2011-2022 走看看