What does Storage have to do with Virtual Machines and why?

"A Thought Experiment" by Manupriyam Dubey, University of Lausanne
A thought Experiment

“As an administrator, you are given a single host server configured with four six-core processors, 256 GB of memory, and 1 TB of storage to deploy a number of virtual web servers. You have been told that each virtual machine will require 8 GB of memory, one processor, and 100 GB of disk storage. How many virtual machines will you able to deploy? What is the limiting factor?” Portnoy, Matthew. Virtualization Essentials

This is a good little question in a text book.  I thought it would be good to at least talk about this and hear what people have to say about this.   Each person is different and will have different answers but I will at least talk about this and the best practices for virtualization and hopefully we will come to the same reason.    If anything it will teach me and maybe even you the right answer and it will allow us to learn even more about virtualization.

Best Practices

The best practices for virtual machines depends on a lot of math and understanding of what will the virtual machine be used for.  We’ll come to that in a little bit.   The question right now is how many can you deploy on a single server.   On any given server the best practice is to do a 1:1 with cores.  So in this thought experiment, there are 24 cores, so we should be able to do 24 VM at the minimum.  According to Nakivo.com here’s the Virtual Machines cores and best practices:

  • 1:1 (optimal)
  • 2.1 (Normal)
  • 3:1 (Not optimal)
  • 4:1 (Maybe)
  • 5:1 (Problematic)
  • 6:1 (Probably not going to work)

I Found an excellent article about this and thought we should at least talk about some of these facts.   I agree with what they said.  The more VM’s you add to a core will make it more unstable and that isn’t even the main thing we need to consider.

Hardware

The Next thing we need to consider is the hardware.   We should always plan around capacity, growth, and business alignment.  When I say this I am talk about the size of memory and the total amount of disk space we will have per VM.  We can easily deploy up to 10 VM if they use 100 GB of space maybe it would be more like 9.   Since we only have 1 TB drive that would limit us to how many VM we could deploy at this time.    We need to consider that if we actually use the 100 GB right now the Virtual Machines we could deploy only 9 VM’s but if we dropped the requirement of 100 GB and made it expandable when it is needed than we could probably get away with the 24 virtual machines.  We could without a doubt do 24 VM comfortably with the amount of ram we had available.  It would leave use with enough overhead for more VM’s later on if we need to.  We could easily go up to 30 VM if we had to but I wouldn’t push it past that limit unless we install more memory down the road.  You will always need to determine your workload when it comes to how many VM’s you can install at one time on a server.

Type of Virtual Machines

Depending on what you intend to use this for such as databases or even web servers.  You will need to consider just how much of an impact the VM will have on other VM on the same system.  The utilization of the speed of the server will always be an indication of to much or not enough.  We will also have to consider the implications of ballooning or the impact of spikes in the server on a day to day routine.

These are just a few thoughts on this question.   I thought I would share with you what I have learned and maybe learn even more from my users.

Finally, the virtual machine is a powerful tool the enterprise and also small business in hand.  We can see that it can be used in many different ways and create even more uses

How to fix the common streaming problems on any smart device

Streaming services

If you have had problems with buffering or even being able to watch a show without it pausing or skipping.    You could be watching Netflix, Hulu, CBS, or even HBO Max and the video just seems to stop or skip.  This is a very common problem and I’ll be showing you how to fix the issue that is a simple fix.  It doesn’t matter how much you move the router or maybe if you go from room to room and still have that occasional annoying issue with your video that isn’t be able to be played.

Video Devices

This could just of started or it could be a continuing problem.  You’re probably like most people just fed up with this or wanting to be able watch a movie or show without it stopping.   If you are like me and have a Chromecast, firestick, Roku, or even a smart TV, then this will probably help solve a lot of the issues especially since you might be in an apartment complex with a lot of other people who might have WIFI.  This technique is what I will first check when I start to have problems like this because you never really know if someone recently got WIFI somewhere close to where you are living.

Wi-Fi Signals

If you setup your own Wi-Fi this shouldn’t be much problem if not, you’ll need to know how to access the Wi-Fi signals in your router.   Usually you type in either 192.168.1.1 or something like that.  If you don’t know, I suggest checking the the Default router IP addresses and see if you can find out how to login to your router.  When you finally do, You’ll want to check to see if you can change the WIFI channels to another channel but what channel should you use?  That’s a great question because someone else might be using the channel you are wanting to use.   I have a few great apps that I download on my android phone but should be able to be found on iPhone and even windows phones or tablets.

Wifi Analyzer
  • Wifi Analyzer —  Great little tool to see what other WIFI signals are being use and will tell me which channels I should use on my router to get better performances.  If there are to many on a channel than that will cause collisions on that channel and could cause problems with your Wi-Fi signal.
  • Wifi Analyzer Classic — is just like WIFI Analyzer but has some great features that the newer one doesn’t and might even work better on new android devices.   After Oreo, you have to give the WIFI Analyzer permissions to use the WIFI and do what it needs.
  • NETGEAR Wi-Fi Analytics —  Great little tool for those who might have a Netgear router and would like to know how well there router is doing and it will suggest how to get the best signal from your router.  You can do speed test and other things from this little app.  It even has it’s own little Analyzer to see which channels or frequency might help.

Upgrading Firmware

This is another trick that might help solve most if not all of the common problems is by updating the firmware of the device you are trying to stream to.  Each device will be different but here are few devices help resources for the most common devices:

  • Roku — Doing this manually will help ensure that you will get the latest firmware for your device.
  • Chromecast  — Usually when Chromecast boots up it will update the firmware but it might not do it all the time.  You can force it to update when you want it to.
  • Firestick  —  I’ve never done this but here it is for this device also.

If you have a smart tv, you should check the manufacturers documentation to find out how to update your tv’s firmware to the latest version.  Usually it’s a simple process of going to settings and finding the update software or firmware setting on your select tv.   You will most likely find the information you need by going to the manufacturers website to find out how to do it all and to see if there is any problems you should be aware of.

These are what I usually check first before I try even more complex things because these are what usually cause most of the streaming issues or problems on any device in the home.   I am sure there are more ways to do it but these are just my recommendations on how to at least try to get the best streaming experience on your mobile or streaming device.

How to use Oracles VirtualBox on Windows 10 (Step by Step Guide)

What is VirtualBox?

That is the first question you should be asking your if you are wanting to use it.   VirtualBox is a way for anyone to play around with other operating systems like Windows 11,  and yet I didn’t like it enough to even think about playing around with it on a Virtual machine.  You can also install different Linux operating systems to get yourself used to the Linux OS.  Either way, the long term’s of using VirtualBox is vastly better than you can imagine.  You can try new Operating system and see how they will do with what you might be interested in.   This will be a how to on Windows 10 because that’s what I am using but I have already talked about doing it on Linux  and installing Windows 10 on it.  If you’re curious about doing it the other way around that would be a good start.

After Installing VirtualBox in Windows 10

What’s the first Step in installing an operating system.  You either need the USB version or If you have a DVD of the operating system you want to install that will also be good.   Each way is not to hard to do while using VirtualBox.   First part of this is to initialize the Virtual System.

You’ll want to click the NEW button and you’ll be lead to this screen.  Give it any name you would but most will say something like MacOS, Linux, Or Windows (xp, 7, 10, 11) because you would basically like to keep track of that when you start using the Virtual machine.

VirtualBox is pretty intuitive when it comes to which operating you will be installing so when you name it the right Operating system.  You should see the version and type change down below to reflect the type of operating system parameters you’ll need to use the Virtual machine.

Dedicating the memory

You’ll want to dedicate a certain amount of memory to be use with VirtualBox so you can have enough to run the virtual operating system and not be sluggish.   If you have 16 gb or more of memory than you can easily divide it by 2 if you are just going to do one virtual machine at a time.  The Minimum I would recommend to use with a Virtual Machine is 4 gb but that is just a personal opinion.

Create a Virtual Hard drive

This is simply the easiest part of the creating the virtual machine.  You can have use as much as you like or as little as you like depending on your situation.  I usually give mine at least 10 gb or more depending on which operating I will be installing.  The more space you give the less you will have to use on your local hard drive so if you have another drive you want to use so as to not fill up your C: drive that would be preferable.

You’ll want to create a VHD or a VMDK but I rather like just useing the Virtual Hard Drive selection because it makes it so much easier for me.

This is where you should say Fixed size, so it doesn’t use up so much space that it will create a problem for you later on.

If you’re unsure of how much to use just keep it where it is.  Most of time when you are just checking out a operating system you will not need to much space to test it out.  All you have to do now is Create the Virtual Hard drive and you’ll all setup for the next part.

Installing the Operating system

The next step is to tell tell VirtualBox which ISO you will be using to install into the virtual machine.  You’ll want make sure the new machine you just created is turned blue by click on it and then hitting the settings key on VirtualBox dashboard.

Finally you’ll want to hit the little disk drive at the top right and add a new ISO you are wanting to use for the virtual environment.

Simply hit the ADD button and navigate to where you downloaded that ISO and use that then click choose.  Once done then you are all set on this part of the setup.

Don’t forget about how the cores

This is not a big issue but sometimes might help with running the Virtual Machine by checking to see how many cores you might want to use with the new operating system.  This is however just something I’ve found to speed up the virtual machine.   If you have 2 cores you can obviously only use 1 but if you have more than 2 cores it can be nice to use a few more cores to make the system a little bit more responsive.

You are all set

This part is obviously the hard part is to just hit the start or double clicking on the virtual machine you want to make it execute.   Either way sit back and play around with what you can do with the new operating system and install it on to the virtual hard drive and you’ll be good to go.  Once you install, you can go back to the storage selecting in the settings and remove the ISO to prevent it from loading again.   In some cases it will so just go back and remove the ISO from the drive and you can just enjoy playing around with whatever system you want to explore.

What is Virtualization and why Do you need to know it?

Virtualization In the Cloud Illustration

Virtualization

Virtualization, what does it really mean?  Let’s walk through what the word means and then we can talk about it some more.   Virtual is like you are attending a class remotely because there is no real materials or even books that you can use to feel or see.   Let’s talk about realization, This is the part that people sometimes do not understand when they hear the word virtualization that the system that is doing this will need to also realize that the system.  It’ll need to create a motherboard, CPU, memory, display, ports, and USB ports, and even hard drives and peripherals.   It however isn’t really anything that can be touch or even seen by us the user.  It is all inside a computer being made by the computer to fool the operating system that is being created by the virtual machine.

Cloud computing

What is that word and what does that have to do with virtualization?   I am sure everyone has asked that at one point or time and they might want to know about it even more.   Cloud computing is basically a lone server or it could even be a service for companies to use somewhere around the world to create an operating system for the business to use such as Windows 365 which lets you create a Windows desktop virtually on a server to be able to do everything you can do on physical system as if you had one there right now.   Play games, edit documents, write emails, and so on are what it is called to be cloud computing.  Just think of it as being a computer on the internet and you will start to realize that it is not a real computer.

Do we need virtualization?

In all we do now, virtualization is going to be more and more used in now than in the old days.  It allows corporation to manage desktops around the world and not have them physically there.  The cost of having a desktop will not be overhead and they can have a server have several people on it and cutting the cost of have having to buy the computer parts or even the computer for the employees.  They can then buy really cheap computers that don’t take up as much space and these cheap computers will most likely be underpowered.   In the process, they can use that to do what might need to be done on the virtual machine.   It can seem like a lot but in the end the computer they bought isn’t as expensive as buying a system that can do  what a cloud computer and is far more manageable to the IT staff.  They can keep it running and if something happens they can call the company and get someone there to fix the problem that they can’t do.

Benefits Vs Cost

Here’s where it get even better, because if you really think about this as being a virtualization as service, you’ll see that the benefits verses the cost of using one is probably going to be less than you think.   Let’s break it down in further for you and explain why in so many ways.   Virtualization is basically meaning several computers can be on a really beefy server.   It can be a beast and can be used to utilize the CPU processing when it is need to do something like graphics or even just programs that might need the processing power.   It could in theory also be used to mine bitcoins or even Ethereum but I really don’t know if it is actually be done like that on a server because you’d only want one system on the server to maximize the chance to mine a bitcoin or an Ethereum coin as they say.   Because the more people on that server the more processing power will be divided to the the people equally so that’s one thing to consider.  We could look at cost of buying a server or even renting a server but in reality what we need to look at is the idea that the server can host several employees or people on the server to do tasks that remotely or even at the office that will far out way the cost of buying a bulky computer and having the employee’s be in the office all the time.

This is all the definition of what a computer is in the cloud, we just have to think of it as a way to illustrate what it is and why we need it.   Do you agree or disagree, do you think I did a good job describing it?   Why not leave a comment and tell me what you thoughts or if you think I could of talked about something more.   I’d love to hear you thoughts on this matter and others.

 

Understanding Shell Script in Linux Mint and how to use it properly

 

Shell script

Shell scripts are powerful!

Any Admin who has used shell scripts to complete a bunch of tasks on Linux will tell that you should already be using it.  It’s something that even I can’t really understand but know a lot about since I have to install Linux a lot.   Sometimes it can go weeks before I have to use my shell script again or the next day.  It varies from time to time when I will need to use it but it is an admins best friend.   Is shell scripts like python, absolutely but there is something that we should at least explore and understand.   I am going to talk about this and give examples for those who might want to follow along with me as we talk about “What is shell scripts and how can I use them?”.  I am sure this will be a long series maybe a few post here and there but it will be really good for those who might want to learn even more about the world of Linux.

Shell scripts vs python

Let’s at least get this one out of the way, because someone is bound to ask this question.  What’s the difference in shell scripts verses python?  In the short answer not much, but in the long answer the python language is more complex and you can do a lot more with the python did you can do with shell but only to a point.  Each one has it’s own unique qualities and can be used on Linux and Windows.   Although shell scripts can’t be run on exactly, they can be renamed to be batch files (.bat) which is DOS(Directory of System) old system.  Way before Windows we had DOS and way before any GUI interfaces we had to create batch files to load up the system.  If you’re old enough you probably remember autoexec.bat or even the config.sys files that you occasionally had to edit to get to the command prompt.

Shell scripts in Linux

What’s the use of using shell scripts in Linux you might be asking yourself?  It’s very useful to use when there is a problem or need to install a bunch of things that would take longer to install individually.  Shell script basics are really just that like a batch file in DOS and it can do a lot of things from asking a question to installing many different files.   It can rename or remove files, it is also good for cleaning up a directory that might be full of junk files or maybe you want to have a shell script to backup your /home directory.  This is the power of shell scripting in Linux.  Shell script basics can make your life so much easier and better in the long when you finally decide to delve into the Linux system.

Shell scripts If and then

Just like batch files, you can use this in Shell scripting.  If something happens then do this or you can even go farther that by using Else statements also.  You can ask something from the admin like where the file location of a file you want to use.  It can make your life so much simpler and can help keep the Linux system running smoothly.

if [ expression ]
then
statement
fi

You can do so much more with the shell script when you personalize it to what ever you might need.

echo What is the shell script you want to run?
read $FILE
if ! [ +r $FILE ]; then
Echo "Admin permissions are required to run this shell script"
then exit 0

As you can see this can be very useful when you want to get around certain installation situations and needing to install files without prompting.

Here’s a good one for those who might need to do just that:

echo y|sudo apt-get install [apt program]

This will allow you to bypass the yes question when it is asked and you can just create a basic shell script to install the files that you wanting to do like I have from time to time with gaming systems.   If you don’t want to wait around and install them manually this is the best approach for people who might want to multiple programs at once.

Executing the shell script

if you can’t execute the shell script than you haven’t given permissions to execute it in Linux.  You either have edit the properties in Linux, by right clicking on the shell script and clicking on the properties tab.   Then check “Allow executing file as a program” or you can do a command line

chmod 0700 script.sh (only allow owner to run script)
chmod 0755 script.sh (Allow owner users, and groups to run script)

As you can see the chmod command can be very useful in Linux, so take care to use it wisely.   I will talk about even more about shell scripting in the coming days and hopefully provide you with a very powerful script for installing all the gaming and even the drivers that you might need to for your new Linux gaming system.