Tag Archives: KVM

Documenting, testing, reviewing and analyzing your virtual infrastructure.

When we analyze our system we must keep a log of the data as time progresses we can review and compare how our system has performed over time and determine what software and services are the most intensive and what can we do to improve them. For example keeping a log for each virtual machines CPU / Memory usage over time can indicate when the machine has had an issue, can help us find the any vulnerabilities in the system and can also give us an indication if the system has been infected with a virus and has not been detected by the anti-virus.

Viruses like worms hog up system resources and spread through the network infecting more more system as they go on. If we see a sudden spike in the system using too much resources it will be a cause for concern . Viruses can spread from vm to host (although it is very difficult ) it is possible that they can spread since they use the same hardware resources. Most importantly software developers should be aware of these vulnerabilities and make sure that visualization software and software on the virtual machines is properly virtualiazed.

Using spread-sheet software we can create charts and visual representations of how virtual machines have performance over time and in addition create a list with all the vulnerabilities found in the systems over time. This allows to view the data in an easy to read way and acknowledge what how safe our virtualized solution is from threats . Keeping logs is very important for reviewing any problems that happened over time .

Software we can use to create a better analysis is one like ELKI which can be used to create also future prediction of the possible usage and more. We must plan and adapt to ever changing hardware requirements be continuously upgrading software and hardware to meet standards that are set by the company in order to function correctly.

To build  a stable infrastructure we need feedback and lots of times to fix any issues regarding it. To collect feedback from customers we can ask them to complete a questionnaire regarding the system every end of month. We can then use that data  in the forms of graphs and charts to allow us to see any improvements regarding the system . Also we can review any issues the users might have with the infrastructure and also prioritize any common issues that arise .

         Meetings can be setup to inform the IT staff each month of the findings and allow the staff to discuss any issues that have risen in the last month from their point of view . For example if end users and having a difficult time accessing certain services , if bandwidth is not enough for the users to use voip and other network services simultaneously . This can be solved by integrating QOS (Quility of Service ) allowing us to configure which services have priority over others . In most cases using QOS will eliminate most bandwidth issues when using a decent connection .

            Using the data collected we can can test any changes we would like to make to the system in a virtualised environment, so that if any thing goes wrong we can just roll back to a previous snapshot in just a matter of minuets . If one of the virtual machines has a virus we can be assured that it cannot spread to the host machine allowing us to safely deal with the virus in the vm with out affecting the host system .

            On every operating system there are built in tools to monitor the performance of the system which display data in a visual way which allow for easy monitoring of the system. Performance monitor in windows gives use the option to display data on almost anything on the system . We can set it up to create a log file every so often and give us an analysis on the data gathered .

            We can also monitor Linux systems with a program called ajenti which gives us a web interface of the Linux system allowing to see system information such as disk space , processor usage , disk usage , free ram space , swap file and much more . It will also keep logs of any event that happens on the system  and even allowing us to use the terminal remotely.

            Even though visualization is a revolutionary step in forward in technology we cannot virtualize everything . For example even thought  developers can develop in  virtual environments they can virtualize specific hardware like graphics cards . Games for example cannot be run in a machine since they need the drivers necessary to work . Code will

Benefits of virtualization technology

Virtualization has many benefits one of which is the reduction of power usage from running multiple physical servers and having to cool them all. Instead of running 16 physical servers we can run 4 physical servers each running 4 virtual servers cutting down on maintenance costs and and cooling of the servers . If any of the virtual operating systems fails at any point we can recover from an older snapshot of it in seconds reducing the downtime of the server to a minimum .

Even if the physical server has a problem or requires maintenance we can migrate already running Virtual machines to an other physical server without interrupting its services and without even the user noticing . Transfer is done through gigabit Ethernet with speeds of up to 1 GB/S .

Big companies use server for hosting websites , ftp servers, call centers etc. Running these services on different physical servers means more money is spent on buying maintaining and cooling the servers. This in turn will have much smaller maintenance cost, less room to store it in and has a smaller upfront cost than having multiple physical servers . The overall foot print of the data center will be much less since we don’t need to house as much servers so we can save space . Virtualization allows easy installation of multiple Virtual machines at once for example we can clone a Virtual machine as many times as we like.

Further more virtualization removes dependency on particular hardware there for we dont need to keep identical hardware on hand in case something fails so IT can save money by buying cheaper hardware . In addition organizations can build standby servers in case of disaster and transfer the VM without any issues to the standby servers. We can isolate applications in a virtual machine and even if one of the virtual machines manages to get a virus it cannot spread to the host or other virtual machines as it is “sand boxed” in the VM. Also we can use older software by just installing an older operating system on a virtual machine and continue running older services from it.

When using Distributed Resource scheduling If a virtual machine requires more power it will use unallocated resources from other virtual machines to balance the load between them. This allows it to be optimized automatically due to load.

Virtualization affects software and hardware , it allows programers to write parallel programs for large clusters of computers to use for example clusters of computers can be used to crack passwords or render large 3d images. Also it allows users to reuse old software that its now incompatible with new hardware by using virtualization. Further with virtualization we can have a dedicated file server where all the programs and data of the servers are stored leaving server storage for critical systems files of operating systems . Essentially cloud computing need virtualization to exist as cloud computing is essentially an on demand service on the internet . So you can rent your own web hosting server . When you rent your own web hosting server you are essentially renting a virtual machine in a remote location outside your business or home.