scylladb / jepsen

scylladb jepsen clone
14 stars 8 forks source link

jepsen can't run with ssh key other then RSA #19

Open fruch opened 4 months ago

fruch commented 4 months ago

Packages

Scylla version: 6.1.0~dev-20240619.7567b87e72cf with build-id f0a41eece67ec7a8d64b047e743f0396d9f23463 Kernel Version: 4.19.0-26-cloud-amd64

Issue description

Jepsen fail right away when trying to connect to a node


< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>: Caused by: com.jcraft.jsch.JSchException: invalid privatekey: [B@18e40436
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at com.jcraft.jsch.KeyPair.load(KeyPair.java:664)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at com.jcraft.jsch.KeyPair.load(KeyPair.java:561)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at com.jcraft.jsch.KeyPair.load(KeyPair.java:532)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at clj_ssh.ssh$keypair.invokeStatic(ssh.clj:208)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at clj_ssh.ssh$keypair.invoke(ssh.clj:169)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at clj_ssh.ssh$add_identity.invokeStatic(ssh.clj:268)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at clj_ssh.ssh$add_identity.invoke(ssh.clj:245)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at jepsen.control$clj_ssh_session.invokeStatic(control.clj:303)
< t:2024-06-22 03:29:38,437 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at jepsen.control$clj_ssh_session.invoke(control.clj:298)
< t:2024-06-22 03:29:38,438 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  at jepsen.control.SSHRemote$fn__3132.invoke(control.clj:320)
< t:2024-06-22 03:29:38,438 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>:  ... 34 common frames omitted
< t:2024-06-22 03:29:38,438 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>: WARN [2024-06-22 03:29:38,438] main - jepsen.cli Test crashed
< t:2024-06-22 03:29:38,439 f:base.py         l:231  c:RemoteLibSSH2CmdRunner p:DEBUG > <10.142.0.98>: clojure.lang.ExceptionInfo: throw+: {:dir "/", :private-key-path "/home/sct/db_node_ssh_key", :password "root", :username "sct", :type :jepsen.control/session-error, :port 22, :strict-host-key-checking false, :host nil, :sudo nil, :dummy false, :message "Error opening SSH session. Verify username, password, and node hostnames are correct.", :session nil}
``
see
https://stackoverflow.com/questions/53134212/invalid-privatekey-when-using-jsch

## Impact

RSA keys are deprecated and disable by default by openserver ssh

## Installation details

Cluster size: 5 nodes (n1-standard-4)

Scylla Nodes used in this run:
- jepsen-ubuntu-db-node-ac2ed224-0-5 (35.237.138.121 | 10.142.0.82) (shards: 4)
- jepsen-ubuntu-db-node-ac2ed224-0-4 (34.139.243.246 | 10.142.0.81) (shards: 4)
- jepsen-ubuntu-db-node-ac2ed224-0-3 (34.75.22.34 | 10.142.0.77) (shards: 4)
- jepsen-ubuntu-db-node-ac2ed224-0-2 (34.138.146.37 | 10.142.0.72) (shards: 4)
- jepsen-ubuntu-db-node-ac2ed224-0-1 (35.231.192.36 | 10.142.0.63) (shards: 4)

OS / Image: `https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/family/debian-10` (gce: undefined_region)

Test: `jepsen-all-test`
Test id: `ac2ed224-64bd-4752-a760-80656f670d1c`
Test name: `scylla-master/tier1/jepsen-all-test`
Test config file(s):

- [jepsen.yaml](https://github.com/scylladb/scylla-cluster-tests/blob/9b2a1cd9d33e7d352721cc77030ad3fe6cfa3b8b/test-cases/jepsen/jepsen.yaml)

<details>
<summary>
Logs and commands
</summary>

- Restore Monitor Stack command: `$ hydra investigate show-monitor ac2ed224-64bd-4752-a760-80656f670d1c`
- Restore monitor on AWS instance using [Jenkins job](https://jenkins.scylladb.com/view/QA/job/QA-tools/job/hydra-show-monitor/parambuild/?test_id=ac2ed224-64bd-4752-a760-80656f670d1c)
- Show all stored logs command: `$ hydra investigate show-logs ac2ed224-64bd-4752-a760-80656f670d1c`

## Logs:
- **db-cluster-ac2ed224.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/db-cluster-ac2ed224.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/db-cluster-ac2ed224.tar.gz)
- **sct-runner-events-ac2ed224.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/sct-runner-events-ac2ed224.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/sct-runner-events-ac2ed224.tar.gz)
- **sct-ac2ed224.log.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/sct-ac2ed224.log.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/sct-ac2ed224.log.tar.gz)
- **loader-set-ac2ed224.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/loader-set-ac2ed224.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/loader-set-ac2ed224.tar.gz)
- **monitor-set-ac2ed224.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/monitor-set-ac2ed224.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/monitor-set-ac2ed224.tar.gz)
- **jepsen-data.tar.gz** - [https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/jepsen-data.tar.gz](https://cloudius-jenkins-test.s3.amazonaws.com/ac2ed224-64bd-4752-a760-80656f670d1c/20240622_034004/jepsen-data.tar.gz)

[Jenkins job URL](https://jenkins.scylladb.com/job/scylla-master/job/tier1/job/jepsen-all-test/20/)
[Argus](https://argus.scylladb.com/test/2af4cb81-4b9e-4fc7-8c32-661c694b0924/runs?additionalRuns[]=ac2ed224-64bd-4752-a760-80656f670d1c)
</details>