集群python环境管理就用conda

Ms.Haoz大约 3 分钟

HPC集群作为一个多用户系统,每个用户的环境需求都是不一样的。那么如何来提供一个可以兼容每个用户需要的环境,就是一个比较重要的事情。如果不考虑这个问题,交给用户自己解决似乎也没有问题,但会发现每个用户都将面临大量的环境配置和磁盘占用。

今天来给大家介绍一款环境管理工具:conda ,以及如何在集群环境中使用它。

关于conda

Conda是一个流行的开源软件包管理器和环境管理器,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。Conda最初是为Python环境设计的,但现在已经扩展到其他语言和领域。

conda分为Anaconda和MiniConda。Anaconda是包含一些常用包的版本,Miniconda则是精简版,需要啥装啥。

安装conda

这里我们以安装MiniConda为例,安装过程如下:

# 下载安装脚本
wget https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-py39_4.9.2-Linux-x86_64.sh --no-check-certificate

# 执行安装脚本
sh Miniconda3-py39_4.9.2-Linux-x86_64.sh

......
Do you accept the license terms? [yes|no]
[no] >>> yes

Miniconda3 will now be installed into this location:
/root/miniconda3                                    

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/root/miniconda3] >>> /data/python/miniconda3       #更改默认安装目录到共享存储, 所有用户都要有执行权限
PREFIX=/data/python/miniconda3
Unpacking payload ...
Collecting package metadata (current_repodata.json): done                                           
......
installation finished.
Do you wish the installer to initialize Miniconda3
by running conda init? [yes|no]
[no] >>> no
.....

Thank you for installing Miniconda3!

# 到此安装完成

用户使用

导入conda环境:

. /data/python/miniconda3/etc/profile.d/conda.sh
# 或者
source /data/python/miniconda3/etc/profile.d/conda.sh

创建一个python3.8的运行环境, 并激活:

conda create -n python38 python=3.8
conda activate python38

然后,就可以使用python3.8的运行环境了,是不是so easy!

每个用户都可以通过以下命令来使用python3.8的环境。

source /data/python/miniconda3/etc/profile.d/conda.sh
conda activate python38

当然,也可以创建属于自己的环境。

介绍下conda的基本命令:

conda update -n base conda        #update最新版本的conda
conda update --all                #update最新版本的conda
conda create -n py38 python=3.8   #创建python3.8命名为py38的虚拟环境
conda activate py38               #开启py38环境
conda deactivate                  #关闭退出环境
conda env list                    #显示所有的虚拟环境
conda info --envs                 #显示所有的虚拟环境
conda remove --name py38 --all    # 删除一个已有的环境

conda install numpy        # conda会从远程搜索numpy安装的相关包和依赖项目
conda list                 # 查看已经安装的packages
conda list -n py38         # 查看py38环境已安装的包
conda search numpy         # 查找package信息

配置管理

使用conda config命令,可以对conda进行配置管理。例如,可以替换condd的镜像为清华镜像来提升下载速度:

# 查看conda config
conda config --show         

# 添加清华的镜像channel
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

# 查看现有的镜像channel
conda config --show channels

#删除default
conda config --remove channels defaults

#希望下载过程中可以看到channel
conda config --set show_channel_urls yes

Ok,掌握以上内容,基本就可以掌控集群相关运行环境了,你学会了么

评论
  • 按正序
  • 按倒序
  • 按热度
Powered by Waline v2.14.7

回到顶部