このコードは、masterをlocalhostに設定すると完璧に動作します。この問題は、2つのワーカー・ノードを持つクラスタでサブミットすると発生します。google cloudクラスタのマルチノードスパークジョブのモジュールエラー
すべてのマシンに同じバージョンのpythonとパッケージがあります。また、目的のPythonバージョン、つまり3.5.1を指すようにパスを設定しました。私がマスターsshセッションで私のスパークジョブを提出するとき。次のエラーが表示されます。
py4j.protocol.Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.runJob. : org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 2.0 failed 4 times, most recent failure: Lost task 0.3 in stage 2.0 (TID 5, .c..internal): org.apache.spark.api.python.PythonException: Traceback (most recent call last): File "/hadoop/yarn/nm-local-dir/usercache//appcache/application_1469113139977_0011/container_1469113139977_0011_01_000004/pyspark.zip/pyspark/worker.py", line 98, in main command = pickleSer._read_with_length(infile) File "/hadoop/yarn/nm-local-dir/usercache//appcache/application_1469113139977_0011/container_1469113139977_0011_01_000004/pyspark.zip/pyspark/serializers.py", line 164, in _read_with_length return self.loads(obj) File "/hadoop/yarn/nm-local-dir/usercache//appcache/application_1469113139977_0011/container_1469113139977_0011_01_000004/pyspark.zip/pyspark/serializers.py", line 419, in loads return pickle.loads(obj, encoding=encoding) File "/hadoop/yarn/nm-local-dir/usercache//appcache/application_1469113139977_0011/container_1469113139977_0011_01_000004/pyspark.zip/pyspark/mllib/init.py", line 25, in import numpy ImportError: No module named 'numpy'
人がワーカーノードにアクセスできない他の投稿を見ました。私がやります。私は他のワーカーノードに対して同じメッセージを受け取ります。いくつかの環境設定が不足しているかどうかはわかりません。どんな助けでも大歓迎です。
numpyをインストールしようとしましたか? http://stackoverflow.com/questions/1273203/cant-import-numpy-in-python –
はい、すべてのノードに最新のnumpyをインストールしました。 – sumoka