ISE expanding the data partition

This article was found on the internet… I haven’t tried it.. but will consider it on a test copy of one of the ISE servers.  Our issue that the drives are too small and logs occasionally have to get cleared by a manual process till we have time to migrate to a new larger disk install (per Cisco TAC).  If it works on ISE 2.1 I’ll let you know!

(original article below)

I had an issue with my NFR version of ISE which has a small partition (65GB). This soon filled to beyond 70%, causing backups to fail. I’ve devised a non-destructive method to expand the size of ISE’s data partition to 200GB (Cisco’s recommendation).

In my case, I was keen not to lose the licensing & configurations.

Procedure below – in case it’s helpful to anyone else.

Note – I take no responsibility if you wreck your ISE installation. This requires a certain level of Linux expertise – so please take care.

General
The NFR version of ISE has a small partition size of approx 65GB. This quickly fills up to 70% causing backup jobs to fail. From this point, we’ll call the old (smaller) version of ISE the donor VM.

One solution is to simply create a new ISE installation and do a system restore from the last backup. The problem with this, is the licenses aren’t restored, or you may not have a recent backup file to work with.

Solution
The solution is to create a new ISE VM. We’ll call this the target VM with a large partition (200GB). Bring the target VM up to the same patch level as the donor VM. In my case, this is 1.2 patch 2. Don’t do any further configurations on the target VM.

At this point my donor VM has a permanent license for 20 nodes, but won’t backup and will soon fail given the disk consumption. The target VM has a 90 day trial license which isn’t helpful for our lab work.

At this point, power off both ISE VMs so we can work on their respective disks.

We need a Linux VM (e.g. Centos 6 – 64bit). We are going to attach the ISE VM disks to the Linux host and copy some data between the donor and target ISE disks.

The Linux VM also needs to be powered off to attach the ISE disks.

Use vSphere client to add two disks to the Linux VM – browse to the donor and target ISE VMs and bring in their respective disks. The donor is Disk 2 and the target is Disk 3.

Now boot up the Linux VM with its newly attached disks.

If we issue an fdisk -l we’ll see the Linux native disks and the two ISE disks, note the size differences between disk 2 (sdb) and disk 3 (sdc):

[root@centos6-64 ~]# fdisk -l

Disk /dev/sda: 17.2 GB, 17179869184 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 1913 15360000 83 Linux
/dev/sda2 1913 2089 1416192 82 Linux swap / Solaris

Disk /dev/sdb: 68.7 GB, 68719476736 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 63 505983+ 83 Linux
/dev/sdb2 64 75 96390 83 Linux
/dev/sdb3 76 839 6136830 83 Linux
/dev/sdb4 840 8349 60324075 85 Linux extended
/dev/sdb5 840 1858 8185117 82 Linux swap / Solaris
/dev/sdb6 1859 1985 1020127 83 Linux
/dev/sdb7 1986 8349 51118829+ 83 Linux

Disk /dev/sdc: 214.7 GB, 214748364800 bytes

Device Boot Start End Blocks Id System
/dev/sdc1 * 1 63 505983+ 83 Linux
/dev/sdc2 64 76 96390 83 Linux
Partition 2 does not end on cylinder boundary.
/dev/sdc3 76 1988 15358140 83 Linux
/dev/sdc4 1988 26104 193711873+ 85 Linux extended
/dev/sdc5 1988 3007 8185117+ 82 Linux swap / Solaris
/dev/sdc6 3007 3261 2040255 83 Linux
/dev/sdc7 3261 26104 183486397+ 83 Linux

On both disks, the first partition (sdb1 and sdc1) is the boot partition – we aren’t going to make any changes to this.

We need to copy data from partitions 2, 3, 6 & 7 from the donor to the target. Partition 7 is the most important – that’s where our data, license and configurations are.

Now let’s create some mount points so we can access the data on the ISE disks. On our Linux VM use the following:

cd /mnt
mkdir sdb2 sdb3 sdb6 sdb7
mkdir sdc2 sdc3 sdc6 sdc7

mount /dev/sdb2 sdb2
mount /dev/sdb3 sdb3
mount /dev/sdb6 sdb6
mount /dev/sdb7 sdb7

mount /dev/sdc2 sdc2
mount /dev/sdc3 sdc3
mount /dev/sdc6 sdc6
mount /dev/sdc7 sdc7

We can delete all the data on the target VM since we don’t need these files on the above partitions. However, as mentioned above, we need to retain the 1st partition which is /boot. In our case, this is /dev/sdc1 – leave this alone – any messing with this and your new target VM won’t boot.

BECARFUL WITH THE FOLLOWING – ENSURE YOU’RE NOT REMOVING DATA FROM YOUR DONOR DISK.

rm –rf sdc2/*
rm –rf sdc3/*
rm -rf sdc6/*
rm –rf sdc7/*

Now check the partitions are empty on the target. If any files remain, delete manually, for example:

[root@centos6-64 sdc6]# ls -al
total 28
drwxrwxrwt. 4 root root 4096 Nov 3 12:31 .
drwxr-xr-x. 12 root root 4096 Nov 3 12:28 ..
drwxrwxrwt 2 root root 4096 Nov 2 21:39 .ICE-unix
drwxrwxrwt 2 root root 4096 Nov 2 21:20 .oracle
-rw-r–r–. 1 440 200 1379 Nov 2 21:05 .tt_4024

[root@centos6-64 sdc6]# rm -rf .ICE-unix/ .oracle/ .tt_4024

Once the target partitions are empty, we’re ready to copy the files from our donor ISE disk. Do this one partition at a time by changing directory into the donor partition and using cpio to copy the files from the donor to the target disk.

cd sdb2/
find . -xdev | cpio -pm /mnt/sdc2

cd ../sdb3
find . -xdev | cpio -pm /mnt/sdc3

cd ../sdb6
find . -xdev | cpio -pm /mnt/sdc6

cd ../sdb7
find . -xdev | cpio -pm /mnt/sdc7

That’s it!! Now power-off the Linux VM and remove the ISE disks from its inventory.

Boot up the new ISE VM. Everything should be intact: license, configurations, but now with plenty of free disk space.

ise1/admin# sh disks

disk repository: 2% used (170852 of 14877092)

Internal filesystems:
/ : 20% used ( 33423732 of 177740076)
/tmp : 2% used ( 35928 of 1976268)
/storedconfig : 7% used ( 5678 of 93327)
/boot : 5% used ( 19656 of 489956)
/dev/shm : 0% used ( 0 of 1956288)
all internal filesystems have sufficient free space

ise1/admin# show udi

SPID: ISE-VM-K9
VPID: V01
Serial: FxxxxxxxJ

Leave a Comment