The most valuable asset of Nokia lab is its communication facilities, which worth billions dollars. As a result, there is an urgent need to design a web to monitor and control those machines as a whole. The web should report the information and status of switches to engineer. If some switches are experiencing some problems,the web should list those switching. In addition, the management system grants engineers access to manage the switches.
The project is powered with Django framkwork. Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It is free and open source. One of the most powerful parts of Django is the automatic admin interface. It reads metadata from your models to provide a quick, model-centric interface where trusted users can manage content on your site. The project widely based on the Django admin site.
Based on easypiechart.js and chartjs, we can report data statistic in various aspects such as department unit, brand(Dell, Cisco, Juniper), switches' status over a time scale. Data such as status of switches in the pie chart are obtained through auto crontab-tasks of switches. It updates every a certain period. Switches can be imported with a Excel file of standard rules, scan a subnet or import with manually in admin system.
This project needs a close collaboration between me and other technicians who has plenty experience of deploying and installing switches in the lab and adminstrators who regulate and control the switches. However, lots of them do not have the knowledge of coding. I self-learned some communication protocol such as SSH and Telnet and knowledge about diverse brands of switches.
I use the Django admin system to allow some technicians to access and to manage the switches they need to work with. Django admin system is a fast and neat way to create a backend management system. It is an ideal framework for company to establish a website for internal use . Django has its own their database SQLITE, but it is not very reliable if there is a large amount of users and data storage,because SQLITE has a poor functionality of handling multi-threading. So I connect the MySQL database to guarantee the stability.