How to Self-Host JetBrains YouTrack in Kubernetes

Introduction In this guide, I will walk through the process of self-hosting JetBrains YouTrack, a powerful project management tool, in a Kubernetes environment. YouTrack is designed to help teams manage their projects efficiently with features like issue tracking, agile boards, and customizable workflows. It is also free for up to 10 users, making it an excellent choice for small teams or personal projects. Prerequisites Before we begin, ensure you have the following prerequisites: ...

Check Your Public IP for Open and Exposed Ports

Introduction This guide will help you identify if your public IP address has any open ports or services that could be unintentionally exposed to the internet. This is crucial for maintaining the security of your network and devices. Based on RFC1918, private IP addresses are not routable on the public internet. What is RFC1918? RFC1918 is a standard that defines private IP address ranges that are reserved for use within private networks. RFC1918 designates the following three ranges for private networks: 10.0.0.0 - 10.255.255.255: (10.0.0.0/8) 172.16.0.0 - 172.31.255.255: (172.16.0.0/12) 192.168.0.0 - 192.168.255.255: (192.168.0.0/16) Steps You can use online tools to scan your public IP address for open ports and services. Use a port scan tool like Censys to search for a public IP address. ...

How to Expose Kubernetes Apps Using Cloudflare Tunnel and NGINX Ingress

Introduction In this guide, we will learn how to expose a Kubernetes application securely to the internet using Cloudflare Tunnel and Nginx Ingress. This setup allows you to leverage Cloudflare’s security features while managing your application traffic efficiently. We are going to use: Cloudflare Tunnel to expose our application securely to the internet. Kubernetes Nginx Ingress to route traffic to our application. Prerequisites A Cloudflare account with the domain added. A Kubernetes cluster set up with Nginx Ingress Controller installed. Root or sudo access to the Kubernetes cluster. Deployment Guide Step 1: Install Cloudflare Tunnel sudo mkdir -p --mode=0755 /usr/share/keyrings curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main" | sudo tee /etc/apt/sources.list.d/cloudflared.list sudo apt-get update && sudo apt-get install cloudflared Step 2: Authenticate Cloudflare Tunnel sudo cloudflared tunnel login Don’t worry, if you see a login url in the server terminal, just copy it and paste it in your personal browser. After logging in, you will see a success message in the server terminal. ...

How to Install Metrics Server on Kubernetes

Introduction Metrics Server is a cluster-wide aggregator of resource usage data in Kubernetes. It collects metrics from the kubelet on each node and provides them to the Kubernetes API server, which can be used for horizontal pod autoscaling and other purposes. Prerequisites A running Kubernetes cluster (version 1.8 or later). kubectl command-line tool installed and configured to communicate with your cluster. Installation Steps kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml Verification To verify that Metrics Server is running correctly, you can check the status of the Metrics Server pod: ...

How to Set Up a 3-Node Kubernetes Cluster with Kubeadm

Introduction This guide will walk you through the following steps to set up a 3-node Kubernetes cluster using kubeadm: Configure unique hostnames for each node. Set up networking and update the /etc/hosts file. Install required system packages and disable swap. Install and configure the container runtime (containerd) and enable IP forwarding. Install Kubernetes components: kubeadm, kubelet, and kubectl. Initialize the control plane node with kubeadm. Set up pod networking using Calico CNI. Join worker nodes to the cluster. Verify the cluster status and apply additional configurations. Prerequisites Create three VMs or physical servers with Ubuntu 22.04 LTS or later. Make sure all nodes can communicate with each other over the network and has internet access. Setup Step 1: Setup Hostnames on all nodes On each node, set a unique hostname using the following command: ...