Ubuntu20.04部署lxdui技术文档

一、硬件配置

主板:X11DAI

CPU:intel  5220R

内存:三星 32G  RECC DDR4 3200

硬盘:三星980 1T m.2

数据盘:8t 7200 企业级

显卡:四张 4090 24G

二、软件环境

系统:Ubuntu20.04

容器:LXD

存储:ZFS

三、安装过程

(1)、安装显卡驱动

#1、安装相关包

sudo apt install -y vim dkms gcc g++ make openssh-server

 

#新安装的Ubuntu server可以跳过第2步到第5步和第7步,从第6步开始。

 

#2、禁用nouveau驱动

sudo vim /etc/modprobe.d/blacklist.conf

 

blacklist nouveau

blacklist lbm-nouveau

options nouveau modeset=0

alias nouveau off

alias lbm-nouveau off

 

#3、内核中禁用nouveau

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf

 

#4、是上面命令生效

sudo update-initramfs -u

 

#5、重启

sudo reboot

 

查看是否禁用了nouveau

lsmod | grep nouveau

没有输出代表禁用成功

 

#6、下载驱动

https://www.nvidia.cn/download/find.aspx?lang=cn

Ubuntu20.04部署LXD配置gpu技术文档_Ubuntu显卡驱动安装

#注:根据自己的显卡选择对应的显卡驱动

#7、关闭图形界面

sudo init3

 

#8、执行安装显卡驱动

sudo bash 显卡驱动包名称 

#或

sudo bash 显卡驱动包名称     #ubuntu 18.04及以下桌面版版本使用此命令

 

应答过程中,如果需要显卡进行输出显示,x   server那一项,选择yes,不用显卡输出选择no

 

#9、查看显卡驱动是否安装成功

nvidia-smi

Ubuntu20.04部署LXD配置gpu技术文档_容器配置gpu_02

(2)、安装lxd

LXD:用于创建和管理容器

ZFS:用于管理物理磁盘,支持 LXD 高级功能,负责容器存储

Bridge-Utils:用于搭建网桥,负责容器上网

#1、安装命令:

sudo apt-get install lxd zfsutils-linux bridge-utils

#2、LXD初始化

命令:sudo   lxd  init

Ubuntu20.04部署LXD配置gpu技术文档_容器配置gpu_03

四、LXD测试

(1)、查看ZFS的存储池

sudo    zpool   list   lxd

(2)、创建容器

#1、配置清华镜像源

sudo lxc remote add tuna-images https://mirrors.tuna.tsinghua.edu.cn/lxc-images/ --protocol=simplestreams –public

#2、创建Ubuntu18.04系统的容器

sudo lxc launch tuna-images:ubuntu/18.04 alpha

#3、查看容器

sudo   lxc  list

Ubuntu20.04部署LXD配置gpu技术文档_容器配置gpu_04

#4、进入容器

sudo   lxc  exec  alpha

#5、配置容器

sudo apt install software-properties-common vim

# Install GCC 9

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install gcc-9 g++-9

sudo ln  -s  /usr/bin/gcc-9  gcc

sudo ln  -s  /usr/bin/g++-9 g++

sudo apt install make

sudo mkdir   -pv   /data1

#注:容器里面的系统内核是使用gcc9.4.0编译的,所以需要配置gcc9,查看内核编译gcc版本命令:cat   /proc/version)

设置ssh

sudo   apt   install openssh-server

sudo  vim   /etc/ssh/sshd_config

Ubuntu20.04部署LXD配置gpu技术文档_LXD、_05

sudo systemct restart sshd

#注:ssh设置完成后,可以在宿主机使用root用户ssh连接

退出容器:exit

#6、设置共享目录

sudo lxc config set   alpha  security.privileged true

sudo mkdir -pv /data

 

sudo lxc config device add alpha  alpladisk0 disk source=/data path=/data1

#7、alpha容器配置显卡

I、宿主机配置

sudo su –

/sbin/modprobe nvidia-uvm

D=`grep nvidia-uvm /proc/devices | awk '{print $1}'`

mknod –m 666 /dev/nvidia-uvm c $D 0

lxc config device add alpha gpu gpu

lxc config device add alpha nvidia-uvm unix-char path=/dev/nvidia-uvm

II 、alpha容器配置

安装显卡驱动

sudo bash 显卡驱动包名称    --no-kernel-module


测试是否成功 

nvidia-smi

 

 

对于lxdui的web管理面板,我这里并没有安装成功。根据官网安装,登录无反应,可能是一些依赖包版本原因,目前没有解决。