良许Linux教程网 干货合集 简单介绍nacos单机本地配置文件存储位置方式

简单介绍nacos单机本地配置文件存储位置方式

这篇文章主要介绍了nacos单机本地配置文件存储位置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

nacos单机本地配置文件存储位置

C:\Users***\nacos\config\config_rpc_client_nacos\

image-20221219205632179
image-20221219205632179

单机版Nacos文件配置问题

Nacos服务自动关闭

在使用Nacos时,有时候会遇到服务自动关闭的情况。

这通常涉及到三方面的原因:

内存配置

启动方式

关闭方式

下面逐一说明。

内存配置导致Nacos关闭

Nacos最新版本默认的JVM配置是2G,如果你的服务器配置比较低,在这样的默认配置下会导致OOM情况的发生。

startup.sh中配置项:

if [[ "${MODE}" == "standalone" ]]; then
    JAVA_OPT="${JAVA_OPT} -Xms512m -Xmx512m -Xmn256m"
    JAVA_OPT="${JAVA_OPT} -Dnacos.standalone=true"
else
    if [[ "${EMBEDDED_STORAGE}" == "embedded" ]]; then
        JAVA_OPT="${JAVA_OPT} -DembeddedStorage=true"
    fi
    JAVA_OPT="${JAVA_OPT} 
-server -Xms2g -Xmx2g -Xmn1g -XX:MetaspaceSize=128m 
-XX:MaxMetaspaceSize=320m"
    JAVA_OPT="${JAVA_OPT} 
-XX:-OmitStackTraceInFastThrow
 -XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=${BASE_DIR}/logs/java_heapdump.hprof"
    JAVA_OPT="${JAVA_OPT} 
-XX:-UseLargePages"
 
fi

这种情况,要么升级服务器配置,要么调整JVM参数,如果非必须建议调整JVM参数。除非业务量必须需要这么大的配置。

启动方式导致关闭

使用Nacos较低版本时,比如nacos 0.7.0 releases及以下版本时,Linux下如下方式启动:

sh startup.sh -m standalone

那么,当关闭窗口之后,Nacos服务会自动退出。这是因为没有作为后台进程启动的原因。

解决方案,启动时作为后台进程进行启动:

sh startup.sh -m standalone &
 
// 或
 
setsid sh startup.sh -m standalone &
在高版本中,此问题已经得到解决,脚本中执行Java程序时,用的便是后台进程。

shutdown脚本误杀

在较低版本时,默认的shutdown.sh脚本脚本在集群情况下执行会将同一台机子上的所有节点都关闭掉,因为shell命令查找的是有nacos.nacos标记的pid,当搭建伪集群的情况,就会发生被误杀的情况。

为了避免shutdown.sh脚本的误杀,应该默认关闭当前目录下的节点更为安全,例如将原脚本更改为:

#!/bin/sh
 
# Copyright 1999-2018 Alibaba Group Holding Ltd.

# Licensed under the Apache License, Version 2.0 (the "License");

# you may not use this file except in compliance with the License.

# You may obtain a copy of the License at
 
#      http://www.apache.org/licenses/LICENSE-2.0

#
# Unless required by applicable law or agreed to in writing, software

# distributed under the License is distributed on an "AS IS" BASIS,

# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

# See the License for the specific language governing permissions and

# limitations under the License.
BIN_DIR=$(cd `dirname $0`;pwd)
#获取项目根目录
DEPLOY_DIR=$(cd ${BIN_DIR};cd ..;pwd)
 
pid=`ps ax | grep -i $DEPLOY_DIR |grep java | grep -v grep | awk '{print $1}'`
if [ -z "$pid" ] ; then
        echo "No nacosServer running."
        exit -1;
fi
 
echo "The nacosServer(${pid}) is running..."
 
kill ${pid}
 
echo "Send shutdown request to nacosServer(${pid}) OK"

以上为个人经验,希望能给大家一个参考

以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !

137e00002230ad9f26e78-265x300
本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部