0

当我尝试运行测试时,我似乎遗漏了一些基本的东西@ https://github.com/abailly/jepsen-vagrant

这是 lein 中 rabbitmq 测试配置文件的输出:

lein test :only jepsen.system.rabbitmq-test/rabbit-test

ERROR in (rabbit-test) (Session.java:512)
Uncaught exception, not in assertion.
expected: nil
  actual: com.jcraft.jsch.JSchException: Auth fail
 at com.jcraft.jsch.Session.connect (Session.java:512)
    com.jcraft.jsch.Session.connect (Session.java:183)
    clj_ssh.ssh$connect.invoke (ssh.clj:327)
    jepsen.control$session.invoke (control.clj:182)
    clojure.lang.AFn.applyToHelper (AFn.java:154)
    clojure.lang.AFn.applyTo (AFn.java:144)
    clojure.core$apply.invoke (core.clj:624)
    jepsen.core$fcatch$wrapper__4829.doInvoke (core.clj:39)
    clojure.lang.RestFn.invoke (RestFn.java:408)
    clojure.core$pmap$fn__6328$fn__6329.invoke (core.clj:6463)
    clojure.core$binding_conveyor_fn$fn__4145.invoke (core.clj:1910)
    clojure.lang.AFn.call (AFn.java:18)
    java.util.concurrent.FutureTask.run (FutureTask.java:266)
    java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142)
    java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:617)
    java.lang.Thread.run (Thread.java:745)

Ran 1 tests containing 1 assertions.
0 failures, 1 errors.
Tests failed.
Error encountered performing task 'test' with profile(s): 'base,system,user,provided,dev,rabbitmq'
Tests failed.
vagrant@jepsen:/jepsen/jepsen$

我怎样才能解决这个问题。我在https://github.com/aphyr/jepsen/tree/master/jepsenhttps://github.com/abailly/jepsen-vagrant步骤中完成了所有提到的身份验证修复步骤...

4

1 回答 1

1

在使用使用 jsch 的代码时,需要检查以下几点

  • 确保 ssh-agent 知道您正在使用的密钥的密码。使用 ssh-add 来执行此操作。

  • 为没有密码的主机使用密钥(即 ~/.ssh/id_rsa)。请务必在项目上明确设置。在这种情况下,自述文件提到在项目配置中进行设置。

  • 确保您可以通过运行“ssh -v -i ~/.ssh/id_rsa user@host”手动使用相同的密钥 ssh 到主机,并阅读输出以确保它使用您认为的密钥。

  • 添加日志在您的项目中设置日志级别,以便“com.jcraft.jsch”进行调试,并确保它使用您认为应该使用的用户。这可能或多或少实用,具体取决于您的项目如何配置日志记录。我经常让基于 jsch 的项目尝试使用空用户名。

  • 尝试从具有不同关键配置的不同主机运行项目,以查看它是否是本地环境问题(通常以我与 ssh-agent 相关的经验)

祝你好运,尽管问题几乎总是可以解决的,但每个基于 jsch 的项目都会以自己的方式出现问题。

于 2015-02-20T07:12:35.630 回答