Setup for Cross-Cloud and On-premises Kubernetes

This page describes how to set up Krossboard for Kubernetes instances running on-premises and/or across different clouds. Especially, it addresses the deployment for Red Hat OpenShift, Rancher RKE, as well as other vanilla Kubernetes distributions.

For this kind of deployment, Krossboard you can use either our ready-to-deploy OVF/VMDK virtual appliance images, or our setup packages available for Ubuntu Server 18.04 LTS.

Regardless of the selected deployment approach, the installation steps described hereafter shall be achieved in a couple of minutes.

Before you begin

The following key points shall be considered according to the selected deployment approach:

  • For the OVF/VMDK distribution, a virtual machine manager or a cloud platform supporting this format is required. This format is supported by VirtualBox, VMware Workstation/Player/vSphere, AWS, GCP, and most of modern clouds and virtual machine management systems.

  • For the setup package, a machine running Ubuntu Server 18.04 LTS (with sudo access) is required to perform the installation. The deployment script may have to install missing dependencies (e.g. Docker), hence the machine should have access to official/mirrored Ubuntu repositories.

  • Kubernetes Metrics Server needs to be installed your Kubernetes clusters. Krossboard relies on it to retrieve some basic metrics from Kubernetes. If it’s not yet the case, install it on each of the clusters.

    kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
    
  • Hardware requirements: Krossboard has a very low resource footprint, the hardware resources allocated to the instance do mainly depend on the number of Kubernetes clusters and namespaces to handle. The only important recommendation is to use a (virtual) machine with multiple (v)CPU. Indeed, Krossboard is designed to take benefit of multi-core architectures. We recommend to start with an instance with at least 2 vCPUs and 512 MB of memory .

Deploying Krossboard

This section covers the installation either via the OVF virtual machine appliance or via the binary package. The both procedures are described hereafter, once the instance deployed jump to the configuration section to finish the integration with your Kubernetes clusters.

Deployment using the OVF image

The below steps assume you’re running a cloud environment, or a virtual machine manager supporting the importation of OVF images.

Deploy using the binary package

The below steps assume you’re running an Ubuntu Server 18.04 LTS operating system.

  • Go to the release page and download the latest stable setup package.

  • Copy the archive to the target installation machine.

  • Uncompress the archive and review the NOTICE and the EULA files to learn Krossboard terms of use.

    tar zxf krossboard-<VERSION>.tgz
    cd krossboard-<VERSION>
    
  • Use this command to launch the installation.

    sudo ./install.sh
    
  • Once the installation completed, reboot the machine to start the services.

Integration with Kubernetes clusters

The integration of your Kubernetes clusters with Krossboard implies the following two straight steps.

  • Using SSH (or another mean), copy your different Kubernetes KUBECONFIG files into the folder /opt/krossboard/data/kubeconfig.d of the Krossboard machine. Any valid KUBECONFIG file stored in this folder will be automatically discovered and handled by Krossboard (required Krossboard version 1.2.0 or later).

  • Make sure that the Krossboard system services do still have full access to that folder.

    sudo chown -R krossboard:krossboard /opt/krossboard/data/kubeconfig.d
    

Get access to Krossboard UI

Open a browser tab and point it to the Krossboard URL (i.e. http://<machine-addr>/, changing <machine-addr> with the address of the instance).

It may take a few seconds before the instance finishes its initialization, during this time you may experience a loading error in the browser.

Here are the default username and password to sign in:

  • Username: krossboard
  • Password (default): Kr0sSB8qrdAdm

It’s highly recommended to change this default password as soon as possible.

sudo /opt/krossboard/bin/krossboard-change-passwd

Troubleshooting

In case of problem, first checkout the Troubleshooting Page for an initial investigation.

If the problem you’re experiencing is not listed there, open a ticket on the Krossboard GitHub Page.

Alternatively, if you do have an active support contract, you can also send an email directly to our customer support service: support at krossboard.app.

Other Resources