阿里云ECS CentOS系统如何搭建机器学习环境?

在阿里云 ECS(CentOS 系统)上搭建机器学习环境,推荐采用 Anaconda/Miniconda + PyTorch/TensorFlow 的组合方案。以下是详细步骤:


一、基础准备

  1. 登录 ECS 实例

    ssh -i your-key.pem root@your-ecs-ip
  2. 更新系统并安装必要工具

    sudo yum update -y
    sudo yum install -y wget curl git vim gcc make cmake python3-devel
  3. 安装 NVIDIA 驱动(如需 GPU)

    • 确认显卡型号:nvidia-smi
    • 若未安装驱动,前往 NVIDIA 官网 下载对应 CentOS 版本的驱动,或使用阿里云镜像源提速:
      sudo yum install -y akmod-nvidia kernel-devel-$(uname -r)
      sudo reboot
  4. 安装 CUDA Toolkit(GPU 必需)

    • 根据 nvidia-smi 显示的 CUDA 版本选择对应安装包(例如 CUDA 12.1)
    • 下载地址:CUDA Toolkit Archive
    • 示例安装流程(以本地下载的 .run 文件为例):
      chmod +x cuda_12.1.x_linux.run
      sudo ./cuda_12.1.x_linux.run --toolkit --silent
      echo "export PATH=/usr/local/cuda/bin:$PATH" >> ~/.bashrc
      echo "export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH" >> ~/.bashrc
      source ~/.bashrc

二、安装 Conda 环境管理工具

# 安装 Miniconda(轻量版,推荐)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
# 按提示完成安装,重启 shell: source ~/.bashrc

# 创建隔离的 ML 环境
conda create -n ml_env python=3.10 -y
conda activate ml_env

三、安装深度学习框架

方案 A:PyTorch(推荐)

# 通过 conda 安装(自动处理依赖)
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

# 验证安装
python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"

方案 B:TensorFlow(GPU 支持)

pip install tensorflow-gpu==2.15.0  # 或指定版本
# 注意:TF2.15+ 需 CUDA 11.8 或 12.1,请确保版本匹配

四、常用辅助工具安装

# 数据科学栈
conda install numpy pandas scikit-learn matplotlib seaborn jupyterlab -y

# Jupyter Notebook 配置(可选)
jupyter lab --generate-config
echo "# 添加以下内容到 ~/.jupyter/jupyter_lab_config.py"
echo "c.ServerApp.ip = '0.0.0.0'"
echo "c.ServerApp.port = 8888"
echo "c.ServerApp.open_browser = False"
echo "c.ServerApp.allow_remote_access = True"

# 启动 Jupyter(需先放行安全组端口 8888)
jupyter lab --no-browser --port=8888

五、安全组配置(关键!)

  1. 登录阿里云控制台 → ECS 实例安全组规则
  2. 添加入方向规则:
    • 协议:TCP
    • 端口:8888(Jupyter)、22(SSH)、自定义端口等
    • 授权对象:0.0.0.0/0(生产环境建议限制 IP)

⚠️ 注意:首次使用 Jupyter 时,务必设置强密码或改用 SSH 隧道访问。


六、验证环境

# 测试脚本 test_ml.py
import torch, tensorflow as tf, numpy as np
print(f"PyTorch: {torch.__version__}, CUDA: {torch.version.cuda}")
print(f"TensorFlow: {tf.__version__}")
print("All dependencies installed successfully!")

运行:

python test_ml.py

七、优化建议

  • 磁盘扩容:ML 项目需要大量存储,可通过阿里云控制台扩容云盘(无需重装)。
  • 快照备份:定期创建系统盘快照,防止环境损坏。
  • 使用容器化:复杂场景可考虑 Docker + Kubernetes(阿里云 ACK)。
  • 监控资源:安装 nvidia-smi 定时脚本或 Prometheus 监控 GPU 使用情况。

如有特定需求(如多卡训练、分布式部署、预装模型库),可进一步说明,我会提供针对性方案。

未经允许不得转载:CLOUD云枢 » 阿里云ECS CentOS系统如何搭建机器学习环境?