AWSEC2クラスターのRの並列で分析を実行しようとしています。私はstarclusterを使用してEC2クラスターをセットアップおよび管理してsnow
おり
foreach
、Rで使用しようとしています。最初に、クラスターに2つのノード、1つのマスターと1つのワーカーがあります。
starcluster start mycluster
starcluster listinstances
-----------------------------------------
mycluster (security group: @sc-mycluster)
-----------------------------------------
....
Cluster nodes:
master running i-xxxxxxxxx masterIP.compute-1.amazonaws.com
node001 running i-xxxxxxxxx node001IP.compute-1.amazonaws.com
Total nodes: 2
starcluster sshmaster mycluster
次に、Rを起動してsnow
パッケージをロードし、クラスターオブジェクトを作成してみます。
R
library("snow")
cl = makeCluster(c("masterIP.compute-1.amazonaws.com", "node001IP.compute-1.amazonaws.com"), type = "SOCK")
ただし、これにより、次のエラーメッセージが表示されます。
The authenticity of host 'masterIP.compute-1.amazonaws.com (xx.xxx.xx.xx)' can't be established.
ECDSA key fingerprint is xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'masterIP.compute-1.amazonaws.com,xx.xxx.xx.xx' (ECDSA) to the list of known hosts.
Permission denied (publickey).
そこで、sshキー(keyname.rsa
具体的には)をEC2の.sshファイルにコピーして再試行しました。それでもうまくいきませんでした。同じ
Permission denied (publickey).
エラーが発生しました。スタークラスターがsshのセットアップとノード間の通信を処理していると思っていたので、なぜこれをセットアップできないのか少し混乱しています。また、node001を追加しようとしたのでcl = makeCluster(c("node001IP.compute-1.amazonaws.com"), type = "SOCK")
、同じエラーが発生します。