返回列表

Azure 欧洲区域账号 Azure虚拟机深度学习环境搭建

微软云Azure / 2026-05-17 02:27:27

下载.png

第一步:虚拟机创建指南——别让账单吓哭

各位炼丹师,欢迎来到Azure虚拟机深度学习环境搭建现场!先别急着点“创建”,不然你可能明天醒来发现账单比你工资还高,吓得以为自己中了彩票。别慌,跟着我一步步来,保证让你既省钱又高效。

1.1 选对实例类型,钱包不哭

Azure的GPU实例种类多得像菜市场,NC6s_v3、NCv3、ND系列,每个都标榜自己“最强”,但实际选哪个?先别被参数吓到,记住:炼丹需要的是稳定和性价比。比如NC6s_v3,6核CPU+1个V100显卡,28GB内存,适合中小型模型训练,每天也就几十块,比请个助理还便宜。要是想练大模型,NCv3系列可能更合适,但别忘了先去Azure官网看看配额是否够用,不然创建失败,哭都来不及。对了,记得选“按需付费”,别选预留实例,除非你确定要长期用——否则万一项目黄了,钱也白花了。

创建时别忘了选对区域。比如“东海岸”区域GPU实例多,但“西海岸”可能更便宜?不一定,得看具体定价。建议用Azure的价格计算器先算算,再动手。记住,选错区域可能让你的模型训练延迟,毕竟网络延迟也是钱!

1.2 网络配置小贴士

网络设置这块,很多人以为随便点就行,结果连不上。先看安全组,记得开放SSH端口(22)和Jupyter端口(8888),不然你只能对着虚拟机干瞪眼。别嫌麻烦,把入站规则写清楚:来源IP填“我的公网IP”,别开0.0.0.0/0,否则黑客分分钟给你来个“免费试用”,还顺便把你的训练数据打包带走。磁盘类型建议用SSD,速度比HDD快得多,训练时数据加载不卡顿,心情也舒畅。存储空间的话,50GB起步,但建议100GB以上,毕竟数据集和模型动不动就占几十G,别等训练到一半发现磁盘满了,那才叫崩溃。

第二步:环境配置——从零开始

2.1 安装NVIDIA驱动,别手抖

虚拟机创建完,SSH连上去,第一件事是装驱动。这时候千万别用apt install nvidia-driver,因为可能版本太老。正确做法是先查查你的GPU型号对应的驱动版本。比如V100,一般用470以上的版本。先运行:sudo apt update && sudo apt install -y linux-headers-$(uname -r) build-essential,然后加NVIDIA的仓库:sudo add-apt-repository ppa:graphics-drivers/ppa,再sudo apt update。接着sudo apt install nvidia-driver-470。装完重启,用nvidia-smi看看,如果看到驱动版本和显卡信息,说明成功。如果报错?别慌,可能是内核不匹配,这时候得装对应的内核头文件,或者回退版本——这点我踩过坑,花了一下午才搞定,所以别学我。

2.2 CUDA和cuDNN的正确打开方式

驱动装好了,接下来是CUDA和cuDNN。这里有个大坑:CUDA版本和PyTorch/TensorFlow的版本要匹配,否则训练报错。比如PyTorch 1.10需要CUDA 11.3。先下载对应版本的CUDA安装包:wget https://developer.download.nvidia.com/compute/cuda/11.3.1/local_installers/cuda_11.3.1_465.19.01_linux.run。然后sudo sh cuda_11.3.1_465.19.01_linux.run,安装时别选驱动(因为已经装过),其他全选。然后把环境变量写进~/.bashrc:export PATH=/usr/local/cuda-11.3/bin:$PATH,export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64:$LD_LIBRARY_PATH。source ~/.bashrc。接着cuDNN,去NVIDIA官网下载对应CUDA版本的cuDNN,解压到cuda目录:sudo cp cuda/include/cudnn*.h /usr/local/cuda/include,sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64,sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*。这样,cuDNN就装好了。检查一下,用nvcc -V看CUDA版本,cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR看cuDNN版本,确认无误就OK。记住,别下错版本,否则你的模型跑不起来,只能干瞪眼。

第三步:深度学习框架安装

Azure 欧洲区域账号 3.1 PyTorch还是TensorFlow?看这里

选框架这事,看个人喜好和项目需求。PyTorch灵活,适合研究;TensorFlow部署方便,适合生产。但不管选哪个,都得装对版本。比如PyTorch 1.10 + CUDA 11.3,命令是:pip install torch==1.10.0+cu113 torchvision==0.11.0+cu113 -f https://download.pytorch.org/whl/torch_stable.html。如果用conda,更简单:conda create -n pytorch_env python=3.8 pytorch torchvision cudatoolkit=11.3 -c pytorch。TensorFlow的话,pip install tensorflow-gpu==2.6.0。装完后测试一下:python -c "import torch; print(torch.cuda.is_available())",如果返回True,说明GPU可用,可以开始炼丹了。如果返回False,赶紧回头检查驱动和CUDA,别怪框架有问题,通常是环境没配好。

3.2 用conda还是pip?老司机教你选

这里有个经典问题:conda和pip哪个好?其实看情况。conda适合管理复杂依赖,特别是需要多个环境时;pip简单直接,适合单一环境。但注意,用pip安装PyTorch时,必须指定cuda版本,否则默认装CPU版。而conda会自动处理依赖,但可能稍慢。我个人推荐用conda,毕竟虚拟环境隔离干净,避免系统库冲突。比如先conda create -n dl_env python=3.8,然后conda activate dl_env,再安装包。这样即使以后删环境,也不影响系统。不过如果只是简单用,pip也行,别忘了加--user参数,避免权限问题。记住,别在root下直接pip install,容易把系统库搞乱,到时候哭都来不及。

第四步:Jupyter Notebook配置——远程炼丹必备

4.1 安装与启动

现在环境好了,怎么用Jupyter远程访问?首先pip install jupyter,然后jupyter notebook --generate-config,生成配置文件。接着用jupyter notebook password,按提示输入密码。然后修改配置文件~/.jupyter/jupyter_notebook_config.py,设置c.NotebookApp.ip = '0.0.0.0',c.NotebookApp.open_browser = False。最后启动:jupyter notebook --port=8888 --ip=0.0.0.0。这时候在本地电脑用SSH隧道转发:ssh -L 8888:localhost:8888 your_user@azure_vm_ip,然后浏览器访问localhost:8888,输入密码就能用。注意,如果防火墙没开8888端口,这个步骤会失败,所以记得在Azure安全组里开放端口。

4.2 安全设置,别让黑客盯上

远程访问Jupyter,安全很重要。别用默认的8888端口,改成随机端口,比如8889,避免被扫描。密码别用123456,生成一个强密码。另外,可以配SSL证书,或者用SSH隧道加密。如果觉得麻烦,用Azure的Notebook服务,但可能要付费。还有一种方式是用ngrok,但免费版可能不稳定。总之,安全第一,别为了方便把自己的数据泄露了,否则你的模型可能被别人偷去训练,还反过来用你的数据攻击你——想想就可怕!

第五步:踩坑指南——前人经验分享

5.1 常见错误及解决方案

踩坑是每个炼丹师的必经之路。比如,安装CUDA后nvidia-smi显示驱动正常,但torch.cuda.is_available()是False?检查CUDA路径是否在环境变量里,或者用ldconfig查看。或者,训练时爆显存?试试batch_size调小,或者用梯度累积。再比如,SSH连接时提示“Permission denied”,检查密钥权限,用chmod 600 ~/.ssh/id_rsa。还有,用conda创建环境后,import torch报错?可能是环境没激活,或者安装的版本不对。记住,遇到问题先查日志,别急着重装——重装是最后的手段。

5.2 账单控制技巧

最后说说账单。Azure按小时计费,关机不收费,但停机状态还是收费?不对,停机(Stopped)是按运行时间收费,但Stopped (Deallocated)不收费。所以训练完记得Deallocate虚拟机,或者用自动关机策略。另外,设置预算警报,当费用超过50美元就发邮件提醒,避免半夜惊醒发现账单上万。还有,用Azure的Cost Management工具分析费用,哪些资源用了钱,及时删掉不用的。记住,云服务不是免费午餐,花钱得花得明白,不然你的模型还没训练完,钱就花光了。

Telegram售前客服
客服ID
@cloudcup
联系
Telegram售后客服
客服ID
@yanhuacloud
联系