Search code examples
datastaxdatastax-enterpriseopscenterdatastax-startup

error- com.jcraft.jsch.JSchException


Trying to install a node in OpsCenter, I've got this error:

4: Received message is too long: 1349281116

With stack trace:

com.jcraft.jsch.ChannelSftp.start(ChannelSftp.java:315) com.jcraft.jsch.Channel.connect(Channel.java:152) com.jcraft.jsch.Channel.connect(Channel.java:145) clj_ssh.ssh$connect_channel.invoke(ssh.clj:512) clj_ssh.ssh$ssh_sftp.invoke(ssh.clj:732) lcm.jobs.multinode.common$run_command.invoke(common.clj:707) lcm.jobs.multinode.install.InstallJob.run(install.clj:310) lcm.jobs.multinode.common$run_job.invoke(common.clj:72) lcm.jobs.multinode.common$process_run__18006$fn__18007.invoke(common.clj:90) clojure.core.async$thread_call$fn__8944.invoke(async.clj:434) clojure.lang.AFn.run(AFn.java:22) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) java.lang.Thread.run(Thread.java:745)

I have launched an EC2 based on DataStax Auto-Clustering AMI 2.5.1-pv, I've expected things to go smoothly, but it didn't ..

Any idea?


Solution

  • OpsCenter developer here, I work on the Lifecycle Manager feature of OpsCenter that does automated installs. The JSCHException error indicates that OpsCenter is unable to connect to your nodes via SSH. We have a ticket to improve this extremely unhelpful error message which is likely to be released in OpsCenter 6.0.4 which is likely to be out in "a few weeks" (unofficially, I don't control these things).

    In the meantime, try ssh'ing manually from your OpsCenter server to the target node(s) and fiddle with AWS security-groups, the target's iptables rules, and/or VPC routes until things work as expected. Note that getting networking to behave within a region is much simpler, I'd start with that if you're not already working within a single region.

    Also note that as of OpsCenter 6.0.0, it's no longer necessary to use the DataStax clustering AMI with OpsCenter provisioning. LCM can provision to any AMI for a supported OS as long as it has Python 2.6 or Python 2.7 pre-installed. I'd go further and say it's better to use a "clean" base AMI with OpsCenter 6.0 than to use the DataStax clustering AMI with OpsCenter 6.0.x, as that's the most common and heavily tested scenario for LCM.