2013-12-13 2 views
0

Я настраиваю новый кластер C * и использую apt-get для установки OpsCenter 4.0, который отлично подошел и увидел все мои узлы .DataStax OpsCenter 4.0; но может не запускать агентов (может ssh для узлов из cmdline, но OpsCenter не может

Я файл ~/.ssh/id_dsa установки и может SSH к моим узлам без пароля.

Я пытался иметь OpsCenter установки агентов с помощью «исправить» .. поставлять закрытый ключ в «Узел SSH Credentials» диалоговое окно ... но я получаю «Не удалось SSH ... Ошибка: разрешение denined (publickey).

Я озадачен тем, как я могу ssh из строки cmd, но OpsCenter не может.

Затем я попытался установить агенты вручную (снова используя apt-get; и сервис opscenterd-агент запуска), но я получаю это в /var/log/datastax-agent/startup.log:

INFO [main] 2013-12-13 13:25:11,035 Loading conf files: /var/lib/datastax-agent/conf/address.yaml 
Exception in thread "main" java.lang.ClassCastException: java.lang.Character cannot be cast to java.util.Map$Entry 
     at opsagent.conf$load_conf_file$fn__1185$fn__1186.invoke(conf.clj:197) 
     at clojure.core$map$fn__4207.invoke(core.clj:2487) 
     at clojure.lang.LazySeq.sval(LazySeq.java:42) 
     at clojure.lang.LazySeq.seq(LazySeq.java:60) 
     at clojure.lang.RT.seq(RT.java:484) 
     at clojure.core$seq.invoke(core.clj:133) 
     at clojure.core.protocols$seq_reduce.invoke(protocols.clj:30) 
     at clojure.core.protocols$fn__6026.invoke(protocols.clj:54) 
     at clojure.core.protocols$fn__5979$G__5974__5992.invoke(protocols.clj:13) 
     at clojure.core$reduce.invoke(core.clj:6177) 
     at clojure.core$into.invoke(core.clj:6229) 
     at opsagent.conf$load_conf_file.invoke(conf.clj:195) 
     at clojure.core$map$fn__4207.invoke(core.clj:2487) 
     at clojure.lang.LazySeq.sval(LazySeq.java:42) 
     at clojure.lang.LazySeq.seq(LazySeq.java:60) 
     at clojure.lang.RT.seq(RT.java:484) 
     at clojure.core$seq.invoke(core.clj:133) 
     at clojure.core.protocols$seq_reduce.invoke(protocols.clj:30) 
     at clojure.core.protocols$fn__6026.invoke(protocols.clj:54) 
     at clojure.core.protocols$fn__5979$G__5974__5992.invoke(protocols.clj:13) 
     at clojure.core$reduce.invoke(core.clj:6177) 
     at clojure.core$into.invoke(core.clj:6229) 
     at opsagent.conf$load_conf.invoke(conf.clj:209) 
     at opsagent.opsagent$_main.doInvoke(opsagent.clj:228) 
     at clojure.lang.RestFn.applyTo(RestFn.java:137) 
     at opsagent.opsagent.main(Unknown Source) 

(мой файл address.yaml является: stomp_interface = 1.2.3.4 // с разные номера конечно

Я использовал предыдущие версии C * и OpsCenter в течение многих лет, но я застрял сейчас, чтобы получить один из них и работают.

ответ

-2

Я ввел свой секретный ключ SSH в ~/.ssh/id_dsa (я бег на EC2, как пользователь «убунт».

На прихоти я искал другие директории .ssh и нашел/корень/.ssh.

Я скопировал файл id_dsa в этот каталог и в этот раз OpsCenter смог поговорить со всеми узлами в моей группе и установить агент.

Хотя это «решает» проблему его немного неудовлетворительный поскольку в инструкциях OpsCenter ничего не говорится об этом, и я не уверен, как я должен был искать этот другой .ssh-каталог. С другой стороны, это работает :-).

+0

Для чего это стоит, этот шаг не нужен. OpsCenter должен иметь возможность использовать тот же ключ и пользователь, которые вы используете из командной строки для входа в узлы. – nickmbailey

+0

Я согласен, что это не «нужно», но это было так. Не уверен, почему был принят ответ, который устраняет проблему, особенно альтернативы не предлагались. –

+0

Ну, на вашем посту есть две проблемы. Трассировка стека, которую вы опубликовали, определенно была вызвана ошибкой форматирования yaml. Я все еще не уверен, что вызывало вашу ошибку ssh. Похоже, ваше решение заключалось в том, чтобы сделать ваш закрытый ключ закрытым ключом по умолчанию для пользователя root (который запускается как opscenter). Вы вставляли фактическое содержимое закрытого ключа в OpsCenter? Включая начальные и конечные комментарии? – nickmbailey

2

Вы используете «=», где синтаксис YAML рассчитывает «:». Итак, как выглядит ваша линия stomp_interface:

stomp_interface: 1.2.3.4 

Для этого вам необходимо перезапустить агент данных datastax.

+0

Это изменение не имеет значения. Я все еще получаю ClassCastException. Я видел, что другие атрибуты этой ошибки дублируют файлы jar агента, но это тоже не так. –

Смежные вопросы