? ? ? ?
? ? ?
批量服务器装机过程常见问题及排除指南
? ? ?
?
?
?
?
? ? ?
? ? ?
?
? ? ?
?
?
近期需要上个大项目 POC ,由于新采购的机器还未到货,所以只能从现有的测试环境 ESXi 物理机里面抽出来 9 台临时用上,给它们装上 CentOS 7.2 ,然后交给阿里的专家们来部署。不曾想在这装机过程中,这里面遇到的坑真是一个接一个,下面容我一一道来。
01??服务器配置及背景介绍
此次需要用到的服务器,型号是华为 RH2288H V5 ,具体配置如下:
CPU :Intel Xeon Gold 5115 * 2RAM :DDR4 ECC 384GBHDD :900G 2.5 SAS 12Gbps * 2 (front)SSD :240G M.2 SATA (rear)Network :10GB optical * 2 , 1GB electrical * 2 via Intel X722
由于服务器同时配备了机械盘和 M2 SSD ,所以必然要配备两块 RAID 卡,一块是 Avago SAS3108 用于管理前面板的 SAS 接口 2.5 的机械盘,另外一块是 Avago SAS3004-iMR 用于管理背面的 M2 SSD 。
原服务器已经将 M2 SSD 所在的 RAID 卡开启了 JBOD 模式,并把 M2 SSD 设为单盘 JBOD 模式,然后在 SSD 上安装 EFI 模式引导的 ESXi 。前面板在之前机器作 ESXi 使用时,没有安装任何机械盘,所以 RAID 卡也是默认的 RAID 模式。
阿里的专家告诉我们,他们需要使用 CentOS 7.2 版本的操作系统,并且文件系统必须要使用 ext4 而非 CentOS7 默认的 xfs (原因猜测是 CentOS 7.2 的 xfs 内核驱动有问题,会在 docker 环境下触发内核 bug 造成 kernel panic ,这个是 7.2 系统内核的一个已知 BUG )。每台服务器都需要单独再插两块 900G 的 SAS 机械盘,然后把操作系统 CentOS 7.2 安装在第一块 HDD 上,第二块 HDD 和 M2 SSD 暂时留空,等装完系统后再分空间用于存放数据。
由于需要安装部署 CentOS 的机器有 9 台之多,所以我们计划此次实施的操作大概步骤如下:
1 、 为了防止原有的操作系统干扰 PXE 引导,拔掉 M2 SDD ,除了用于 PXE 引导的网线,其它网线也全部拔掉。这样就可以实现服务器按了电源开关开机之后无需任何人工操作即可自动进入 PXE 引导的 clonezilla 并配好 RAID 卡属性。
2 、使用 PXE 批量引导 clonezilla 并自动运行 storcli 脚本,将 9 台机的机械盘所在的 RAID 卡开启 JBOD 模式,并将两块硬盘也配置为 JBOD 模式。
3 、通过 PXE 批量引导 CentOS 并使用 kickstart 脚本实现全自动安装。
4 、批量安装完 CentOS 之后,再针对每台机做相应的配置。
02??关于网卡的坑
既然是要用 PXE 引导,那必须要用到网卡。当网络管理员帮我们拉好网线,我们开机之后就发现了网卡上的灯不亮??网管在交换机上看端口也是 down 状态。这个问题着实困扰了我们很久,为了验证到底是哪里出了问题,我们做了如下的测试:
1 、换了一条网线,灯不亮。
2 、换了旁边的一个网口,灯不亮。
3 、用笔记本电脑的网口直连服务器的网口,灯亮了。
4 、网管换了一台交换机,灯亮了。
当我们对比了两台交换机的区别,发现灯不亮的那台是百M交换机,亮的那台是千M交换机。一般来说网卡不都是应该是 100/1000M 自适应的吗?后面查了一下这个网卡的型号,我们才发现事情并不是我们想象的那样。
上面这个图是从华为官网关于 RH2288H V5 的页面截下来的,明确说明了千M口只支持 1000M 的速度,不支持10/100M ,万M光口只支持10000M ,不支持1000M 。后面进一步了解,原来这个是 Intel X722 网卡芯片的规格所限制的。这个 X722 同时能支持千M 和万M的速度,一般配这个芯片的服务器都是两个千M电口,两个万M光口。
在踩完 X722 不支持百 M 自动协商这个坑之后,我们开始尝试用 EFI 模式 PXE 引导 CentOS 7.2 的安装镜像,发现原来很快就能开始的加载内核的过程,似乎卡住了,到了五六分钟之后干脆就直接进入 emergency 了,这让我们很疑惑。
为了验证到底是哪里的问题,我们决定先用 U 盘引导一下 CentOS 7.2 的安装。在进入到安装界面之后,可以看到系统正确识别到了 X722
原创力文档

文档评论(0)