Mininet is a Linux-based network emulator which enables the creation of a realistic virtual network, running real kernel, switch and application code, on a single machine (VM, cloud or native), in seconds, with a single command. It is a great way to develop, share, prototype, research, teach and experiment with OpenFlow and Software-Defined Networking systems.
This post describes one way to configure a computer to centrally manage an IT training lab using Ansible. The control centre computer could be physical or virtual, headless or not, a laptop, a desktop or anything else: the only real requirements are that the device can bring up a CLI (command line interface) in a terminal, that the vi text editor is installed, and that normal SSH infrastructure is in place.
It is no secret that most corporate and industrial computing resources in the world today have now been migrated from physical infrastructure to a combination of public, private and hybrid cloud environments. A similar trend is now under way in the networking space, with network control logic shifting from proprietary hardware-based platforms to open source software-based platforms (SDN or Software Defined Networking).
This post outlines how to build a simple router using firewalld and dnsmasq on CentOS 7.3. The problem this router solves for us at SuniTAFE is that it isolates virtual networks being built or used by students on VMWare ESX hosts from the main college network, while still allowing student access to the college network for DNS forwarding and internet access purposes.
CentOS 7 is a rock-solid development and production platform, but this stability often means that default web-related packages are outdated. It turns out golang is no exception: the default CentOS 7 version is 1.4, whereas I wanted 1.6. There have been some changes in golang project layout between the two versions and I figured I may as well get with the program and update before starting a new API project.
Cross Origin Resource Sharing
The Golang programming language is on a par with Python when it comes to ease of use, but the code compiles to a binary that runs almost as fast as C. So Golang is worth considering for any task that crunches large volumes of data. This is a curated list of Golang libraries useful in data science and related fields.
I recently upgraded my development laptop to CentOS 7 and while I was at it built a spare laptop running the same operating system. After manually creating a dozen MySQL databases and users and then importing their data from dump files on one laptop, I wasn’t interested in going through exactly the same process again on the second laptop.