Over the past several years, there’s been an emerging trend in the networking industry that has been heading away from physical infrastructure and towards virtual/cloud environments. As a result, open source router software has begun to shift the tides, challenging the traditional networking equipment deployed in most current data centers. The most popular advancement in this realm has been the release of the open source CloudRouter Project, which was formed as a collaborative effort between CloudBees, Cloudius Systems, IIX, Nginx and the OpenDaylight Project.
This open source router project developed as part of an internal need that cloud service providers had for high-quality SDN and router distribution. What it looks to do is reduce the cost of networking by replacing proprietary routers and switches based on custom ASIC processors with software that runs on standard x86 servers. And while the project is still relatively young, it’s having a clear impact in the market.
SDN, CloudRouter and Cisco ACI
The last several years have seen exponential advancement in the development of software to support open networking, with the CloudRouter Project now allowing for network equipment to be managed by external devices such as commodity servers. The benefits of this means that it will be cheaper and easier to build and manage large-scale networks.
While the CloudRouter Project only recently emerged on the scene, it marks a clear shift in the network infrastructure industry. This shift is most evident when looking at Cisco’s unveiling of their own approach to programming the network known as Application Centric Infrastructure. They’ve been developing this new ACI approach after acquiring Insieme Networks, an SDN-focused startup founded by former Cisco execs.
Their ACI program hopes to reduce the time it takes to provision, change or remove applications, using a new Nexus 9000 switch. This new switch is the key building block for Cisco’s ACI solution, enabling the transition to ACI-mode of NX-OS with a software upgrade and the addition of a controller. Cisco claims that “unlike traditional SDN controllers, it operates independently of switch data and control planes, allowing the network to respond to endpoint changes even when the APIC is offline.” They hope that this flexibility in how their application networks are defined will help them to to rival the current advancements in SDN.
And while it’s unknown exactly what effect either Cisco’s ACI solution or the CloudRouter Project will have in the near future, what is clear from all of this is that Cisco is definitely feeling threatened by this new trend in cloud-based routers, which can support the argument that the trend is here to stay.
Creating a Bootable USB CloudRouter
As part of the architecture, CloudRouter was built with flexibility in mind, supporting multiple distribution formats for both Fedora-based and CentOS-based images, including:
- Live CD/DVD
- Virtual images in both .raw and .vmdk formats
- Amazon EC2 HVM AMIs
- Docker containers
- OSv images
- rkt compatible containers.
CloudRouter is engineered to run on private and public cloud platforms and can be installed at scale with a fully-automated configuration system. Using a Fedora-based image model as an example, below we’ll give you a run through on how to begin creating it, with more detailed instructions here.
First, you must have a clean USB drive with at least 4GB of storage space and a computer that allows USB-booting, or a suitable virtual machine.. Then you can go to their online respository to download a CloudRouter live image.
Once you’ve done that, you must plug in your USB and open your command line with the filepath being:
Then you can find the name of your USB device by running the lsblk command:
In the example above, the device is called sdb and the device is unmounted. If yours is mounted, use the following command to undo it: umount /dev/sdb.
Once you have the download location, device location and your device is unmounted, you can run the dd command:
sudo dd if=~~/Home/Downloads/CloudRouter-live-2.0-fedora.iso of=/dev/sdb
Depending on available RAM and the image size, it might take some time to run the dd utility, but make sure not to interrupt the process since it works silently. Once it is finished you will see the following output:
Your USB image is now ready, with the pre-configured username cloudrouter and password CloudRouter.
The CloudRouter Project could be a major disruptive force in the networking infrastructure market, especially with the new features it provides. It was designed with minimal resource consumption in mind, allowing you to deploy it faster. The initial community release is under 1GB, which even includes a full OpenDaylight distribution. It was also built to be container-ready, including images for multiple container technologies to help scale up to meet high demand traffic. Its standard failover and synchronization mechanisms also ensure high availability and system redundancy to keep your network running at accelerated speeds.
In addition, CloudRouter was also designed with security in mind, allowing secure network access to remote users via SSL-based OpenVPN or L2TP over IPSec VPN functionality. It also contains a several security monitoring tools, including FastNetMon for DDoS and DOS detection and analysis, and BGPstream for analysis. There are also features that allow for logging and reporting diagnostic information with SNMP, Netflow and Syslog. Their integrated network protocol analyzer also lets you see what’s happening on your network at a microscopic level.
The transition to cloud-based infrastructure across the networking market will take time, but as more application workloads make the move into the cloud, service providers want to reduce networking costs with a simpler way to offer customers network resources that can scale up and down. Because of this, the CloudRouter Project is definetly ahead of the pack, and it will be interesting to see how far their software will extend over the coming years.