linuxhint.com linuxhint.com

Docker Compose vs Docker Swarm

Web Apps and Microservices With the container ‘revolution’ apps has grown much more than being just a database and a frontend. Applications are split into various microservices and they typically communicate with one another via a REST API (typically JSON formatted payloads over HTTP). Docker containers are ideal for this kind of architecture. You can package your frontend ‘microservice’ into a Docker container, the database...

linuxhint.com linuxhint.com

Managing Docker Volumes using Docker Compose

Purpose of Docker Volumes Docker containers are meant to be a drop-in replacement for applications. They are meant to be disposable and easy to replace. This property is, in fact, the cornerstone of many CI/CD pipeline. When a change is made pushed to your source repository that triggers a chain of events. Docker images are automatically built, tested and (sometimes) even deployed right into production, replacing the older versions...

linuxhint.com linuxhint.com

Linux Kernel in Windows 10

How does the new Windows Subsystem for Linux (v2) works? Microsoft recently announced that they will soon be shipping a Linux Kernel that’s integrated right into Windows 10. This will allow developers to leverage the Windows 10 platform when developing applications for Linux. In fact, this is the next step in the evolution of Windows Subsystem for Linux (WSL). Let’s review WSL version 1 before getting into the knitty-gritty of...

linuxhint.com linuxhint.com

Cloud-Init and VMs

The following article talks a bit about cloud-init and the problems it has, and how open source doesn’t necessarily means freedom. If you want to use cloud-init to configure cloud-images, just scroll down to point number 3. 1. What it does? Ever wondered how VPS providers configure your VMs, add your SSH-keys, create users and install packages every time you spin up a new VM in the ‘cloud’? Well, the answer for most vendors is...

linuxhint.com linuxhint.com

About Libvirt

Libvirt is one of most popular virtualization management tool out there. It is composed of a management API and a daemon with which you can interact with your virtualization stack. Libvirt strives to unify the management process for all the various virtualization technology from KVM to VMWare ESX and even BHyve. It can also manage LXC containers and even some of the paravirtualization technologies like Xen. Just because it supports a...

linuxhint.com linuxhint.com

What is SSD TRIM?

SSDs are a completely different storage media compared to the ones that existed before it. Magnetic media, especially spinning disks, have introduced a lot of concepts like sector size, partitioning, fragmentation etc. Some of these ideas have been emulated in the firmware Solid state devices as well. On the flip side, new concepts have been introduced in order to optimize the performance, life span and reliability of these novel...

linuxhint.com linuxhint.com

Libvirt with Python

In one of my previous posts, I showed how one can get started with Libvirt and KVM. This virtualization stack is meant not to be used as a desktop virtualization software, rather it is meant to run on servers offering greater flexibility, efficiency and stability, instead of user-friendliness. It is meant be automated to the nth degree rather than relying on manual configuration. So let’s see how you can connect to your libvirt...

linuxhint.com linuxhint.com

How to rent Linux Server(s) in the Cloud

Okay, you have your next great idea. Maybe, it’s a web app, a website or software as a service. Now, you need to deploy it out in the World so people can see and use it. Where do you go for that? What factors do you need to take into account? Let’s go through the thought process to come up with your ideal cloud server. Vertical Scaling of your Operation By vertical scaling, I mean the optimal resource requirement per server. For...

linuxhint.com linuxhint.com

Redirecting HTTP to HTTPS

Whether you are using self-signed certs, or certs from well-know CA you need a way to integrate it with your services. One of the most typical use case that of an HTTP server, this could be a web server or a REST API server but it needs to be configured to be secure. Most web servers like nginx and apache listen on port 80 by default and need quite a bit of configuration before they start using the certificates to encrypt the traffic....

linuxhint.com linuxhint.com

Top 5 Free Benchmarking Tools

Benchmarking is probably of one the most mind-bending and involved process of computer science and technology. They are supposed to represent what your hardware is capable of doing in real world scenarios and also worst possible scenarios.There are a lot of things you might want to consider while benchmarking. What are you benchmarking? The CPU, the memory, SSD IOPs, or maybe it is your GPU. What workloads are you benchmarking for?...