重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

marathon小知识点分享之如何远程调试marathon-创新互联

目的,在centos服务器上启动marathon服务后,可以在window上使用intellij idea进行远程调试;

创新互联建站主要从事成都网站建设、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务沧源,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

主要环境:

1、本人是参考https://mesosphere.github.io/marathon/docs/提供的方式,部署的marathon服务;

2、从https://github.com/mesosphere/marathon上down下的marathon源码

  1. 如果不想修改源码的话,将marathon的源码down下来后,直接导入到intellijidea里,就可以

  2. 如果想修改源码后,再进行远程调试的话,那么需要对marathon源码进行重新编译,打包成jar包后,替换服务器上的/marathon根目录/target/scala-2.11下的源码包;这样的话,保证本地调试的源码与服务器上运行的源码是一致。

  • marathon的远程调试与spark的远程调试有什么区别?

  个人感觉,主要一方面的区别:

  在去年年底研究过spark的远程调试,需要在spark-class脚本里添加jvm参数,如:

声明JAVA_OPTS

marathon小知识点分享之如何远程调试marathon

而Marathon这一点做的比较好,不需要添加,

无论你是从git上直接down的源码,还是通过https://mesosphere.github.io/marathon/下载部署包

在启动脚本bin/start里都提供了调试参数,如下图所示:

marathon小知识点分享之如何远程调试marathon

不过,如果要实现远程调试的话,需要将上面参数suspend=n的值,由n改成y, 不然的话,远程调试不起作用。

具体步骤:

1、修改启动脚本start

marathon小知识点分享之如何远程调试marathon

2、更新启动marathon服务的命令,改成调试模式

启动脚本start里

marathon小知识点分享之如何远程调试marathon

因此,将marathon的启动服务的命令,改成下面的形式

/usr/local/marathon/bin/start --jvm-debug 9999--master zk://master001:2181,master002:2181,master003:2181/mesos--zk zk://master001:2181,master002:2181,master003:2181/marathon--framework_name marathon --mesos_user root --mesos_role marathon_role--mesos_authentication_principal marathon_user

3、在intellij idea 中,将启动marathon的方式,改成远程调试模式

marathon小知识点分享之如何远程调试marathon

4、在服务器上,启动marathon服务,

marathon小知识点分享之如何远程调试marathon

5、window上,打断点,并启动debug

marathon小知识点分享之如何远程调试marathon

 marathon小知识点分享之如何远程调试marathon

6、开始debug远程调试

marathon小知识点分享之如何远程调试marathon

查看服务器上,是否打印出了日志

 marathon小知识点分享之如何远程调试marathon

 OK!

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


标题名称:marathon小知识点分享之如何远程调试marathon-创新互联
地址分享:http://cqcxhl.cn/article/dhhjog.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP