It's been a long time since I've taken a run at getting Olive up and working. I wanted to take another stab at it and document how to get a working Olive installation using the latest JUNOS code. I also wanted to document how to get Olive up inside VMware ESXi since I hadn't actually done that before.
Through some experimentation and reading of the em(4) man page I found that FreeBSD 4.11 is the only 4.x release that supports the Intel 82545EM chipset. This is the chipset that is emulated by VMware (at least under ESXi 4.1) when choosing the e1000 network adapter type. If you install something older than 4.11 you will not have any network interfaces that are usable by Olive.
Once the VM was created I connected its CD/DVD drive to the FreeBSD ISO I downloaded and powered on the VM. I ran through the FreeBSD installation, choosing the "standard" installation. I told fdisk to use the entire disk (option A) and laid out my disklabels like so:
The /var disklabel needs to be big enough to hold future software update bundles, core dumps, log files, etc. On my fresh install it's sitting at just under 700M used. If the JUNOS installer doesn't like your disk layout, it seems it'll tweak it to meet its needs. It also doesn't matter if you install FreeBSD on a UFS2 or softupdate-enabled disklabel as JUNOS will reformat it for UFS.
Finally, I chose the "user" distribution, waited for the files to copy and then said "no" to all of the questions the installer asks afterward (things like, install ports collection? enable NTP? setup the network? etc). After rebooting from the hard drive, I was ready to install JUNOS.
Ok, as I wrote earlier, I downloaded the jinstall package from Juniper. This is basically a FreeBSD binary package that is installed with pkg_add(1). However, this package expects it's being installed on true Juniper hardware so some of the checks it does during installation fail under generic FreeBSD.
This comes from the +INSTALL file because, as the first line in the error says, there is no hw.re.model sysctl oid in FreeBSD. I fixed this by uncompressing the jinstall-X-domestic-signed.tgz file and editing the +INSTALL file by replacing the sysctl line in the check_arch_compatibility() function with a line that assigns a dummy value to re_name.
Uncompress jinstall-X-domestic, edit +INSTALL and +REQUIRE and fix re_name. But before bundling it all back up, replace the well documented "checkpic" file which lives inside pkgtools.tgz which lives inside jinstall-X-domestic.tgz which lives inside jinstall-X-domestic-signed.tgz. Ugh! So the whole picture really looks like this:
Once I made these changes, I was almost ready to bundle all the tgz files back up but first the signature and hash files needed to be removed from jinstall-X-domestic-signed.tgz because none of them will match up now that changes have been made inside the packages.
The .exe extension on a filename indicates an executable file. Executable files may, in some cases, harm your computer. Therefore, please read below to decide for yourself whether the jinstall.exe on your computer is a Trojan that you should remove, or whether it is a file belonging to the Windows operating system or to a trusted application.
The process known as Java (version 2 Platform Standard Edition binary) belongs to software Java (version 2 Platform Standard Edition 5.0 Update 6, 2 Platform Standard Edition) by Sun Microsystems (www.sun.com).
Description: Jinstall.exe is not essential for the Windows OS and causes relatively few problems. The jinstall.exe file is located in a subfolder of "C:\Documents and Settings".Known file sizes on Windows 8/7/XP are 237,681 bytes (66% of all occurrences) or 221,294 bytes.
The program has no visible window. It is not a Windows system file. The application uses ports to connect to or from a LAN or the Internet.Therefore the technical security rating is 60% dangerous.
Important: Some malware camouflages itself as jinstall.exe. Therefore, you should check the jinstall.exe process on your PC to see if it is a threat. We recommend Security Task Manager for verifying your computer's security. This was one of the Top Download Picks of The Washington Post and PC World.
A clean and tidy computer is the key requirement for avoiding problems with jinstall. This means running a scan for malware, cleaning your hard drive using cleanmgr and sfc /scannow, uninstalling programs that you no longer need, checking for Autostart programs (using msconfig) and enabling Windows' Automatic Update. Always remember to perform periodic backups, or at least to set restore points.
Should you experience an actual problem, try to recall the last thing you did, or the last thing you installed before the problem appeared for the first time. Use the resmon command to identify the processes that are causing your problem. Even for serious problems, rather than reinstalling Windows, you are better off doing a repair of your installation, or in the case of Windows 8, executing the DISM.exe /Online /Cleanup-image /Restorehealth command. This allows you to repair the operating system without losing data.
To help you analyze the jinstall.exe process on your computer, the following programs have proven to be helpful: Security Task Manager displays all running Windows tasks, including embedded hidden processes, such as keyboard and browser monitoring or Autostart entries. A unique security risk rating indicates the likelihood of the process being potential spyware, malware or a Trojan. Malwarebytes Anti-Malware detects and removes sleeping spyware, adware, Trojans, keyloggers, malware and trackers from your hard drive.
The site is secure.
The ensures that you are connecting to the official website and that any information you provide is encrypted and transmitted securely.
To download the FDA eSubmitter software, click on the following link. Save the installation zip file to your computer and extract the jinstall.exe file. Double-click the jinstall.exe file to run the installation. Follow the instructions provided in the installation wizard.
Before installation, uninstall any other versions of the eSubmitter software. If you do not have a prior version of eSubmitter, proceed to installing the current version of FDA eSubmitter.
To install the latest version of the FDA eSubmitter software, navigate to the software's download directory and double-click on the jinstall.exe. Following the instructions of the installer, the FDA eSubmitter software will be installed locally.
If you're using a proxy server to connect to the Internet, then you will need to change the application's properties file (eSubmission.properties) to reference the server. See your System Administrator for help in changing the properties file. The properties file is located in the application's JExpress subdirectory (Program Files\eSubJExpress).
The first step is obtaining a copy of JunOS. I recommend using 9.4 (jinstall-9.4R1.8-export-signed.tgz) or higher as earlier versions had issues with multicast working properly under vmware. Do not ask for me for copies of JunOS Since JunOS runs top of FreeBSD, you will also need to download the FreeBSD 4.11 mini .isofrom the FreeBSD FTP site.
Ok, now that we have a working FreeBSD installation, we need to copy our jinstall image over using the account we created. Use ifconfig to figure out your DHCP address and scp the file over.. go ahead and put it in /var/tmp
In order to install JunOS, we have to circumvent some things.. Juniper has installed a binary in JunOS packages since version 7.4 called checkpic. This binary will fail during install and and interrupt the process. Extracting the package and replacing this binary with /usr/bin/true and repackaging fixes this issue.
After it has finished, go ahead and issue a normal reboot command. Upon reboot, you may think the VM is hung, but its just fine. It is no longer outputting kernel messages to the screen, behind the scenes the JunOS install is completing and will reboot when finished. You will be able to login in a few minutes.
VMware Server Users have had some issues with the secondary install (1st reboot after jinstall) hanging on the following line.
ad0: 32768MB at ata0-master UDMA33
The simple fix for this is to edit the appropriate VMware configuration file ( whatever.vmx ) and change the line that reads.
If the software versions differ, upload the proper Junos version to the redundant routing-engine. Make sure that the services configured under [ system services ] as well as the configured firewall filter will allow you to SFTP or FTP to the device. When you are done uploading the proper Junos, you can log in to the redundant RE and initiate the software upgrade by giving the 'request system software add jinstall-12.3R8.7-domestic-signed.tgz re1 reboot' command.
With GRES enabled, what the backup RE will do is preserve interface and kernel information. What the backup RE will not do with GRES enabled is preserve protocol information. When you enable GRES, the backup RE will not start the RPD. So as soon as there is a switchover, the new master RE will need to restart the RPD.
Another high-availability feature Junos offers is Unified In-Service Software Upgrade (ISSU). This is a feature that does not require any configuration. What it does need is a dual RE, running the same software version, with both GRES and NSR enabled. Unfortunately, some of the HA features are not (yet) supported for logical systems. These include NSR/NSB and ISSU.
Anyway, with this configuration I enabled GRES and NSR. Then, I upgraded the Juniper MX480 from 12.3 to 13.3. It was running OSPF with a neighboring QFX5100 and the MX was continuously replying to a ping. During the upgrade of both RE's, not a single packet was lost and the OSPF adjacency remained up all the while.
Nice!