因此,我为本地Endeca11.1环境创建了一个启动bash脚本,该脚本运行在Centos 6.6上:
#!/bin/sh
ENDECA_USER=endeca
ENDECA_BASE=/usr/local/endeca
GREEN='\e[32m'
NC='\e[39m'
source /usr/local/endeca/MDEX/6.5.1/mdex_setup_sh.ini
source /usr/local/endeca/PlatformServices/workspace/setup/installer_sh.ini
echo ER = $ENDECA_ROOT
usage() {
echo "Usage: ${0} (start|stop)"
}
case "${1}" in
start)
echo "Starting Endeca ..."
echo -ne "\n\n${GREEN}Starting MDEX Engine ... ${NC} \n\n"
${ENDECA_ROOT}/tools/server/bin/startup.sh
sleep 5
echo -ne "\n\n${GREEN}Starting Platform Services ... ${NC} \n\n"
${ENDECA_BASE}/PlatformServices/11.1.0/tools/server/bin/startup.sh
sleep 5
echo -ne "\n\n${GREEN}Starting Tools & Frameworks ... ${NC} \n\n"
${ENDECA_BASE}/ToolsAndFrameworks/11.1.0/server/bin/startup.sh
sleep 5
${ENDECA_BASE}/CAS/11.1.0/bin/cas-service.sh &
;;
stop)
echo "Shutting down Endeca ..."
${ENDECA_ROOT}/tools/server/bin/shutdown.sh
sleep 5
${ENDECA_BASE}/PlatformServices/11.1.0/tools/server/bin/shutdown.sh
sleep 5
${ENDECA_BASE}/ToolsAndFrameworks/11.1.0/server/bin/shutdown.sh
sleep 5
${ENDECA_BASE}/CAS/11.1.0/bin/cas-service-shutdown.sh
wait
echo "Endeca shutdown complete!"
;;
*)
usage
exit 2
esac
exit $?这个脚本在大多数情况下都会失败,我想检查endeca正确的启动顺序是什么,如果我的脚本需要在启动下一个组件之前等待每个组件启动?
提前谢谢你的帮助。
发布于 2015-05-21 05:02:58
来自Microsoft Windows环境,您列出的for服务中只有3条被认为是服务,这可能是启动/关闭脚本的问题所在。MDEX不是一个明确的服务。但是,一个或多个d-graphs将在安装MDEX组件的服务器上运行,这可能就是断开连接的位置。
PlatformServices组件应该是最重要的组件,可以控制d-graphs (MDEX Engine)的停止和启动。与其停止MDEX‘服务’,不如使用存在于Endeca控制文件夹中的runcommand.sh停止d-graphs。
因此,假设您在$ENDECA_BASE中部署了应用程序,并且应用程序名为bated,那么您的脚本应该如下所示。
#Stop the Authoring Dgraph
${ENDECA_BASE}/apps/bated/control/runcommand.sh AuthoringDgraph stop
#Stop the additional Dgraphs (as configured in your LiveDgraphCluster.xml)
${ENDECA_BASE}/apps/bated/control/runcommand.sh DgraphA1 stop一旦这些服务被停止,您可以继续按任何顺序关闭PlatformServices、ToolsAndFramework和CAS服务。
启动将需要再次启动上述三个服务,然后再调用runncommand.sh,但这次使用start参数。在尝试启动PlatformServices之前,您需要等待d-graphs启动并正常运行。
希望这能有所帮助。
https://stackoverflow.com/questions/30357891
复制相似问题