Knowledgebase

How to install Kubernetes cluster on Linux CentOS 8 VPS, VDS, Server

On the global internet, there are many good guides out there describing how to install Kubernetes on CentOS 8. Nevertheless, some steps might be unnecessary and some might be missing. This guide is based on our notes from real-world deployments and has worked great. All this is possible to install and configure on our VPS, VDS, and Servers. Prerequisites for both Master and Worker nodes In this guide, we will be using minimal resources with just two cloud servers for simplicity. After the initial setup, you can add more workers when necessary. For this guide to work, you would need to Deploy two CentOS 8 Linux servers. One for the master and the other for the worker node. Kubernetes has minimum requirements for the server and both master and worker nodes need to have at least 2 GB RAM and 2 CPUs, the € 4.99/mo each plan covers these requirements and with double the memory.…

Read time: 3 mins Read more »

How to Install Kubernetes on Master and Worker nodes

In our previous guide, you could read on How to install Kubernetes cluster on Linux CentOS 8 VPS, VDS, Server that is located HERE. But in this guide, we will show you how you can install Master and Worker nodes. With all the necessary parts installed, we can get Kubernetes installed as well. Add the Kubernetes repository to your package manager by creating the following file. cat < /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg exclude=kubelet kubeadm kubectl EOF Then update the repo info. dnf upgrade -y Install all the necessary components for Kubernetes. dnf install -y kubelet kubeadm kubectl --disableexcludes=kubernetes Start the Kubernetes services systemctl start kubelet Enable the Kubernetes services on the startup. systemctl enable kubelet Once running on both nodes, begin configuring Kubernetes on the Master by following the instructions in the next section. By clicking here you will find a user guide on How to configuring Kubernetes on the Master…

Read time: 1 min Read more »

How to configuring Kubernetes on the Master node only

Here you could find a guide, on How to Install Kubernetes on Master and Worker nodes Configure kubeadm. kubeadm config images pull Open the necessary ports used by Kubernetes. firewall-cmd --zone=public --permanent --add-port={6443,2379,2380,10250,10251,10252}/tcp Allow docker access from another node, replace the worker-IP-address with yours. firewall-cmd --zone=public --permanent --add-rich-rule 'rule family=ipv4 source address=worker-IP-address/32 accept' Allow access to the host’s localhost from the docker container. firewall-cmd --zone=public --permanent --add-rich-rule 'rule family=ipv4 source address=172.17.0.0/16 accept' Make the changes permanent. firewall-cmd --reload Install CNI (container network interface) plugin for Kubernetes. For this setup, we’ll be using Calico Issue the following command: kubeadm init --pod-network-cidr 192.168.0.0/16 You should see something like the example below. Make note of the discovery token, it’s needed to join worker nodes to the cluster. Note that the join token below is just an example. kubeadm join 94.237.41.193:6443 --token 4xrp9o.v345aic7zc1bj8ba \ --discovery-token-ca-cert-hash sha256:b2e459930f030787654489ba7ccbc701c29b3b60e0aa4998706fe0052de8794c Make the following directory and configuration files. mkdir -p $HOME/.kube cp -i /etc/kubernetes/admin.conf…

Read time: 2 mins Read more »

How to configuring Kubernetes on the Worker node only

So we now continue our Kubernetes settings if you have missed here you can find a guide on How to configuring Kubernetes on the Master node only Each Kubernetes installation needs to have one or more worker nodes that run the containerized applications. We’ll only configure one worker in this example but repeat these steps to join more nodes to your cluster. Open ports used by Kubernetes. firewall-cmd --zone=public --permanent --add-port={10250,30000-32767}/tcp Make the changes permanent. firewall-cmd --reload Join the cluster with the previously noted token. Note that the join token below is just an example. kubectl get nodes The output should be: NAME STATUS ROLES AGE VERSION master Ready master 10m v1.18.0 worker Ready 28s v1.18.0 On success, you should see two nodes with ready status. If not, wait a moment and repeat the command. Congratulations, you should now have a working Kubernetes installation running on two nodes. In case anything goes wrong, you can…

Read time: 1 min Read more »

How to install Kubernetes on Linux CentOS 8 / RHEL VPS, VDS, Server

Now that the New Linux CentOS 8 is taking the lead and many companies need to upgrade from CentOS 6 or CentOS 7. Then the best choice at the moment at beginning of 2021 is CentOS 8 since it has a long support time and security updates support. Based on all the before mentioned the Kubernetes have accordingly changed the installation of Kubernetes. let's have a look at how to install it. Just a reminder, that Kubernetes can also be installed on our hosted VPS/VDS servers The things that you would need to prepare before Kubernetes installation are. 1. A running instance of CentOS 8 2. Docker CE installed and running 3. A user with Sudo privileges 4. Access to the root user   Now how to install Kubernetes Remember, you must have Docker CE installed, before starting this process. Once you have the Docker engine up and running, how to add Kubernetes to the server.…

Read time: 3 mins Read more »

How to Install Nginx web server on Linux CentOS 8 / Rhel server

As many users and web developers already know, that Nginx is one of the most popular web servers in the world and is responsible for hosting some of the largest and most popular sites on the internet. It is more resource-friendly than Apache in most cases and can be used as a web server or reverse proxy. Installing the Nginx Web Server Install the Nginx package with: dnf install -y nginx After the installation is finished, let's enable Nginx to start on the system boot systemctl enable nginx Let's start Nginx for the first time systemctl start nginx Adjusting Firewall Rules for Nginx server to run properly Let's allow HTTP traffic firewall-cmd --permanent --add-service=http Let's allow HTTPS traffic firewall-cmd --permanent --add-service=https To apply the changes, you’ll need to reload the firewall service: firewall-cmd --reload Managing the Nginx Process Now that you have your web server up and running, we’ll review how to manage the Nginx…

Read time: 2 mins Read more »

How to Setup Let’s Encrypt SSL with Nginx on Linux CentOS 8 / RHEL Server

Some applications require an SSL certificate to be installed and valid to create an API call. As we all know that based on tests in a global network NGINX works faster over Apache. So in this tutorial, we will show you how to install Let's Encrypt SSL on  NGINX. Let's Encrypt SSL certificates are Valid over 99% of browsers and they are free. For an App that only needs a valid SSL to connect API or a small website/blog, the Let's Encrypt is an ideal option. For this tutorial to work we would need a: Valid domain name; CentOS 8 server with public IP that appears in the DNS A record of your domain name; Installed NGINX; If you don't have an NGINX installed, then a manual on how to install NGINX you can find here. Installing and configuring snapd It is better to use snapd to install and maintain Certbot. This way, it will…

Read time: 2 mins Read more »

How to Install PostgreSQL 13 on Linux CentOS 8 / RHEL

With PostgreSQL performance, you will be impressed since it works much faster the MySQL. The reason why it works faster is related to that it puts all information into files that are cached and depending on your server's drive speed the information inserted and shown is really fast. So in this tutorial, we’ll walk you through the installation and initial configuration of PostgreSQL 13 on CentOS 8. Updates for PostgreSQL 13 will be released for five years through November 2025. You must run all commands as root. Installing PostgreSQL 13 packages Add PostgreSQL repository to the system. dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm Turn off the PostgreSQL modules with an older version present in the system. dnf -qy module disable postgresql Let’s install PostgreSQL 13 server. dnf install -y postgresql13-server Initial configuration Initialize the database. /usr/pgsql-13/bin/postgresql-13-setup initdb Initializing database ... OK Start and enable autostart of the PostgreSQL service. systemctl enable --now postgresql-13 Set a password for…

Read time: 2 mins Read more »

How to Test Internet Connection Speed in CentOS 8

The way to test the speed of the Internet connection in CentOS 8 is different from that in desktop systems, where it can be done simply in a browser. In this tutorial, we will install the Speedtest CLI and test the speed of the Internet connection using it. Installing Speedtest CLI in CentOS 8 First, we need to install wget if you don't have it. dnf install -y wget How we need to download the Speedtest CLI repository. wget https://bintray.com/ookla/rhel/rpm -O speedtest.repo Now move it to the system repository list. sudo mv speedtest.repo /etc/yum.repos.d/ Check if other versions are installed on the system. rpm -qa | grep speedtest Remove them if found. sudo dnf remove speedtest-cli Now install the official version of Speedtest CLI. sudo dnf install speedtest Internet connection speed test To run the test, enter the following command and accept the license: speedtest Result: Do you accept the license? [type YES to accept]:…

Read time: 1 min Read more »

How to optimize website performance by setting Up Google PageSpeed Module in Apache on CentOS 8

The website loading speed is very important since google SEO is required that your website has a good SEO score by loading the website loads fasts and at the same time if we look from another angle we see that also website visitors don't want to wait for a website to be loaded. So in this tutorial, we will show you, how to optimize your server with PageSpeed so that your website loads faster. The PageSpeed module is designed to optimize the webserver and speed up its response. Now let's start setting up the Google PageSpeed module in Apache on CentOS 8. First, you need to have a CentOS 8 server with the Apache webserver installed. Downloading and installing the Google PageSpeed module To install the Google PageSpeed module, you need the at and wget packages dnf install -y at wget Download Google PageSpeed package for Apache. wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_x86_64.rpm Install the PageSpeed module itself. rpm -U…

Read time: 2 mins Read more »

How to Install and Configure Zabbix Agent on Linux RHEL / Linux CentOS 8 VPS, VDS, Linux server

Server monitoring is one of the important things that is needed. To provide the best quality. Each monitoring system has a different approach. Depending on your infrastructure you would need to set it up independently with a back since the monitoring system can also fail. Each monitoring system requires a user to be installed on the client's device. In this case, we will show you, how you can install Zabbix Agent on a Linux Centos 8 server-based OS system. The Zabbix agent runs on client machines, collects and sends data to the Zabbix server. Therefore, all remote machines must be provided with a client for the server to work. We recently installed the Zabbix server. In this tutorial, we will walk through the necessary steps to install and configure the Zabbix agent on CentOS 8. We all know, that SELinux in most servers and VPS is enabled but y default, but we think it is…

Read time: 2 mins Read more »