
分散コードをテストできるように、Ubuntu ラップトップに VM のクラスターをセットアップしようとしています。目標は、構成を起動するシェル スクリプトと、テストが完了したら構成を解除する別のスクリプトを実行することです。
ソフトウェアをインストールするには、すべての VM に SSH で接続する必要があり、それを LAN 経由で実行したいと考えています。プロセスを自動化したいので、GUI を使用してこれを行うつもりはありません。まず 1 つの VM を起動し、次のスクリプトを使用してポート 2222 を転送しようとしています。
NAMES=(node1)
for i in ${NAMES[@]}; do
vboxmanage createvm --name ${i} --ostype "Ubuntu_64" --register
vboxmanage modifyvm ${i} --nic1 nat --nic2 hostonly --hostonlyadapter2 vboxnet0 --memory 1024 --natpf1 "openssh,tcp,,2222,,22"
vboxheadless -s ${i}
done
実行後、ifconfig
次の結果が得られますvboxnet0
。
vboxnet0 Link encap:Ethernet HWaddr 0a:00:27:00:00:00
inet addr:192.168.56.1 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:113 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:19687 (19.6 KB)
しかし、実行すると次のエラーが発生します。ssh -p 2222 [email protected]
ssh_exchange_identification: read: Connection reset by peer
おそらく私はこの問題に間違ったアプローチをしているのでしょう (私はネットワークにそれほど精通しているわけではありません) が、いずれにしても何らかの洞察をいただければ幸いです。