【Linux+Python】叢集、ssh、python、import error
當你集齊這幾個關鍵詞時,你和我遇到了一樣的問題。
linux裝了ssh的叢集中,如果單獨在某個節點執行python檔案,正常。但是一旦用這個命令
for k in $(seq 1 10)
do
ssh guest@node${k} "python hello.py"
done
批量執行時,發現反覆報錯:mpi import error,psutil import error等。
直接說原因:系統預設的python版本跟你用的不一樣。
測試如下
(1)隨便選個節點node 1,執行“which python”,“python -V”,均顯示為python3
(2)執行如下命令時,均顯示為python2。
for k in $(seq 1 10)
do
ssh guest@node${k} "which python && python -V"
done
解釋:上述程式碼的意思是,檢視叢集中每個節點的python版本。
居然出現兩個預設版本,醉了。
解決:批量修改預設python版本為python3.
step 1: 進入root
step 2:建立一個test.sh檔案,寫上如下命令
for k in $(seq 1 10)
do
ssh node${k} "cd /usr/bin && rm -rf python && ln -s /home/anaconda3/bin/python /usr/bin/python"
done
注意我安裝的是anaconda3中的python3,所以路徑是在anaconda3下。改成你自己的路徑。
step 3:執行這個指令碼,修改所有機器的預設路徑:sh test.sh
問題解決。
=============================================
註釋:
ll /usr/bin/python 檢視預設python版本的路徑
cd /usr/bin && rm -rf python 刪除該預設路徑的link
which python:當前所用的python的安裝路徑
python -V:當前所用的python版本
相關文章
- Import Error: cannot import name ‘export_saved_modelImportErrorExport
- Python 非同步叢集使用Python非同步
- 大資料叢集搭建(1)ubuntu、jdk、ssh搭建配置大資料UbuntuJDK
- 【Redis】用python操作redis叢集RedisPython
- Zookeeper叢集 + Kafka叢集Kafka
- python管理k8s叢集PythonK8S
- Python使用 Kubernetes API 訪問叢集PythonAPI
- MySQL5.7叢集(MGR)啟動報ERROR 3092 (HY000)MySqlError
- Python import相關內容區別介紹( import *** as 、from***import )PythonImport
- 搭建zookeeper叢集(偽叢集)
- 1-Linux叢集搭建,分發指令碼,ssh免密登入Linux指令碼
- zookeeper叢集及kafka叢集搭建Kafka
- 徹底搞懂Python 中的 import 與 from importPythonImport
- Python Package Import 之痛PythonPackageImport
- Python __import__() 函式PythonImport函式
- python from import 出錯PythonImport
- 關於 Python 的 importPythonImport
- linux下搭建ZooKeeper叢集(偽叢集)Linux
- redis偽叢集配置Cluster叢集模式Redis模式
- Redis系列:搭建Redis叢集(叢集模式)Redis模式
- python基礎--自定義模組、import、from......import......PythonImport
- RabbitMQ叢集MQ
- ES叢集
- ceph叢集
- redis叢集Redis
- redis 叢集Redis
- 將Standard標準叢集修改為Flex叢集Flex
- 基於Dokcer搭建Redis叢集(主從叢集)Redis
- 全新Linux+Python高階運維班第三次作業LinuxPython運維
- ascp: Failed to open TCP connection for SSH, exiting. Session Stop (Error: Failed to open TCP connection for SSH)AITCPSessionError
- ssh-add 報錯:Error connecting to agent No such file or directoryError
- 管理 ES 叢集:集常見的叢集部署方式
- 用Docker搭建RabbitMq的普通叢集和映象叢集DockerMQ
- docker下,極速搭建spark叢集(含hdfs叢集)DockerSpark
- Python之禪-import this的實現PythonImport
- 初窺 Python 的 import 機制PythonImport
- Kafka叢集配置Kafka
- 搭建ELK叢集