• Linux安装Nacos集群


    Linux安装Nacos集群

    在一台Linux中安装Nacos伪集群,通过不同的端口号启动nacos。

    更多详细内容请前往我的个人博客

    一、准备环境

    在Linux中先安装好JDK1.8+和Maven3.2+
    准备好Nacos和Nginx安装包

    二、集群架构

    在这里插入图片描述

    我这里用的是一台Nginx

    三、安装Nginx

    1、安装nginx依赖
    #安装gcc
    yum install gcc-c++
    #安装PCRE pcre-devel
    yum install -y pcre pcre-devel
    #安装zlib
    yum install -y zlib zlib-devel
    #安装Open SSL
    yum install -y openssl openssl-devel
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    2、下载nginx安装包
    wget http://nginx.org/download/nginx-1.16.1.tar.gz 
    
    • 1
    3、解压nginx安装包
    #创建一个文件夹
    cd /usr/local
    mkdir nginx
    cd nginx
    
    #解压缩包,直接tar -xvf nginx安装包所在路径
    tar -xvf nginx-1.16.1.tar.gz
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    4、安装nginx
    #进入nginx目录
    cd /usr/local/nginx
    #进入目录
    cd nginx-1.16.1
    #编译 执行命令 考虑到后续安装ssl证书 添加两个模块  如不需要直接执行./configure即可
    ./configure --with-http_stub_status_module --with-http_ssl_module
    #执行make命令(要是执行不成功请检查最开始安装的四个依赖有没有安装成功)
    make
    #执行make install命令
    make install
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    5、测试启动nginx
    cd /usr/local/nginx/sbin
    # 默认配置文件启动
    ./nginx
    
    # 指定配置文件启动
    ./nginx -c  /usr/local/nginx/conf/nginx.conf
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    若成功启动,在浏览器地址栏中输入服务器ip即可看到经典的nginx欢迎页

    四、安装Nacos

    从官网下载安装包,我这里用的是nacos-server-2.1.0.tar.gz版本。

    安装包下载好后解压就可以使用了,但我们这里要用到持久化和集群配置。

    1、MySQL创建相关数据库,导入sql文件
    登录MySQL:mysql -u root -p 密码

    登录后执行以下命令:

    create database nacos_config;
    use nacos_config;
    source /usr/local/nacos/conf/nacos-mysql.sql # 解压出的nacos的conf文件下有该sql文件
    
    • 1
    • 2
    • 3
    2、配置nacos相关文件

    在解压出的nacos的conf目录下,修改 application.properties 文件,在最后添加以下内容:

    spring.datasource.platform=mysql
     
    db.num=1
    db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
    db.user=root		# MySQL用过户名
    db.password=123456	# MySQL密码
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    cp cluster.conf.example cluster.conf

    修改cluster.conf文件,添加以下内容:

    # 只留三个IP和端口号就好
    192.168.88.10:3333
    192.168.88.10:4444
    192.168.88.10:5555
    
    • 1
    • 2
    • 3
    • 4

    修改nacos的bin目录下的startup.sh

    # 找到此处,修改或添加p:参数,以及 PORT=$OPTARG;;
    while getopts ":m:f:s:c:p:" opt
    do
        case $opt in
            m)
                MODE=$OPTARG;;
            f)
                FUNCTION_MODE=$OPTARG;;
            s)
                SERVER=$OPTARG;;
            c)
                MEMBER_LIST=$OPTARG;;
            p)
                PORT=$OPTARG;;
            ?)
            echo "Unknown parameter"
            exit 1;;
        esac
    done
    #####################################################
    # 找到start,在nohup那两行命令下加上:-Dserver.port=${PORT}
    # start	
    echo "$JAVA $JAVA_OPT_EXT_FIX ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out 2>&1 &
    
    if [[ "$JAVA_OPT_EXT_FIX" == "" ]]; then
      nohup "$JAVA" -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
    else
      nohup "$JAVA" "$JAVA_OPT_EXT_FIX" -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
    fi
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    3、配置nginx

    配置nginx的nginx.conf文件

    	#gzip  on;
        upstream cluster{
            server 127.0.0.1:3333;
            server 127.0.0.1:4444;
            server 127.0.0.1:5555;
        }
        #############在server下配置#############
        	listen       1111;		# 修改监听端口号
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    		# 注释掉原来的两行,添加proxy_pass http://cluster;
            location / {
                #root   html;
                #index  index.html index.htm;
                proxy_pass http://cluster;
            }
        
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    五、启动测试

    进入在nacos的bin目录,依次执行

    ./startup.sh -p 3333
    ./startup.sh -p 4444
    ./startup.sh -p 5555
    
    • 1
    • 2
    • 3

    查看,如下为启动成功

    [root@jiang bin]# ps -ef|grep nacos|grep -v grep|wc -l
    3
    
    • 1
    • 2

    在nginx的sbin目录下执行,./nginx -s reload;

    在浏览器访问192.168.88.10:1111,nginx监听的端口号,能访问到Nacos的经典登录界面说明启动成功!

  • 相关阅读:
    weak的底层原理
    (十)ElasticSearch高级使用【别名,重建索引,refresh操作,高亮查询,查询建议】
    Android LinearLayout快速设置每个item间隔
    Linux bash介绍与使用
    JavaScript/uni-app对接海康ISC openapi
    css盒模型
    【JAVA-Day05】深入理解Java数据类型和取值范围
    Maven配置阿里云中央仓库settings.xml
    【数据结构】——顺序表详解
    【security】spring security放行不生效,security放行后还是被拦截,路径变成了error
  • 原文地址:https://blog.csdn.net/Joker_Jiang3/article/details/126591703