虚拟机 ============== .. contents:: 创建虚拟机模板 ------------------------------------- 创建虚拟机(CentOS-linux-8) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 4核,单CPU-4核心 公开虚拟化,公开IOMMU,启用虚拟计数器 32GB内存 100GB磁盘,精简置备(各个虚拟机需要另外挂载数据盘) 添加ISO光盘-CentOS_8_2004 操作系统配置 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 安装无swap分区 root密码 s0u7h&iGIS%2020 gis密码 5ou7H$20.20#GiS 设置固定IP 172.20.20.200 基础软件 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code:: dnf install epel-release # 基础软件源使用ustc镜像 sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \ -e 's|^#baseurl=http://mirror.centos.org/$contentdir|baseurl=https://mirrors.ustc.edu.cn/centos|g' \ -i.bak \ /etc/yum.repos.d/CentOS-Base.repo \ /etc/yum.repos.d/CentOS-Extras.repo \ /etc/yum.repos.d/CentOS-AppStream.repo # epel使用ustc镜像 sudo sed -e 's|^metalink=|#metalink=|g' \ -e 's|^#baseurl=https\?://download.fedoraproject.org/pub/epel/|baseurl=https://mirrors.ustc.edu.cn/epel/|g' \ -i.bak \ /etc/yum.repos.d/epel.repo # 安装基础软件 dnf update dnf install vim ctags wget curl zip unzip lrzsz net-tools psmisc authconfig 配置欢迎信息 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 编辑/etc/profile .. code:: # 打印欢迎信息 if [ "$SSH_CONNECTION" != '' -a "$TERM" != "linux" ];then declare -a HOSTIP HOSTIP=`echo $SSH_CONNECTION |awk '{print $3}'` echo -e "\e[31mSouthGIS WHRDC Server\e[0m" echo -e "\e[31m${USER}@$HOSTIP:[${HOSTNAME%%.*}]\e[0m\n" fi 安全 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code:: # 关闭selinux # 编辑/etc/selinux/config # SELINUX=disabled # 关闭firewalld systemctl disable firewalld systemctl stop firewalld .. code:: # 编辑/etc/login.defs PASS_MIN_LEN 8 .. code:: authconfig --enablereqlower --enablerequpper --enablereqdigit --enablereqother --updateall # --passminlen=8 vim配置 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /etc/vimrc 最后添加 set nu 迁移初始化脚本 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ /init-vm.sh .. code:: #!/bin/bash HOSTNAME=template.whrdc IP=172.20.20.200 hostnamectl set-hostname $HOSTNAME sed -i 's+IPADDR=.*+IPADDR="'$IP'"+g' /etc/sysconfig/network-scripts/ifcfg-ens192 其他 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 卸载光驱 制作快照 LVM --------------- 挂载新数据盘 ^^^^^^^^^^^^^^^^^^^ .. code:: bash pvcreate /dev/sdb vgcreate vg1 /dev/sdb # lvcreate -n 自定义逻辑卷名称 -L 要创建的逻辑卷的大小 VG名称 # lvcreate -n LVName -L 3G VGName lvcreate -n lv1 -l 100%FREE vg1 mkfs.xfs /dev/vg1/lv1 mkdir /mnt/data vim /etc/fstab 添加如下行 .. code:: /dev/vg1/lv1 /mnt/data xfs defaults 0 0 挂载数据盘扩容 ^^^^^^^^^^^^^^^^^^^^^^^^ .. code:: bash pvcreate /dev/sdc # #扩展卷组vg_template,即将PV加入卷组(VG)。 vgextend vg1 /dev/sdc # 扩容lv lvextend -l +100%FREE /dev/vg1/lv1 # 扩大分区 resize2fs /dev/vg1/lv1 xfs_growfs /dev/vg1/lv1 df -h NFS -------------------- 服务安装 ^^^^^^^^^^^^^^^^^^^^^^^^^^ 客户端使用 ^^^^^^^^^^^^^^^^^^^^^^ .. code:: bash dnf install nfs-utils 临时访问 """""""""""""""""""""""""""""" .. code:: bash mkdir -p /mnt/nfs mount -t nfs 172.20.20.190:/nfsdata /mnt/nfs 永久挂载 """"""""""""" .. code:: bash mkdir -p /mnt/nfs vim /etc/fstab # 添加如下行 # 172.20.20.190:/nfsdata /mnt/nfs nfs defaults 0 0 虚拟机配置 ------------------------ 安装CentOS8 ^^^^^^^^^^^^^^^^^^^^^^^^^ 配置GPU环境 ^^^^^^^^^^^^^^^^^^^^^^^^^ docker与NVIDIA Docker ^^^^^^^^^^^^^^^^^^^^^^^^^ .. code:: bash # 安装依赖 dnf install -y yum-utils device-mapper-persistent-data lvm2 # 添加软件源信息 # centos 8 dnf config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo # centos 7 yum-config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo # 更新并安装 Docker-CE # 最新docker支持centos8,无需单独安装containerd.io # dnf install -y http://mirrors.ustc.edu.cn/docker-ce/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.13-3.2.el7.x86_64.rpm # dnf install -y docker-ce dnf install -y docker-ce docker-ce-cli containerd.io # 开启Docker服务 systemctl restart docker # 修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值。 { "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"] } { "registry-mirrors": ["https://registry.docker-cn.com"] } # 重新启动 dockerd: systemctl restart docker systemctl enable docker # 安装docker-compose(仅x86_64) curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose # 安装NVIDIA-Docker distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo dnf install -y nvidia-container-toolkit systemctl restart docker #### Test nvidia-smi with the latest official CUDA image docker run --gpus all nvidia/cuda:10.2-base nvidia-smi 镜像 ------------------------------- docker ^^^^^^^^^^^^^^^^^^^^ conda ^^^^^^^^^^^^^^^^^^^^ pypi ^^^^^^^^^^^^^^^^^^^^ debian ^^^^^^^^^^^^^^^^^^^^ ubuntu ^^^^^^^^^^^^^^^^^^^^ centos ^^^^^^^^^^^^^^^^^^^^ maven ^^^^^^^^^^^^^^^^^^^^ npm ^^^^^^^^^^^^^^^^^^^^