fbpx

Spotlight

todayOctober 8, 2021

How To's + Postfix taylor

Postfix BCC All Incoming Mail For User or Domain

In this article we’re going to learn how to configure Postfix to BCC all incoming mail for a domain or specific user. First, let’s create the following file in Postfix with the following command: nano /etc/postfix/recipient_bcc_maps To BCC all incoming mail for a single domain, use the following: *@example-a.tld [email protected] [...]






Web Design & Hosting

Give your customers the experience they deserve with a fresh, modern, and fast revitalized online experience.

Learn More
Background

What Is Virtualization?

We’re all familiar with the modern day computer: A device containing a conglomerate of components that help us accomplish our day-to-day digital tasks. Any modern-day computer such as a PC, Notebook, or Server contains at-minimum, a motherboard, at least one CPU, RAM, storage drive(s), and in some cases one or more GPU’s. All of these components – when assembled – define any modern day device. Even your phone!



Dedicated Machine


Let’s use this box as an example. This box represents a computer with a single 4-core CPU, 8Gb of RAM, and 500Gb of storage space.

When you use this machine, your operating system (OS) is able to utilize all 4 CPU cores, all 8Gb of RAM and most-all 500Gb of storage at any point in time. Whether you’re browsing the web, playing a game, listening to music, or crunching some numbers on a spreadsheet, your OS (Windows, Mac, Linux, Android/iOS, etc.) will allocate it’s hardware resources to applications based on what they asked for according to their requested priority.




Virtual Machine

Now, we’re going to take that same box from the section above and stick three boxes inside of it. These 3 boxes are capable of performing the exact same functions of the original singular box.

We now have 3 computers inside one physical machine. These machines can operate independently of one another as if they were 3 separate physical machines. The Caveat: These three machines must share the hardware resources of the host computer.


If we divide the resources of the host device up between the three devices it would look something along the lines of this:


Machine 1

1 CPU Core | 2Gb RAM | 100Gb Storage

Machine 2

1 CPU Core | 2Gb RAM | 100Gb Storage

Machine 3

1 CPU Core | 2Gb RAM | 100Gb Storage

This leaves us with 1 CPU Core, 2Gb RAM, and 200Gb of Storage left for the underlying host operating system – otherwise known as the “Hypervisor”.


Management & Resource Allocation

Now in terms of sharing resources, there’s a multitude of methods. Regardless of the method chosen, all require the resources of the physical host machine’s hardware. Therefore, naturally, you can allocate as-little or as-much hardware resources from the host as you desire per virtual machine.


For the sake of brevity, we’ll stick to the two most common types of virtualization: Linux Containers (LXC) and Kernel-Based Virtual Machine (KVM or VM). The primary difference between the two is that a KVM requires it’s own kernel instance to run whereas LXC’s share the same kernel. However, each instance acts as its own separate environment with it’s own respective file system. An easy way to summarize it would be: LXC’s operate at an Operating System level and KVM’s operate at the hardware level.


LXC

It’s commonly agreed that LXC’s are easier to manage and more lightweight. However, this doesn’t necessarily mean they’re a better option over their counterpart(s).

LXC’s require very little overhead. They’re quicker to deploy, start, stop, and restart. However, in some cases compatibility issues may arise with certain software or package managers that are developed and intended to be run on a KVM or Dedicated Machine.


KVM

As mentioned above, KVM’s operate within their own kernel instance. This means a user can boot most-any operating system regardless of the underlying (host) operating system.

Since each KVM requires it’s own kernel instance, this makes KVM’s far more resource intensive compared to an LXC. KVM’s are also more involved when it comes to provisioning.



So Which Is Best For Me?

Ultimately, which form of virtualization you choose depends on your overall minimum hardware requirements. For example, if you’re running a WordPress website (Apache/NGINX/Varnish, PHP, and MySQL) you won’t need the same resources as an instance running a Web Server with 500 websites, 5 regular-use emails each, and Spam/Virus email filtering.

In many instances, it’s best to evenly spread your resources across multiple machines to help lighten the load. This method in conjunction with a load balancer helps guarantee your services will remain quick, stable, and consistent regardless if you have 5 users or 500,000 users.



Ready to Learn More About Virtualization?

Get In Touch With Us!








    • Locally Owned and Operated
    • Independent, Honest, Intuitive, Knowledgeable


    Verticals

    Follow us