在之前的文章里, 介绍 install command 升级 Cisco 8000 的方法, 这篇文章记录下使用 PXE bring up 一台新的 Cisco 8000 的过程
- Reload chassis
- 按 ESC 进入 BIOS, 选择 Boot Manager —– PXE
3. 输入 config 进入图像化界面, 配置 net0 «< 管理口
iPXE initialising devices...ok
iPXE 1.0.0+ (b965) -- Open Source Network Boot Firmware -- http://ipxe.org
Features: DNS HTTP HTTPS TFTP EFI ISO9660_grub Menu
iPXE>
iPXE> ifopen net0
iPXE>
iPXE>
iPXE> ifstat
net0: 08:4f:a9:5c:fb:c9 using i210 on PCI02:00.0 (open)
[Link:up, TX:0 TXE:0 RX:10 RXE:3]
[RXE: 1 x "The socket is not connected (http://ipxe.org/380f6093)"]
[RXE: 1 x "Error 0x440e6083 (http://ipxe.org/440e6083)"]
[RXE: 1 x "Operation not supported (http://ipxe.org/3c086083)"]
net1: 00:a0:c9:00:00:00 using x557 on PCI04:00.0 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193)]
net2: 08:4f:a9:5c:fb:ca using x557 on PCI04:00.1 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193)]
iPXE>
iPXE> config
4. Boot Cisco 8000 XR image
“boot tftp://10.76.76.160/8000-x64-7.0.14.iso "
iPXE> boot tftp://10.76.76.160/8000-x64-7.0.14.iso <<<<<<<<
tftp://10.76.76.160/8000-x64-7.0.14.iso... ok
Booting /EFI/BOOT/bootx64.efi
Welcome to GRUB!
Verifying (cd0)/EFI/BOOT/grub.cfg...
(cd0)/EFI/BOOT/grub.cfg verified using Pkcs7 signature.
[ 0.000000] Uhhuh. NMI received for unknown reason 3c on CPU 0.
[ 0.000000] Do you have a strange power saving mode enabled?
[ 0.000000] Dazed and confused, but trying to continue
Feb 25 06:31:46.515: Prepare install environment
Feb 25 06:31:46.517: Preparing installation environment
Feb 25 06:31:46.897: Attempting PD notification of reimage
Feb 25 06:31:47.563: Succeeded PD notification of reimage
Feb 25 06:31:47.565: Attempting to punch watchdog
Stage2 control register configured to 0x01900001
Stage1 control register configured to 0x07080011
Watchdog State = Stage 1 (1)
Watchdog Timer = 1800
Watchdog Stage 1 Config: enable=1, action=1, timer=1800
cat: /proc/0/comm: No such file or directory
Watchdog Stage 2 Config: enable=1, action=0, timer=400
Feb 25 06:31:47.610: Succeeded punching watchdog
Feb 25 06:31:47.612: Wait for install device
Feb 25 06:31:47.614: Create, format and mount partitions
Feb 25 06:31:47.618: Creating partitions on /dev/sda
10000+0 records in
10000+0 records out
10240000 bytes (10 MB, 9.8 MiB) copied, 0.130044 s, 78.7 MB/s
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
[ 6.449733] EXT4-fs (sda2): error loading journal
Feb 25 06:31:47.866: END
Feb 25 06:31:47.872: Formatting partitions
Physical volume "/dev/sda3" successfully created.
Physical volume "/dev/sda3" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
Volume group "main-xr-vg" successfully created
Feb 25 06:31:49.777: Saving old /var/log contents
Rounding up size to full physical extent 956.00 MiB
Logical volume "boot-lv" created.
Using default stripesize 64.00 KiB.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Logical volume "install-rootfs-thinpool" created.
Using default stripesize 64.00 KiB.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Logical volume "install-data-thinpool" created.
Feb 25 06:31:51.043: Formatting Boot (/dev/main-xr-vg/boot-lv)
umount: /dev/main-xr-vg/boot-lv: not mounted
Using default stripesize 64.00 KiB.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Logical volume "install-rootfs-snapshot-1614234707" created.
Feb 25 06:31:51.790: Formatting ThinXR (/dev/main-xr-vg/install-rootfs-snapshot-1614234707)
umount: /dev/main-xr-vg/install-rootfs-snapshot-1614234707: not mounted
Using default stripesize 64.00 KiB.
Rounding up size to full physical extent 4.62 GiB
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Process '/etc/udev/scripts/mount.sh' failed with exit code 1.
Logical volume "install-data-log" created.
Feb 25 06:31:52.546: Formatting Log (/dev/main-xr-vg/install-data-log)
umount: /dev/main-xr-vg/install-data-log: not mounted
Using default stripesize 64.00 KiB.
Logical volume "install-data-scratch" created.
Feb 25 06:31:52.993: Formatting Scratch (/dev/main-xr-vg/install-data-scratch)
umount: /dev/main-xr-vg/install-data-scratch: not mounted
Using default stripesize 64.00 KiB.
Logical volume "install-data-docker" created.
Feb 25 06:31:53.437: Formatting Docker (/dev/main-xr-vg/install-data-docker)
umount: /dev/main-xr-vg/install-data-docker: not mounted
Using default stripesize 64.00 KiB.
WARNING: Sum of all thin volume sizes (111.93 GiB) exceeds the size of thin pools and the amount of free space in volume group (48.00 MiB)!
For thin pool auto extension activation/thin_pool_autoextend_threshold should be below 100.
Logical volume "install-data-disk1" created.
Feb 25 06:31:53.879: Formatting Disk1 (/dev/main-xr-vg/install-data-disk1)
umount: /dev/main-xr-vg/install-data-disk1: not mounted
umount: /dev/sda1: not mounted
umount: /dev/sda2: not mounted
Feb 25 06:31:53.963: Not formatting Disaster Recovery partition
Feb 25 06:31:53.965: Mounting partitions
[ 12.596306] EXT4-fs (sda2): error loading journal
mount: wrong fs type, bad option, bad superblock on /dev/sda2,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
Cannot mount '/mnt/disk///mnt/dr_part'
Feb 25 06:31:54.301: Setup repo for ISO boot (/mnt/disk/)
Feb 25 06:31:54.303: Starting bootstrap for an ISO system. Root mount: /mnt/disk/
Feb 25 06:31:54.307: Populating RPM repository with RPMs from the ISO
Feb 25 06:32:07.942: Creating internal repository at /mnt/disk//var/opt/cisco/iosxr/install/mirror/iosxr_install_internal_repo/
Feb 25 06:32:12.328: Dumping rpm cert into file
Feb 25 06:32:12.330: Dumping RPM Cert into file /mnt/disk//certs
Feb 25 06:32:12.419: RPM Release Cert installed
Feb 25 06:32:14.028: Copying files into the mirror at /mnt/disk//var/opt/cisco/iosxr/install/mirror/
Feb 25 06:32:14.034: Bootstrap for an ISO system done
Preparing IMA...
Searching for IMA trusted keyring
->IMA trusted keyring found
Importing IMA x509 certificate into IMA keyring
->IMA certificate found: /etc/keys/dbCisco-3.der (RELEASE)
->Certificate imported into IMA keyring
Feb 25 06:32:16.991: Install targets (/mnt/disk/:RP:8201)
Feb 25 06:32:16.993: Install targets
Feb 25 06:32:16.995: Install Targets
Feb 25 06:32:16.997: Performing preparation prior to installing RPMs
Feb 25 06:32:17.012: Preparing IMA labeling environment
Announced that card is performing an image installation step: Installing IMA tools
Announced that card is performing an image installation step: Installing IMA tools done
Feb 25 06:32:21.976: Installing RPMs
Announced that card is performing an image installation step: Installing systemd and card-pid
Announced that card is performing an image installation step: Installing all remaining packages
Announced that card is performing an image installation step: Installing all remaining packages done
Feb 25 06:35:01.445: Performing post-install scripts after installing RPMs
Feb 25 06:35:01.448: Running post-install scripts
Feb 25 06:35:01.534: Running XR post-install scripts
enabling systemd service ds
Created symlink /mnt/disk/etc/systemd/system/ios-xr.target.requires/ds.service → /etc/systemd/system/ds.service.
enabling systemd service xr_startup
Created symlink /mnt/disk/etc/systemd/system/ios-xr.target.requires/xr_startup.service → /etc/systemd/system/xr_startup.service.
enabling systemd service xr-install
Created symlink /mnt/disk/etc/systemd/system/ios-xr.target.requires/xr-install.service → /etc/systemd/system/xr-install.service.
enabling systemd service lighttpd
Created symlink /mnt/disk/etc/systemd/system/iso-xr.target.wants/lighttpd.service → /etc/systemd/system/lighttpd.service.
enabling systemd service xr_kdump
Created symlink /mnt/disk/etc/systemd/system/multi-user.target.wants/xr_kdump.service → /etc/systemd/system/xr_kdump.service.
enabling systemd service xr_cgroups
Created symlink /mnt/disk/etc/systemd/system/ios-xr.target.requires/xr_cgroups.service → /etc/systemd/system/xr_cgroups.service.
enabling systemd service var_log_copier
Created symlink /mnt/disk/etc/systemd/system/sysinit.target.wants/var_log_copier.service → /etc/systemd/system/var_log_copier.service.
enabling systemd service fstrim
Created symlink /mnt/disk/etc/systemd/system/ios-xr.target.wants/fstrim.service → /etc/systemd/system/fstrim.service.
enabling systemd timer fstrim
Created symlink /mnt/disk/etc/systemd/system/timers.target.wants/fstrim.timer → /etc/systemd/system/fstrim.timer.
Feb 25 06:35:08.112: Install bootloader (/mnt/disk/::RP)
cp /mnt/disk//boot/grub2-secure/bootx64.efi /mnt/disk//boot/efi/EFI/BOOT/bootx64.efi
Feb 25 06:35:08.355: Prepare switch root (/mnt/disk/)
Feb 25 06:35:08.357: Attempting PD prepare switch root
Feb 25 06:35:08.361: Succeeded PD prepare switch root
Feb 25 06:35:09.112: Syncing during switch root
Feb 25 06:35:12.754: Attempting to notify PD reimage done
Feb 25 06:35:13.351: Succeeded to notify PD reimage done
Feb 25 06:35:13.353: Attempting to stop punching workdog
/usr/local/etc/fpga-functions: line 713: 506 Terminated /usr/local/etc/punch-wd.sh
Stage2 control register configured to 0x01900001
Stage1 control register configured to 0x15180011
Feb 25 06:35:13.410: Succeeded to stop punching workdog
Feb 25 06:35:13.412: Clearing DNF makecache info
Feb 25 06:35:13.415: Switching to new root filesystem (/mnt/disk/:)
Feb 25 06:35:13.420: boot = /mnt/disk/, root = , console=ttyS0,115200 boardtype=RP platform=spitfire quiet rootflags=i_version ima_appraise=log ciscoima leaba_svn=1.6.2.4 bigphysarea=10M noissu pci=hpmemsize=0M,hpiosize=0M crashkernel=256M fsck.repair=yes fsck.mode=force intremap=off page_poison=on slab_nomerge vsyscall=none
Feb 25 06:35:13.424: Clearing Boot Option to boot from disk
Boot option reg: 0x00000000
[ 214.584274] kexec_core: Starting new kernel
[ 1.258735] Created proc for bigphysarea
Reading all physical volumes. This may take a while...
Found volume group "main-xr-vg" using metadata type lvm2
8 logical volume(s) in volume group "main-xr-vg" now active
8 logical volume(s) in volume group "main-xr-vg" now active
8 logical volume(s) in volume group "main-xr-vg" now active
Overriding bzImage
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Boot: 24/61184 files (4.2% non-contiguous), 38149/244736 blocks
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
Disk1: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Disk1: 11/3407872 files (0.0% non-contiguous), 259923/13612032 blocks
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
Docker: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Docker: 11/378256 files (0.0% non-contiguous), 59477/1512448 blocks
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
Log: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (1156200, counted=1155999).
Fix? yes
Free inodes count wrong (303093, counted=303081).
Fix? yes
Log: ***** FILE SYSTEM WAS MODIFIED *****
Log: 23/303104 files (0.0% non-contiguous), 54369/1210368 blocks
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
Scratch: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (874838, counted=874836).
Fix? yes
Free inodes count wrong (227125, counted=227123).
Fix? yes
Scratch: ***** FILE SYSTEM WAS MODIFIED *****
Scratch: 13/227136 files (0.0% non-contiguous), 32428/907264 blocks
fsck from util-linux 2.28.1
e2fsck 1.43 (17-May-2016)
ThinXR: recovering journal
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (11863675, counted=10781100).
Fix? yes
Free inodes count wrong (3025109, counted=2975795).
Fix? yes
ThinXR: ***** FILE SYSTEM WAS MODIFIED *****
ThinXR: 49325/3025120 files (0.3% non-contiguous), 1318484/12099584 blocks
Invoke selinux initialization...
Enable selinux to relabel filesystem from initramfs
Checking SELinux security contexts:
* First booting, filesystem will be relabeled...