简介:一份面向思科ACI网络工程师的APIC手动安装与升级实操笔记PDF。文档以作者在实验环境中的真实排错经历为主线,完整记录了从搭建HTTP文件服务器、准备ISO镜像、验证MD5、开启TPM,到通过vKVM挂载镜像完成2.2.4r版本安装的每一步操作,并针对安装过程中常见的Starting Terminate Plymouth Boot Screen等卡死问题给出了原因分析与排查方向。包体为单个PDF文件,大小2.1MB,适合需要自行部署APIC或准备升级到4.2/5.x版本的中高级网络运维人员参考。目前已有578人学习下载,内容不仅覆盖底层CIMC/BIOS设置、RAID引导盘调整等关键细节,也包含从Firmware Repository上传固件到执行Controller升级的完整操作流程,能帮助读者避开工期中的典型坑点。
1. 折腾一周的手动安装:APIC 这玩意为什么这么难装
手动安装思科 ACI 的控制器 APIC,在运维圈里属于「没人愿意碰」的活。官方默认流程是出厂预装好系统,你拿到手只需要做初始化配置;可我手上这套实验环境的 APIC,原厂自带的 4.x 版本被之前的操作干掉了,只剩一台空壳服务器,所有系统都得自己装回去。这一装就是一周,期间反复卡在引导阶段、重启找不到启动盘、TPM 状态不对直接中断安装,每一步都是血泪经验。
这篇笔记不是官方安装手册,是我把踩过的坑、试过的参数、最后能跑通的路数完整记录下来。适合两类人看:一类是实验环境里被迫手动装 APIC、卡在某个 Starting 界面一夜没结果的;另一类是准备从低版本往 5.x 升,担心升级过程翻车、想提前知道哪些动作会卡死的。照着走,至少能让你少熬五个通宵。
2. 安装前的环境准备:CIMC 固件、BIOS、TPM 和 HTTP 文件服务器
2.1 先看清楚服务器底子:CIMC 和 BIOS 版本
动手之前,先把 APIC 服务器的带外管理 CIMC 和 BIOS 版本摸清楚。我手上这台设备最初的 CIMC 固件版本非常老,只有 2.0(3i),管理界面响应慢,部分虚拟介质功能用起来也不顺手。BIOS 版本原本是 4.1,后来我用 Cisco 的 HUU(Host Upgrade Utility)镜像把它升到了 C220M4.4.1.2c.0.0202211901。
这里有个结论你先记下:BIOS 保持在 4.1 也可以正常安装,不是非要升到 4.4。我升到 4.4 纯属顺手,后面跑 2.2.4r 和 4.2.7u 都没有因为 BIOS 版本出问题。但如果你的目标版本是 5.x,我建议连 CIMC 一起升级,用 HUU 镜像半小时就能整体升完,别省这一步,后面安装挂起和它有关系。
硬盘布局也要提前确认。我这台机器总共三块硬盘,其中两块做了 RAID1,一块做了 RAID0,APIC 系统实际是装在 RAID1 上的,RAID0 那块容量一百来 G,在 CIMC 里被设成了默认引导盘。这个布局在后面给我挖了一个大坑,引导盘认错导致重启后找不到系统,第 5 章会专门说。容量上我的建议是别低于三块 500GB 硬盘,能多给就多给,镜像展开和升级临时文件都很吃空间。
2.2 TPM 必须激活:不 active 就别想装过去
TPM 是手动安装 APIC 绕不过去的坎。进入 BIOS 界面,在 Advance 选项里找到 Trust Computing 相关的菜单,里面就是 TPM 的开关。关键点是确认 current status 显示为 active,如果显示 inactive 或者 disabled,安装过程中会直接报错中断,而且报错信息不会告诉你具体是 TPM 的问题,排查起来非常恶心。
如果你进到 Trust Computing 菜单发现选项是灰色的,无法修改,那是因为没设置 BIOS 密码。先去 BIOS 里设置 administrator 密码,实验环境直接设成 password 这种简单的就行,设完再回到 Trust Computing 菜单,TPM 选项就能动了。激活之后保存退出,再进一次 BIOS 确认状态已经是 active,这一步别偷懒,我后面安装翻车一次就是因为以为激活了,实际状态还是 inactive。
2.3 HTTP 文件服务器:HFS 搭建和目录结构
安装 APIC 必须有一个文件服务器来放 ISO 镜像,而且一定要用 HTTP 方式,这是我从头到尾强调的事。实验环境我推荐直接用 HFS(Http File Server)这个轻量级小工具,Windows 下双击就能跑,不需要装 IIS 或 Nginx。
HFS 的配置就两步:打开程序后,在左侧文件树里新增一个名为 APIC 的共享目录,把下载好的 ISO 镜像丢进去;然后确认 HFS 监听端口和本机 IP 能被 APIC 服务器访问到。我的实验环境里 HFS 跑在 192.168.1.105:8080,镜像文件放在 APIC 目录下,最终访问地址就是:
# 在浏览器里先验证文件服务器是否正常 http://192.168.1.105:8080/APIC/aci-apic-dk9.2.2.4r.iso浏览器能弹出下载或直接列出文件列表,说明文件服务器没问题。不要用 HTTPS,后期在 APIC 引导界面填写 URL 时 HTTPS 会有证书校验的额外麻烦;更不要用 NFS 或 CIFS,手动安装模式下 HTTP 是最稳的,后面升级 5.x 也依赖这个 HTTP 通道。
2.4 镜像校验和版本升级矩阵
版本选型上,我的路线是从 2.2 起步,先装 2.2.4r,再依次升级到 4.2.7u,最后上 5.x。低版本镜像的安装流程相对宽容,对固件要求没那么苛刻;如果你一上来就直接装 5.x,碰到的问题会更多,排查起来也更难定位。
ISO 下载回来后,第一件事就是验证 MD5。镜像文件在传输过程中损坏的概率不高,但一旦损坏,安装到一半报错或者升级后系统状态异常,你根本分不清是镜像问题还是操作问题。我在 Linux 环境下校验的命令是:
# 校验 ISO 完整性,对比官网给出的 MD5 值 md5sum aci-apic-dk9.2.2.4r.isoWindows 用户可以用 certutil 做同样的事。版本升级的具体矩阵,以官方渠道发布的兼容性信息为准,不同版本之间跳跃不能太随意,我 2.2.4r 直接升 4.2.7u 是官方支持路径,再往 5.x 升也没被挡。动手之前花十分钟查清楚版本依赖,能避免升级到一半发现路径不支持、又得回滚的尴尬。
3. 手动安装 APIC 2.2.4r:从 vKVM 挂 ISO 到初始化配置
3.1 vKVM 挂载 ISO 和 F6 引导菜单
安装的第一步,通过 CIMC 的 vKVM 远程控制台挂载 DVD 镜像。现在大多数人装系统都喜欢用 CIMC 的虚拟介质功能直接挂 ISO,但 APIC 的硬件组合比较挑剔,虚拟光驱的兼容性直接影响后面的引导。我在 vKVM 里挂载好 2.2.4r 的 ISO 后,让 APIC 重启,开机自检阶段按 F6 进入 Boot Menu。
引导菜单里会列出当前可用的启动设备,选择名为 Cisco vKVM-Mapped vDVD1.22 的那一项,注意别选错成本地硬盘。选完之后系统会读取 ISO 里的 CentOS 引导程序,看到 CentOS 的引导界面直接回车,正式开始加载安装环境。
这里有个非常容易让人误判的阶段:回车后屏幕会进入一个蓝色背景的界面,看着像死机了,实际上系统在加载和初始化硬件,要耐心等待。我是第一次在这等了好几分钟没动静,以为挂了就强制重启,结果第二次等得更久才进去。判断它是不是真挂的标准很简单,第 5 章会详细说。
3.2 30 秒内选择 HTTP 方式上传镜像
等蓝屏阶段过去,屏幕下方会出现类似 press any key to con 的提示。这个提示的意思是:如果你要继续使用本地挂载的 DVD 镜像,就直接等它自动继续;如果想换用外部 HTTP 或 SCP 方式拉取镜像,要在 30 秒内按任意键。
手动安装 APIC 强烈建议走 HTTP 方式,哪怕你已经在 vKVM 里挂好了 ISO。因为 APIC 的安装过程会重新分区、校验镜像完整性,从虚拟光驱读容易出现中途 I/O 异常,HTTP 反而更稳定。按任意键之后会进入网络配置界面,需要填几项参数,每一项都不能错:
| 配置项 | 填写示例 | 说明 |
|---|---|---|
| Static IP | 192.168.1.222/24 | 必须和 HTTP 文件服务器同网段,携带掩码 |
| 网关 | 192.168.1.1 | 该网段的实际网关地址 |
| 网卡 | eth0 | 默认管理网口,别改成别的 |
| 方式 | http | 可选 http、scp 等,选 http |
| URL | http://192.168.1.105:8080/APIC/aci-apic-dk9.2.2.4r.iso | 文件服务器地址加镜像文件名 |
填完回车,系统会去 HTTP 服务器拉取镜像并自动开始安装。我的实验环境里 APIC 的 IP 规划为 192.168.1.222,和 HFS 文件服务器处于同一网段,路由上没有障碍。如果你有不同的网段规划,Static IP 和网关要相应调整,前提是 APIC 能访问到 HTTP 服务器的地址。
3.3 安装完成和引导盘修正
镜像拉取完成后就是漫长的自动安装,这个阶段正常情况下不需要任何干预。中途如果出现报错,大概率是 TPM 没有激活到位,回 BIOS 重新确认状态。安装过程走完会出现 install 完成之类的提示,回车即可,系统会自动重启。
重启之后我遇到了第一个真正的坑:CIMC 上设置的引导盘是那块 RAID0 的百来 G 硬盘,但 APIC 系统实际安装在 RAID1 上,于是服务器开机提示找不到可引导的设备。这是因为 CIMC 的 Boot Order 和系统实际安装位置不一致导致的,而不是系统装坏了。
解决办法是回到 CIMC 的存储设置里,把 RAID1 所在的虚拟盘设置成第一位引导设备,保存配置后重新启动。这一步做完,再开机就能看到正常的系统引导界面,之后会进入初始化配置流程。
3.4 初始化配置:实验环境和生产环境的差别
系统引导完成后会提示回车,进入 APIC 的初始化配置界面。实验环境下参数比较随意,控制器名称、管理 IP、网关这些按自己的规划填即可。初始化阶段会问你几个关键参数:Controller 的名称、OOB 管理地址、Fabric 名称、NTP 服务器等,每一项都有默认值,但 IP 这类一定要改成你的实际规划。
生产环境这里要多说两句:生产 ACI 架构通常是三节点 APIC 集群,初始化第一台的时候就要考虑到后续节点的 IP 和角色规划,因为控制器之间的集群关系在初始化阶段就确定了一部分,后面再加节点、改参数会麻烦很多。我这里是纯实验环境,单节点测试用,所以怎么方便怎么来。初始化走完,系统才会真正进入 APIC 的 Web 管理界面,此时 2.2.4r 的安装才算彻底完成。
4. 升级到 4.2.7u:在 Web 界面完成固件上传和 Controller Upgrade
4.1 上传固件到 Firmware Repository
2.2.4r 跑起来之后,接着就是升级到 4.2.7u。APIC 的固件升级不需要命令行,全部在 Web 管理界面里操作。登录之后,找到 Admin 菜单下的 Download Tasks,右键选择 Upload Firmware,这时候有两种方式上传镜像:一是从本地电脑选择 ISO 文件直接 submit 上传,二是通过之前搭好的 HTTP 文件服务器拉取。
从本地电脑上传的好处是路径简单,不用填 URL;缺点是受限于浏览器和网络,大文件上传偶尔会中断。实际用下来,小版本升级本地上传没什么问题,但你如果后面要升 5.x,一定要改用 HTTP 方式,这个细节第 5 章会讲,本地方式在 5.x 的镜像上传阶段会直接卡死。
上传完成之后,在 Firmware Repository 列表里能看到 4.2.7u 这个版本号,说明固件已经进了 APIC 的固件仓库,接下来就是把它刷到控制器上。
4.2 Controller Firmware 右键升级操作路径
固件上传到仓库只是第一步,真正让 APIC 运行新版本,需要进入 Controllers 相关的管理页面,找到 Controller Firmware 项,右键选择 Controller Upgrade。这个操作相当于告诉 APIC:我要把当前运行的控制器软件替换成仓库里的 4.2.7u。
右键菜单里选择升级之后,系统会弹出固件选择窗口,从仓库列表里选中 4.2.7u,然后点 Upgrade Now 立即开始升级。注意界面上可能还有其他版本的固件,别选错。Upgrade Now 的按钮点下去之后,整个升级流程就接管了后续所有操作,你在界面上能做的就是看状态、等结果。
4.3 升级过程:会重启,别慌
升级任务提交后,可以在任务状态页看到升级进度。这里要提前做好心理建设:升级过程中 APIC 会重启,而且不止一次。第一次看到它重启的时候,我以为是升级失败了,其实这是正常现象,固件刷写必然伴随系统重新引导。
我一般会在升级期间把 vKVM 窗口开着,观察它重启后是否能正常回到系统登录界面。如果重启后长时间停留在某个启动阶段不动,或者反复重启,那才需要介入排查。4.2.7u 的升级整体顺畅,等 Web 界面能重新打开、登录进去看到版本号变成 4.2.7u,这一步就算成了。到这一步,你已经完成了从 2.2 到 4.2 的大版本跨越,剩下的是继续往上摸 5.x。
5. APIC 安装避坑指南:挂起、TPM、引导盘和镜像上传
5.1 安装卡死在 Starting 界面三连:Plymouth、NetworkManager、dmesg
现象:安装过程中,屏幕长时间停留在以下三个提示之一不动:Starting Terminate Plymouth Boot Screen、Starting Anaconda NetworkManager configuration、Starting Dump dmesg to /var/log/dmesg。等待超过 10 分钟没有任何变化。
原因:这三个 Starting 提示分别对应引导界面切换、网络配置初始化和日志转储阶段,任何一个卡住都说明系统在硬件初始化或驱动加载阶段失去了响应。网上有说法让改 inst.rzam=0 或调整引导参数,我全试过,都没用。最终判断这类挂起和三个因素强相关:TPM 状态异常、磁盘容量不足、固件版本不匹配。TPM 我已经激活了,单独改 TPM 没有解决问题,推测是 TPM 和磁盘容量需要同时满足条件,也就是说硬件整体资源不达标时,引导阶段就会随机挂在某个 Starting 上。
解决:按 2.2 和 2.3 两节的要求,提前确保 TPM 状态为 active、硬盘容量足够大,同时把 BIOS 保持在 4.1 及以上版本。如果已经卡住了,不要傻等,直接强制重启,重新走安装流程,同时检查这三项配置。
5.2 TPM 没激活导致的安装中断
现象:安装过程中途弹出一个与安全模块相关的报错,然后安装进程终止,无法继续往下走。
原因:BIOS 里 TPM 状态不是 active。很多人和我一样,进 BIOS 看了一眼 Trust Computing 选项,觉得默认就是开的,实际上它可能处于 disabled 或者 inactive。报错信息也不会直接提示 TPM,而是以通用错误的形式中断。
解决:回到 BIOS,先给 BIOS 设置 administrator 密码,否则 TPM 配置项是灰色的,设完密码才能操作。然后在 Trust Computing 菜单里把 TPM 开关打开,确认 current status 为 active,保存退出,再重新执行安装。那次之后我养成了一个习惯,每次装 APIC 前先截一张 BIOS 里 TPM 状态的图,免得装到一半怀疑自己。
5.3 重启后找不到引导盘:系统装在 RAID1,引导盘却是 RAID0
现象:安装流程全部走完,系统提示重启,但重启后 CIMC 界面显示没有可引导设备,看起来像系统没装进去。
原因:这台机器的 CIMC 里配置的 boot drive 是那块 RAID0 盘,而 APIC 系统实际写到了 RAID1 的虚拟盘上。两者不一致,导致开机时固件按自己的引导顺序去找 RAID0,自然找不到系统。
解决:去 CIMC 的存储或引导设置页面,把 RAID1 对应的虚拟盘设置为首选启动设备,保存后重新开机。这个问题不会影响已经装好的系统,纯粹是引导顺序配置问题。排查思路对生产环境也有参考价值,如果生产 APIC 重启后引导异常,先确认系统盘和 BIOS 引导顺序是否一致。
5.4 升级 5.x 时本地上传卡死,HTTP 方式一切正常
现象:在 Download Tasks 里用本地文件上传方式提交 5.x 的 ISO,上传进度长时间不动,界面像死掉一样,任务无法完成。
原因:5.x 的固件镜像体积更大,Web 界面的本地上传通道在传输大文件时稳定性不足,容易把会话阻塞住。这个问题在 4.2 及以下的镜像上不明显,到了 5.x 就集中爆发。
解决:升级 5.x 时强制改用 HTTP 文件服务器方式上传,先把 ISO 放到 HFS 的 APIC 目录里,然后在 Upload Firmware 时选择从 HTTP URL 拉取。这也是我一开始就强调一定要搭 HTTP 文件服务器的原因,它在安装和升级两个阶段都是最可靠的通道。镜像完整性的问题同理,所有 ISO 下载后先跑一遍 md5sum 校验,别拿一个损坏的镜像去浪费一整晚。
6. 升级到 5.x 并验证:HTTP 上传是硬规矩
6.1 用 HTTP 方式上传 5.x 镜像
到了升 5.x 这一步,操作路径和 4.2.7u 时基本一样,唯一不同的是上传方式。我已经在第 5 章踩过本地上传卡死的坑,这次直接在 Upload Firmware 界面选择从 HTTP 服务器拉取,填入之前验证过的镜像 URL,任务提交后进度条走得很快,没有出现任何卡顿。
上传完成后,接着右键 Controller Firmware 执行升级,选择 5.x 版本,Upgrade Now。升级过程依然会有多次重启,期间保持 vKVM 窗口开启,确认系统能正常引导回来。这一步走完,整个 APIC 已经站在 5.x 版本上。
6.2 最后的验证步骤
升级完成后不要急着收工,强制自己走一遍验证流程。打开浏览器访问 https://192.168.1.222,如果登录页能正常出来,说明 Web 服务已经起来,但还要进一步确认版本和健康状态。登录后在管理界面里查看当前系统版本号,确认和你上传的目标版本一致;再进到 Fabric 相关的菜单里,看控制器的健康分数和节点状态是否正常。
我通常还会多做一个动作:把这次安装和升级用到的所有版本号、镜像 MD5 值、CIMC 和 BIOS 版本记录到一个文本里,存进 CIMC 的备注信息。这样下次再折腾或者要回溯问题时,不用重新猜自己当时用的什么环境。
从那以后,每次装 APIC 我都强制自己先走一遍 TPM 状态确认、HTTP 文件服务器连通性测试、镜像 MD5 校验这三件事,再开始动手。这套流程虽然多花十分钟,但帮我挡掉了后面可能的一整晚排障。手动安装 APIC 的操作确实不常见,但了解它的完整链路,至少下次遇到类似硬件环境时心里有底,希望帮到你。
本文还有配套的精品资源,点击获取