Port forwarding also referred to as port mapping, is a method for allowing remote devices to connect to a specific service within your private local-area network (LAN). As the name suggests, the process involves forwarding requests for a specific port to another port or network. It modifies the destination of the packet in-flight and is considered a type of network …
Kubernetes DNS Service: A Beginner’s Guide
Kubernetes, also known as K8s, is an open-source orchestration system for automating deployment, scaling, and managing containerized applications. Its portability, flexibility, and automatic scaling capabilities make it an extensively used system. Above all the standout features, the option to create DNS records for services and pods makes it unbeatable from other software systems. Kubernetes DNS service allows you to contact …
Overview of DNS Terminologies, Components, and Concepts
DNS (Domain Name System) is one of the crucial components driving the internet. Having a proper understanding of how DNS works can help diagnose problems with website configuration and broaden your understanding of what’s going on behind the scenes. In this guide, we’ll talk about some fundamental concepts of DNS to provide you with a solid ground while working with …
Troubleshooting Common HTTP Error Codes
Any web server receiving an HTTP request is responded to with an HTTP status code. These codes are short notes from the server describing the situation. It doesn’t contain any actual site content. Instead, it’s a report of how things went after receiving the HTTP request. In many situations, these codes are important to diagnose various server/client issues. These codes …
Working with Docker Data Volumes on Ubuntu 20.04
Introduction Docker Data Volumes is an important concept when containerizing your applications. Knowing this concept is vital for ensuring the best experience of your containerized application along with reliable persistence and data management. However, while this concept is important, it is also confusing and complex for many developers. It is important for developers and DevOps specialists to be able to …
Installing Jenkins on Kubernetes
Continuous Integration and Continuous Development is now a standard way of deployment. Also called CI/CD, it creates pipelines to automate testing, deployment, integrating code, and reporting. While there are many tools available in the market, both free and open-source, in this tutorial, we will be installing Jenkins on Kubernetes. Jenkins is one of the most popular CI/CD tools used for …
Configuring Storage Devices in Linux- Learning to Partition and Format
Introduction There are many situations where you may need a new disk on your Linux system. For the most part, creating a new disk is a straightforward process. However, things can become complicated if you are trying to tinker with partitioning schemes and filesystem formats. To help simplify the process, this tutorial will give you a step by step outline …
Routing Web Traffic without a VPN using SOCKS Tunnel
When it comes to securing your footprint on the web, you may have heard about VPNs, right? VPN acts as a middleman between your computer and the internet. All the traffic passes through the VPN server, effectively masking your IP address and location. However, VPN isn’t the only form of a proxy server. SOCKS (Socket Secure) is a similar network …
Installing Software on Kubernetes with Helm 3 Package Manager on Windows
A If you are coming from a development background, you are probably aware of the Package Manager term. Package Managers allow you to install dependencies, upgrade and downgrade versions, and so on. In this tutorial, we will look at a very popular package manager for Kubernetes, called Helm. Helm assists in managing Kubernetes applications. With Helm, you can define a …
How To Troubleshoot and Inspect Kubernetes Networking
Kubernetes is an open-source tool that is crucial in container orchestration. Kubernetes helps in orchestrating and managing clusters at scale across various cloud environments or even on-premise servers. A cluster is a set of hosts meant for running containerized applications and services. A cluster needs a minimum of two nodes to work – one master node and a worker node. …
Building and Installing Go Programs
Go is a statically typed programming language. Originally designed by Google, Go shares similarities with C in terms of syntaxes. However, in functionality, Go comes with additional features like memory safety, garbage collection, structural typing, etc. Over the past few years, Go has been gaining incredible popularity. This guide will go over the steps of building and installing Go programs …
Mail Server Configuration Tutorial: How to Use Postfix, Dovecot, MySQL, and SpamAssassin
Introduction On Ubuntu 20.04, you can use tools like Postfix, Dovecot, MySQL, and SpamAssassin to configure a mail server. The process can be confusing for someone attempting it for the first time. This tutorial aims to simplify the mail server configuration process for you with detailed steps. At the end of this tutorial, you will know how to add virtual …