实验室服务器运维踩坑o.0
先说背景:实验室新配了一台Dell T640服务器,双3090, 512G内存, 5 x 8T硬盘(RAID5),2 x 1T固态(RAID1),配置很够用但就是搭建运维踩了很多坑,以下是主要完成的几个工作:
- 安装Ubuntu22.04系统
1) 下载ubuntu22镜像文件
2) Rufus制作系统启动盘(最好大于8G)
3) 插入主机,启动按下F11进入 one-shot UEFI Boot Menu选中U盘进行安装
4) 分配空间选择其他选项,留好一个EFI主分区和一个/boot逻辑分区,都给1G,swap和内存一样给512G,其他的4T给/,18T给/home(RAID冗余隐藏了2个机械1个固态,逻辑分区都选Ext4文件系统)
5) 换源,联网情况下启动软件与更新,在Ubuntu Software页面选择Download from -> other -> select Bset Server -> choose server 自动替换当前地区最快的镜像源地址,然后apt update, apt upgrade
- 安装3090显卡驱动
踩坑: 第一次安装的时候我是从NVIDIA官网上下载的最新驱动,好像是525版本的,再按照其他教程上所说的屏蔽nouveau,结果重启就黑屏了,只有一个鼠标在左上角闪,进入tty尝试无果,只能重装一次系Orz
1) 第二次安装选择一个无脑的方法,进入ubuntu自带的软件与更新界面,点击Additional Drivers,等待加载一会会出现NVIDIA相关可以选择的驱动
2) 有了第一次失败的经验,我在想是不是因为驱动版本太高了,所以选择了515版本的安装,结果下载完安装在最后会直接退出,但是不会导致黑屏XD,再尝试510版本,然后就可以了,输入nvidia-smi可以看到显卡信息,重启也是正常的
- 配置内外网双网卡,走线拉通局域网,外网frp穿透
踩坑:这块是花时间最长的,主要是这个局域网问题,检查了几个小时结果是中继路由器的问题,换个路由器就好了-,-
1) 外网由于是直接从外网路由器分过来的,不需要拨号,直接走线连起来就行
2) 需要注意的是主机重启之后刚开始网是好的,过10多分钟网就没了,ping能ping通就是浏览器,todesk这些软件没网,后来找到问题是因为DNS变成了127.0.0.1,即本机回送地址
3) 解决方案是修改/etc/resolvconf/resolv.conf.d/head文件加入nameserver 8.8.8.8,重启照样生效
4)内网网口的话是直接将其设为固定IP,填一下掩码以及网关,以及将DNS设置为8.8.8.8 (注意服务器主主机与其他局域网客户机之间需要一个路由器中转,尝试了一个简单的交换机是不行的,另外不知道是不是华为路由器wan/lan都是共用的问题,连上就是用不了局域网,换了个wan/lan区分的路由器就好了)
- 物理机vnc自启动
(步骤参考:https://blog.csdn.net/ZhrXg/article/details/126831072)
踩坑:
1)桌面系统不要乱动,因为vnc启动黑屏的问题我自己卸载再重装了一个gnome桌面系统,结果开机就无限启动鬼畜了,只能再重新装一个系统重来一次。另外奇奇怪怪的问题还有开机之后过几分钟就打不开file和terminal了,右键和应用都不行,一直在转圈然后就无了,有帖子给的说法是因为注册地址和用户设置语言不一致,需要在设置中切换一下会自动log out在登入就好了,亲身实践重启之后又不行了。我的解决方法是先安装一个gdm3会提示切换,切换到gdm3,然后再安装lightdm切换回来,突然就好了。
2)另一个奇葩问题是我下载的是tigerVnc,启动之后不会自动xstart启动桌面系统,vnc远程连接起来是黑屏什么都没有,中间尝试了很多办法都没用,最后试了两种方法可行,一种是不用tigerVnc改用x11vnc,但是无法多用户只能舍弃,另一种方法是改用xfce4启动远程桌面系统,就完美解决了,唯一缺点是不太习惯这个UI
- 由于某些原因需要使用虚拟机,进行虚拟机内存,硬盘扩容挂载,增大交换内存,设置内网静态IP,配置虚拟机vnc
(Centos7设置静态IP:https://blog.csdn.net/Fly_hps/article/details/122241747)
(Centos7 swap扩容:https://www.cnblogs.com/saltiest/p/11187994.html)
1) 下载vmware 17 pro,导入虚拟机镜像文件
如果启动vmware 报gnu缺少的错误运行下面这三条命令:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install build-essential
2) 因为要实现的目标是虚拟机只能局域网访问,所以先得用root权限修改虚拟机网络(顺便设置一下虚拟机容量上限),添加一个桥接模式直接桥接到物理机内网网卡,然后再在虚拟机网络设置那选择桥接->用户指定的内网
3) 因为虚拟机需要的内存和硬盘资源很高,但是vmware 17 pro能够设置的容量上限内存只有128G,必须给他拉满,直接进入虚拟机目录,找到.vmx文件,修改memsize为307200,即300G,修改完启动会有一个warning,不管,后面增大swap空间就行
4)虚拟机安装的Centos7系统网络通信默认是dhcp协议,这样有个问题就是每次重启虚拟机IP地址是变的,但我们需要直接在虚拟机中启动vnc,要保证IP不变,所以将其设置为静态IP,设置完之后尝试能不能在局域网下ping通虚拟机
5) 接下来是最麻烦的,存储空间需要扩容,一个是根目录"/"初始只有56G,多用户肯定不够,另一个问题是"/home"没有挂载,在vmware设置添加一个新的硬盘容量6T,并将初始硬盘扩容到2T,扩容之后不是自动分配的,还需要进入虚拟机进行挂载
6)首先挂载第二个硬盘到"/home",因为是新添加的硬盘不需要取消挂载,大于2T,不能用fdisk,需要用parted,然后挂载到/home,好了现在/home有6T空间
7) 然后扩充根目录,原先"/"是挂载在/dev/sda3下,并且我的逻辑卷管理器不是LVM(确认一下,不然LVM相关命令无法操作),fdisk /dev/sda操作,d 删除sda3分区(原先"/"目录下文件还在),n,p,3,默认扇区头扇出尾,w(因为我的是2T,按理说fdisk无法处理,我写入的时候确实也报错了,但是最终结果还是分出来2T的空间,神奇),partprobe /dev/sda3刷新分区表,xfs_growfs /dev/sda3,好了现在"/"也扩容到了2T,够造了!
8) 内存交换扩容,因为分配了300G的内存而默认swap只有2G,为了避免之后奇奇怪怪的错误,对swap进行扩容,详见第二个参考链接
9) 设置vnc多用户启动,没有桌面系统的错误这次就比在物理机上轻松很多了
10)为了防止之后再出什么系统问题,先弄一个虚拟机快照以备不时之需:)
OK!终于完成了历时一周的踩坑之旅!