1.我们要在单台服务器上启动多个nacos实例,保证三个不同的端口,我们可以通过修改启动脚本:
打开启动脚本找到:export FUNCTION_MODE="all" 这一行,在其下添加:
export MODE="cluster"
export FUNCTION_MODE="all"
# 新加
export SERVER_PORT="8848"
while getopts ":m:f:p:" opt
do
case $opt in
m)
MODE=$OPTARG;;
f)
FUNCTION_MODE=$OPTARG;;
# 新加
p)
SERVER_PORT=$OPTARG;;
?)
echo "Unknown parameter"
exit 1;;
esac
done
# 新加
JAVA_OPT="${JAVA_OPT} -Dserver.port=${SERVER_PORT}"
新添加的内容是为了支持可以使用-p传入端口参数,相应的,修改shutdown脚本,使其可接收参数:
# 新加内容
PORT=$1
if [ ! $PORT ]; then
echo "please select stop port!" >&2
exit 1
fi
# 添加PORT过滤
pid=`ps ax | grep -i 'nacos.nacos' |grep java |grep ${PORT} | grep -v grep | awk '{print $1}'`
# 后边省略...
启动nacos:比如我们用的是8845 8846 8847 三个端口,这启动命令如下:
bash startup.sh -p 8845
bash startup.sh -p 8846
bash startup.sh -p 8847
通过Nginx 时行负载:
upstream nacos.ab.com {
server 127.0.0.1:8845;
server 127.0.0.1:8846;
server 127.0.0.1:8847;
}
server {
listen 8848;
server_name nacos.ab.com;
location /nacos/ {
proxy_pass http://nacos.ab.com/nacos/;
}
}