Installing Cisco CallManager 4.1(3) on a Cisco Content Router
Concept
After successfully installing Mandrake Linux on my Cisco CE560, I decided the next "logical" step was to attempt to install CallManager on my Cisco Content Router 4430 (CR4430). The hardware appears to be identical except for slightly different memory configuration and different hard drive configuration.
Hardware
The Cisco CR4430 has the following hardware characteristics:
Properly booting the Content Router
Unlike the Content Engine I worked with previously, my Content Router kept booting to flash for some reason. This happens to be a known bug, and there is a workaround for it. What you need to do is start pressing Ctrl-C soon after you turn it on, and keep pressing it over and over again until the BIOS screen comes up. Once there, press Tab once to select "Custom Configuration", then press Enter. Press Tab until the > cursor is next to "Custom boot device", then press the + key until "None" is selected. Press the Escape key to get back to the main menu, then Tab down to "Write to CMOS and Exit" and press Enter. The Content Router will lock up upon reboot, and you will have to manually power cycle it.
Creating Partitions
Since I previously had Linux loaded on my drive, I needed to wipe it out and set up a partition where I could install Windows 2000. I originally tried using FDISK from the Windows 98 Boot Disk, but since it is a menu based program, it didn't load correctly. Instead, I booted to the chntpw Floppy boot disks and created my partitions from there. When you boot the chntpw disk, you will see the boot loader begin to load. You will need to press Ctrl-C to stop it from booting with default parameters. Soon after, you should get a boot prompt. Enter:
Format and begin installation
Now that you (hopefully) have your partitions created, you will need to format your partition first. I simply ran:
Once Windows 2000 Server has been installed, setting up CallManager is somewhat similar to the steps found in the various guides available for the VMWare installation of CallManager. One problem has arose, however, which is the fact that you cannot install CallManager using Remote Desktop and I was not able to make any version of VNC to work correctly, all I see is a white screen from the VNC Client. The only remote control client I was able to get to work was Radmin, so I loaded the Radmin server on my Windows 2000 Server, and loaded the Radmin client on my desktop computer. I also imported the Registry keys needed to install the CallManager OS Updates, installed Microsoft Java and downloaded and extracted shutdown.exe into C:\utils. My CallManager is in an ISO image rather than on an actual CD, so I also installed Daemon Tools so that I could mount my ISO to install it.
After my final reboot, I logged in remotely via Radmin and I then loaded the CallManager OS Updates. I first loaded win-OS-Upgrade-K9.2000-4-5a, then I loaded win-OS-Upgrade-K9.2000-4-5b-sr4. During the multiple reboots, I would keep a continuous ping running to the server so I would know when it was back up. After about 15-20 successful pings, I would reconnect via Radmin.
After the OS Updates, I then installed CallManager. The Version I had was 4.1(3). For some reason, the first reboot didn't seem to actually reboot the computer since my ping test never did come back, so I had to power cycle. After the installation was complete, I installed the CallManager 4.1(3) SR5d update.
Finally, I went into CallManager Service Activation and activated all of the services, and waited for the CPU and Memory resources to stablize.
After I had CallManager installed, everything was working perfectly. I was able to register my IP phones to the CallManager.
I had a second server just sitting around, this one designed for Windows, so I went ahead and installed Windows 2000 Server on it also and began installing Unity, for which there is a mile long list of requirements.
I went ahead and installed Internet Explorer 6, .NET Framework 1.1, NNTP, and MSMQ (both from Start->System->Control Panel->Add/Remove Programs->Windows Components).
Since I don't have access to an Active Directory machine, I was going to make this one into one, so I ran Dcpromo and made it into a domain controller.
After satisfying all of the requirements, I installed Unity using the Unity 4.1(1) CD Images from here.
After finally getting both boxes up and running, I was able to successfully integrate the two for my own complete IP PBX and VoiceMail system.
After successfully installing Mandrake Linux on my Cisco CE560, I decided the next "logical" step was to attempt to install CallManager on my Cisco Content Router 4430 (CR4430). The hardware appears to be identical except for slightly different memory configuration and different hard drive configuration.
Hardware
The Cisco CR4430 has the following hardware characteristics:
- Intel Pentium III 600 MHz
- 4x256 MB SDRAM
- Symbios sym53c8xx SCSI controller
- 1x18GB 80-pin Ultra3 LVD SCSI Hard Drive (my hard drive was bad, so I ended up using one of the 36GB drives from the CE560)
- Asiliant 69000 Video Adapter with 16-pin output header (pinout unknown) (Win2K sees this as a Chips and Technologies 69000)
- 2xIntel 82559 Ethernet Adapters (Windows sees these as Intel Pro/100B network adapters)
- RJ-45 Serial Console port at 9600,8,N,1
- Note: Can only boot from floppy or SCSI (or Flash)!
Preparation
In order to pull this off, I used the following items:
- Cisco Console cable
- A laptop with Windows using Hyperterminal
- Floppy Drive
- CD-ROM Drive
- Power Source for Floppy (I had an extra ATX power supply. Ground pins 14 and 15 together and then give it power. Normal disclaimers apply, i.e. this will cause the end of the world, etc. See this article for more info)
- Windows 2000 Server CD (which you will have to provide yourself)
- Windows 98 Boot Disk (which I found here, I used the Win 98 SE Custom, no Ramdrive)
- DHCP Server software (I used Tftpd32)
- CHNTPW Floppy boot disks. I don't think version matters much, I used bd050303 from here.
Initial Installation
To begin, I created an unattended installation answer file for Windows 2000 Server. You can either create one yourself, or you can use mine:
;SetupMgrTagNext, I downloaded the Win98 boot disk and wrote it to a floppy using WinImage. Save the answer file as "winnt.sif" on the Floppy drive. After much experimentation, I determined that the custom Win98 boot disk I used from the link above does not work correctly because it uses the name "banana" for the CD-ROM drive upon boot. Coincidentally, there is a file called "banana.ani" that will fail to copy during the Windows 2000 installation, and you will not be able to tell Windows to skip it. So, we will need to modify the boot disk and change the name "banana" to something that does not already exist on the Windows 2000 media. I chose "banx001" (no special meaning, I just pulled it out of the air). Edit "config.sys" on your floppy disk so that it looks something like this:
[Data]
AutoPartition=1
MsDosInitiated="0"
UnattendedInstall="Yes"
[Unattended]
UnattendMode=FullUnattended
OemSkipEula=Yes
OemPreinstall=No
TargetPath=\WINNT
DriverSigningPolicy=Ignore
[GuiUnattended]
AdminPassword=administrator
AutoLogon=Yes
AutoLogonCount=5
OEMSkipRegional=1
TimeZone=20
OemSkipWelcome=1
[UserData]
FullName=Name
OrgName=Organization
ComputerName=ce2kserver
ProductID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
[LicenseFilePrintData]
AutoMode=PerServer
AutoUsers=500
[Identification]
JoinWorkgroup=WORKGROUP
[Networking]
InstallDefaultComponents=Yes
[Components]
accessopt=Off
calc=Off
cdplayer=On
certsrv=Off
certsrv_client=Off
certsrv_server=Off
charmap=Off
chat=Off
cluster=Off
deskpaper=Off
dialer=Off
fp=Off
freecell=Off
hypertrm=On
iis_common=On
iisdbg=On
iis_doc=On
iis_ftp=Off
iis_htmla=On
iis_inetmgr=On
iis_nntp=Off
iis_nntp_docs=Off
iis_pwmgr=Off
iis_smtp=Off
iis_smtp_docs=Off
iis_www=On
indexsrv_system=Off
LicenseServer=Off
media_clips=Off
media_utopia=Off
minesweeper=Off
mousepoint=Off
mplay=Off
msmq=Off
mswordpad=On
netcis=On
netoc=On
objectpkg=Off
paint=On
pinball=Off
rec=On
reminst=Off
rstorage=Off
solitaire=Off
templates=Off
TSClients=On
TSEnable=On
vol=On
[NetOptionalComponents]
NETMONTOOLS=1
SNMP=1
DEVICE=HIMEM.SYS /testmem:offEdit "autoexec.bat" on your floppy disk so that it looks something like this:
FILES=30
BUFFERS=20
DEVICE=cd1.SYS /D:banx001
LASTDRIVE=Z
@echo offNext, acquire a Windows 2000 Server CD (Mine had Service Pack 4 already slipstreamed, I do not know if this is required or not. If you want to play it safe you should slipstream it in advance). After this, I attached my CD-ROM and Floppy drives to the respective headers on the motherboard (The IDE and Floppy cables I used were keyed, but the motherboard has all pins present on each connector, so I bent the pins over where the keyed spaces were), applied power to each, placed my Win98 boot disk in the floppy drive, and fired up the CR.
MSCDEX.EXE /D:banx001 /L:R
Properly booting the Content Router
Unlike the Content Engine I worked with previously, my Content Router kept booting to flash for some reason. This happens to be a known bug, and there is a workaround for it. What you need to do is start pressing Ctrl-C soon after you turn it on, and keep pressing it over and over again until the BIOS screen comes up. Once there, press Tab once to select "Custom Configuration", then press Enter. Press Tab until the > cursor is next to "Custom boot device", then press the + key until "None" is selected. Press the Escape key to get back to the main menu, then Tab down to "Write to CMOS and Exit" and press Enter. The Content Router will lock up upon reboot, and you will have to manually power cycle it.
Creating Partitions
Since I previously had Linux loaded on my drive, I needed to wipe it out and set up a partition where I could install Windows 2000. I originally tried using FDISK from the Windows 98 Boot Disk, but since it is a menu based program, it didn't load correctly. Instead, I booted to the chntpw Floppy boot disks and created my partitions from there. When you boot the chntpw disk, you will see the boot loader begin to load. You will need to press Ctrl-C to stop it from booting with default parameters. Soon after, you should get a boot prompt. Enter:
vmlinuz rw init=/linuxrc initrd=initrd.gz root=/dev/ram0 source=/dev/floppy/0 console=ttyS0,9600and press enter. Once the disk boots up, enter 'd' to detect hardware. You will be prompted to insert the driver disk. Insert the SCSI drivers disk and press Enter. Enter '0' for the floppy drive number. The SCSI controller should be detected and you should be dropped back to the main menu. Enter 'q' to quit and 'n' for no new run. This will put you at a shell prompt. Next, I ran the following sequence of commands:
fdisk /dev/discs/disc0/discFor some reason, the chntpw boot disk doesn't actually restart, so I manually power cycled and this time booted from the Windows 98 floppy. Now, after all of that, my CR booted to a DOS prompt, with the CD drive as R:.
d (Delete all partitions)
n (Create new partition)
p (Primary partition)
1 (Partition #1)
(I think I hit enter two or three times after this to accept the default start and end blocks)
t (Change partition type)
b (Change to FAT32)
a (Set active partition)
1 (Make 1st partition active)
w (Write partition table)
reboot
Format and begin installation
Now that you (hopefully) have your partitions created, you will need to format your partition first. I simply ran:
format /q /u /s c:Even though "/q" doesn't apply since the volume can't be quick formatted, and the "/s" really shouldn't matter since we don't need system files on the drive, I'm a creature of habit and I use them anyway. After the format, you will probably want to load smart drive (installation is slow enough, if you skip this step, it will really take a long time), then begin installation. To do this, follow these steps:
smartdrv 16384This will begin the Windows 2000 Server Installation. This will take quite a while. Also, keep in mind that you will have to remove the floppy disk, but don't remove it to early or else the server will not be able to load the winnt.sif file correctly. I actually left it in until I heard the CR start to boot from it again (you know how loud those floppies are). Then I killed the power, removed the disk and powered it up again. The best way to keep an eye on the installation is to start it and then keep an eye on your DHCP server. It took me about 20 minutes from when I started installation to when it first obtained an IP address. Once the Windows Server has obtained an IP address, start a continuous ping to that IP and watch as it goes up and down. You can also periodically try going to \\[ipaddress]\c$ to view the file structure. If you see $WIN_NT$.~BT and $WIN_NT$.~LS folders, it means the installion is not complete yet. Eventually, you will be able to Remote Desktop into the Server.
r:
cd i386
winnt /s:r:\i386 /u:a:\winnt.sif
Once Windows 2000 Server has been installed, setting up CallManager is somewhat similar to the steps found in the various guides available for the VMWare installation of CallManager. One problem has arose, however, which is the fact that you cannot install CallManager using Remote Desktop and I was not able to make any version of VNC to work correctly, all I see is a white screen from the VNC Client. The only remote control client I was able to get to work was Radmin, so I loaded the Radmin server on my Windows 2000 Server, and loaded the Radmin client on my desktop computer. I also imported the Registry keys needed to install the CallManager OS Updates, installed Microsoft Java and downloaded and extracted shutdown.exe into C:\utils. My CallManager is in an ISO image rather than on an actual CD, so I also installed Daemon Tools so that I could mount my ISO to install it.
After my final reboot, I logged in remotely via Radmin and I then loaded the CallManager OS Updates. I first loaded win-OS-Upgrade-K9.2000-4-5a, then I loaded win-OS-Upgrade-K9.2000-4-5b-sr4. During the multiple reboots, I would keep a continuous ping running to the server so I would know when it was back up. After about 15-20 successful pings, I would reconnect via Radmin.
After the OS Updates, I then installed CallManager. The Version I had was 4.1(3). For some reason, the first reboot didn't seem to actually reboot the computer since my ping test never did come back, so I had to power cycle. After the installation was complete, I installed the CallManager 4.1(3) SR5d update.
Finally, I went into CallManager Service Activation and activated all of the services, and waited for the CPU and Memory resources to stablize.
After I had CallManager installed, everything was working perfectly. I was able to register my IP phones to the CallManager.
I had a second server just sitting around, this one designed for Windows, so I went ahead and installed Windows 2000 Server on it also and began installing Unity, for which there is a mile long list of requirements.
I went ahead and installed Internet Explorer 6, .NET Framework 1.1, NNTP, and MSMQ (both from Start->System->Control Panel->Add/Remove Programs->Windows Components).
Since I don't have access to an Active Directory machine, I was going to make this one into one, so I ran Dcpromo and made it into a domain controller.
After satisfying all of the requirements, I installed Unity using the Unity 4.1(1) CD Images from here.
After finally getting both boxes up and running, I was able to successfully integrate the two for my own complete IP PBX and VoiceMail system.
Comments