How to Install Indigo on the new Pica8 Software Images for 3290 and 3780
If you've received a recent 3290 or 3780, you'll find that the instructions for installing Indigo no longer work. The reason is that the software image on these platforms has changed significantly. Overall these are very positive changes, but until we're able to fully integrate with that environment, here are a few notes for upgrading to Indigo.
These notes are for the 3780; the 3290 should be similar, but we'll have updates on that soon.
The main thing that has changed is that the CF card which ships in these platforms have become a "live root filesystem". That is, you boot from the CF card just like it was a startup disk in a server. Previously, the root FS was stored as a compressed file in a small flash (and then on the CF card). We will be porting Indigo this environment if we get a code drop from Pica8.
Fortunately, you can still boot the old way and the boot command remains in the boot monitor. However, you must prepare the CF card carefully or things will get ugly when you try to boot to Indigo. Here are the steps. You will need to have the Indigo image, uInitrd2m. You can get this from the Indigo download page at http://indigo.openflowhub.org/display/Indigo/Indigo+-+Download+Page
- Connect the serial port of the switch
- Boot the system; do not interrupt at the boot loader
- You will get a menu with 4 options (Xorplus, OpenFlow, System shell, boot editor). Select 3, System shell.
- Configure eth0 for your network; for example, 'ifconfig eth0 192.168.2.18'
- You may need to configure a default route with 'route add default gw 192.168.2.1'
- Copy the uInitrd2m to /. I use tftp, but scp might also work. For example, if your tftp server is at 192.168.2.1: 'cd /; tftp -r uInitrd2m -g 192.168.2.1'
- Link the two files LB8.dtb (or LB9A.dtb for the 3290) and uImage in /boot to /: 'cd /; ln -s boot/LB8.dtb .; ln -s boot/uImage .'
- IMPORTANT: create the local directory and sysenv: 'mkdir /local; touch /local/sysenv'
- Reboot and interrupt the boot loader by hitting a key during the countdown.
- You can set Indigo as the default boot image by typing "setenv boot 'run cfcard_bootcmd'" and "saveenv"; or you can leave the Pica8 as the default and run Indigo explicitly with "run cfcard_bootcmd"
- Enter the CLI ('cli') and configure the switch IP address, gateway, netmask, hostname, the controller address and TCP port. It's best to reboot at this point to make sure it's all set correctly.
Please post questions or additional recommendations to this forum.
Last edited by dtalayco; 04-09-2012 at 05:01 AM.
I was following this tutorial:
It says put the files in cf_card folder. But there was no cf_card folder in our switch. In your post, I understand that we have to put the files in root folder when we have shell access.
Ok I did that part. At 10th step of your guide, it does not do anything.
Then I print the sysenv variables using printenv. There is bootcmd variable which is set to 'run cfcard_bootcmd2'
Then I type setenv bootcmd 'run cfcard_bootcmd' and then saveenv.
After that I reboot the switch and it worked like a charm.
Thanks for letting us know this worked.
I'm actually facing the same problem as tasomaniac. I set the bootcmd to 'run cfcard_bootcmd' and one more step:ln -s boot/uInitrd2m. Then after reboot, it shows the shell line like "indigo-unknown: ". Then I can 'ls' and see all the folders including cf_card.
However, I still can't go to the web UI or use the CLI.
Anything I missed?
Just need to configure eth0 to 192.168.1.1 after rebooting. Then I can go to web UI and CLI.
Thanks for letting us know. We'll update the documentation.
Passing VLAN tags along with the PACKET_INs worked after I upgraded to the said version of the image. Thanks!!