Month: October 2012

  • Installing an Olive on VirtualBox

    Although it exists in many other places, I’ve not found a comprehensive set of instructions for installing JunOS 11.4 under VirtualBox that actually works. As I found, It isn’t too difficult, and only took me a day or so.
    You’ll need to create a FreeBSD machine in VirtualBox with 1Gb of RAM and 5Gb of disk space. Select one or more network interfaces as the Intel PRO/1000 MT Desktop adapter. If you’re running on a UNIX system, additionally redirect the COM1 serial port to a host pipe called /tmp/com1. Use the command socat /tmp/com - to show the output from the serial console, which is useful after booting the Olive for the first time.

    Installing FreeBSD

    • Download the FreeBSD 4.4 mini ISO from ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/4.4/4.4-mini.iso
    • Create a FreeBSD machine with 1Gb of RAM. Create a VDI startup disk (either dynamically allocated or fixed size) of 4Gb
    • Edit the machine settings and enable network adapters as Intel PRO/1000 MT Desktop (82540EM) adapters. Although FreeBSD 4.4 won’t support these, JunOS 11.4 will.
    • Attach the ISO image to the CD/DVD drive in the machine, and boot it.
    • When FreeBSD boots, select ‘Skip kernel configuration and continue with installation’.
    • At the /stand/sysinstall menu, select a Standard installation.
    • At the ‘FDISK Partition Editor’ screen, delete any existing slices and create a single FreeBSD slice covering the entire disk by pressing ‘A’. Press ‘Q’ to finish – changes are automatically saved.
    • At the ‘Install Boot Manager for drive ad0?’ page, select ‘Standard’ so as not to install a boot manager.
    • At the ‘FreeBSD Disklabel Editor’ screen, create partitions as follows:
      • 1G filesystem mounted on /
      • 512M swap partition
      • 512M filesystem mounted on /config
      • Remaining space in a filesystem mounted on /var
    • Press ‘Q’ to finish – changes are automatically saved.
    • At the ‘Choose Distributions’ page, select ‘X’ to exit’.
    • At the ‘Choose Installation Media’ page, select ‘Install from a FreeBSD CD/DVD’.
    • The disk will now be partitioned, filesystems created and FreeBSD installed.
    • After installation, the following questions will appear. Answer ‘No’ to each:
      • Would you like to configure any Ethernet or SLIP/PPP network devices?
      • Do you want this machine to function as a network gateway?
      • Do you want to configure inetd and simple internet services?
      • Do you want to have anonymous FTP access to this machine?
      • Do you want to configure this machine as an NFS server?
      • Do you want to configure this machine as an NFS client?
      • Do you want to select a default security profile for this host?
      • Would you like to customise your system console settings?
    • Answer ‘Yes’ to “Would you like to set this machine’s time zone now?”. Select ‘No’ to “Is this machine’s CMOS clock set to UTC?”, then select ‘8 – Europe’, ’42 – United Kingdom’ then ‘1 – Great Britain’. Answer ‘Yes’ to “Does the abbreviation ‘BST’ look reasonable?”
    • Answer ‘No’ to “Would you like to enable Linux binary compatibility?”
    • Answer ‘No’ to “Does this system have a USB mouse attached to it?”, then select ‘Exit’ at the “Please configure your mouse” menu
    • Answer ‘No’ to the question regarding browsing the FreeBSD package collection.
    • Answer ‘No’ to the question regarding adding initial user accounts.
    • Set a password for the ‘root’ user.
    • Answer ‘No’ to the question regarding the last chance to set options.
    • Select ‘X’ to exit installation, detach the ISO image and select ‘Yes’ to the “Are you sure you wish to exit?” question.
    • The virtual machine will now restart.

    Creating a JunOS installation image

    Download junos-olive-patch.sh and run it against a standard JunOS installation image, for example:
    user@host:~$ ./junos-olive-patch.sh jinstall-11.4R2.14-domestic.tgz
    This will unpack and patch the installation file, replacing ‘checkpic’ in the pkgtools archive with a symbolic link to /bin/true so the package will install on an Olive.
    To get this installation package on to VirtualBox, make it in to an ISO file using mkisofs:
    user@host:~$ mkisofs jinstall-11.4R2.14-domestic.tgz > olive.iso
    Attach the ISO image to the Olive in VirtualBox, then mount the ISO file on FreeBSD by typing mount /cdrom. Install the package by running pkg_add -f jinstall-11.4R2.14-domestic.tgz.
    Reboot, and wait for the BTX loader screen to disappear – this may take several minutes. If you’re using socat to monitor the output of the console, you’ll see JunOS being installed.

  • Installing WebSphere MQ 7.5 on Ubuntu 12.04LTS

    An item on my mental To Do list for some time has been getting WebSphere MQ installed on Ubuntu. I don’t use it in a production environment, therefore an IBM PartnerWorld Software Access agreement gets me the software for a year, and a virtual machine with Ubuntu circumvents the need to buy Red Hat Enterprise Linux.
    With many things I do that could potentially turn out complicated or non-trivial, I document the entire process. I’m assuming you’re running a 64-bit version of Ubuntu 12.04LTS at this point, and that you’ve also read Quick Beginnings for Linux on IBM’s site.
    First, install the ‘rpm’, ‘pax’ and ‘default-jre’ packages. IBM distribute MQ as a set of RPMs, and I decided to install these rather than rebuild them as .deb files.
    Next, create /etc/sysctl.d/50-webspheremq.conf with the following:
    kernel.msgmni=1024
    kernel.shmmni=4096
    kernel.shmmax=73834496
    kernel.shmall=2097152
    kernel.sem=500 256000 250 1024
    fs.file-max=32768
    net.ipv4.tcp_keepalive_time=500

    Make these changes live by running sudo sysctl -p.
    Run sudo ./mqlicence.sh, read and agree to the licence.
    ‘crtmqpmg’ expects to find ‘pax’ in /usr/bin, so create symbolic link to ‘pax’ by running sudo ln -s /bin/pax /usr/bin/pax, then create /usr/lib64 using sudo mkdir /usr/lib64 as the installation process will want to write files in there.
    Create a set of MQ packages by running ./crtmqpkg $ID, where $ID is an installation identifier, such as ‘dev’ or ‘prod’. This may take some time. When it’s finished, change to /var/tmp/mq_rpms/$ARCH and install the following RPMs using the command sudo rpm -ivh --nodeps --force-debian:

    • MQSeriesRunTime
    • MQSeriesServer
    • MQSeriesSDK
    • MQSeriesClient
    • MQSeriesJava
    • MQSeriesSamples
    • MQSeriesGSKit
    • MQSeriesMan

    Set this MQ installation as default using sudo /opt/mqm/bin/setmqinst -i -p /opt/mqm, then run dspmqver to verify the installation is correct.
    Finally, add your user in to the ‘mqm’ group by running sudo addgroup $USER mqm. Log out and log in for these changes to take effect.