Web Application to view and manage servers and their virtual machines

Job ID: 33570163

Budget: $150 – $300 USD

We want to build a PHP web application to view and manage the different dedicated servers and virtual machines hosted on them, including the resources used. Our client request a virtual machine with some specific features, then we will use this webapp to filter the requeired characteristics and it will show on which host server the requested virtual machine can be placed depending on the search parameters.

About physical servers we want to store in a database this information:
*Indentification:
-NAME (string)
-MODEL (string)
-DATACENTER (string)
-IP (string)
*Specifications:
-PROCESSOR(string)
-RAM (int)
-DRIVES: (relation to Drives table (id, name, capacity)
-COST(decimal)
*Other info:
-OBSERVATIONS (string)
-HOST LICENSE (multivaluated)
*Virtual Machines (multivaluated to virtual machines table)

About Virtual Machines we want to store in a database this information:
*Identification:
-NAME (string)
-HOST (NAME, related with hosts NAME)
*Specifications:
-OPERATING SYSTEM: (relation to OS table (id, name, code (string))
-RAM (int)
-DRIVES: (relation to Drives table (id, name, capacity) related with physical DRIVES)
-COST(decimal)
*Other info:
-WINDOWS LICENSE: (relation to Windows License table –(id, name, license number)
-OFFICE LICENSE: (relation to Office License table –(id, name, license number)

The idea of the project is to have a dataTable that shows all the stored information for all hosts in the database (1 per row), and if we click on a row it shows all the virtual machines information (1 per row) inside it, and a summary of the used resources and some autocalculated cells (%busy, %available, Profit…) at the end. Example:
https://datatables.net/extensions/rowgroup/examples/initialisation/startAndEndRender.html
https://datatables.net/extensions/rowgroup/examples/initialisation/customRow.html

The datatable must allow to filter by name, Data Center, IP, observation, etc. And to have an advanced filter to search by resources of the specs columns, for example: Search by a range of costs (show servers with cost between $100 and $200), Search servers with more than 30GB of RAM available, or Show servers with more than 500GB of disk space available, etc. Example:
https://datatables.net/examples/plug-ins/range_filtering.html

The information included in the “Other Info” can be included for example in a hidden row like in this example:
https://datatables.net/examples/api/row_details.html

Of course we need a form to create new physical servers, a form to create Virtual Machines associated to that server and a form to create Drives and Licenses. About UPDATE and DELETE operations the idea is to have an Editable Datatable instead of use forms for example:
https://editor.datatables.net/examples/inline-editing/simple

The web application must implement a simple login system, without permissions. It is NOT necessary to have a form to create new login users or recovery passwords, we can create them directly on database.
Related categories: PHP MySQL Bootstrap Datatables jQuery