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更換后不用挨着去修改配置(此處配置不是配置中心里的值)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM