We are pleased to announce that KubeSphere is now available on Civo marketplace. Together with Civo, KubeSphere hopes to boost your business in the cloud-native era. This quickstart will explain how to install KubeSphere on your Civo Kubernetes clusters.

Why KubeSphere

KubeSphere is a distributed operating system for cloud-native application management, using Kubernetes as its kernel. It provides a plug-and-play architecture, allowing third-party applications to be seamlessly integrated into its ecosystem. Powerful as Kubernetes is, it could still bring difficulties in practice. That's where KubeSphere comes in to make your life easier in Kubernetes management. The following diagram illustrates the architecture of KubeSphere.

Kubesphere architecture diagram from nodes on up

Install KubeSphere via Your Civo Dashboard

Prerequisites

  • You have prepared a Civo Kubernetes cluster. For more information, refer to Creating a cluster: the path to success.
  • Make sure your cluster meets the following minimum resource requirements.
    • CPU: 2 cores
    • Memory: 4 GB
    • Volume: 40 GB
  • KubeSphere requires certain ports for the communications among services. Make sure you open these ports in your firewall configurations. For more information, see Port Requirements.

Install KubeSphere

  1. Log in to your Civo dashboard, and go to Kubernetes > Marketplace.
  2. On the Marketplace page, select the Management tab, click KubeSphere, and then click Install Apps at the bottom of the page. Kubesphere on the Civo marketplace management panel
  3. Wait for a while until the installation is completed. You can also run the following command to view the installation result. kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f
  4. Obtain the external IP of your Kubernetes cluster on the Cluster Information page. Civo Kubernetes cluster management page showing the external IP of the cluster
  5. Access the KubeSphere web console at <External IP>:30880 with the default user and password (admin/P@88w0rd). You may need to open the port on the Manage > Firewalls page depending on your firewall configurations. The Kubesphere console front page

Use KubeSphere to Manage Multiple Kubernetes Clusters

If you are a Kubernetes practitioner, managing multiple Kubernetes clusters may be your daily routine. For example, you may have several Kubernetes clusters hosted on Civo (or other cloud providers) and some Kubernetes clusters running in your local data center. It could be cumbersome to manage these Kubernetes clusters one by one. What if you can use one Kubernetes cluster as a central control plane to manage the other clusters? With KubeSphere, this is a reality.

KubeSphere helps you improve efficiency in multi-cloud and multi-cluster management via KubeSphere Federation. What's more, you can deploy applications across multiple clusters with ease.

So, how to use the multi-cluster management feature of KubeSphere?

You need to install KubeSphere on your Kubernetes clusters, use one as the host cluster, and then import other Kubernetes clusters as member clusters to the host cluster for unified management.

KubeSphere provides two methods for enabling multi-cluster management: Direct Connection and Agent Connection. For example, using the direct connection method can be simply described as follows.

  1. Prepare the host cluster and member cluster by editing the ks-installer YAML file on the KubeSphere web console. Editing the host cluster configuration in the ks-installer YAML file

Setting the member cluster configuration

  1. Obtain the kubeconfig of the member cluster on the Civo Cluster Information page. Saving the kubeconfig file from the Civo Kubernetes dashboard

  2. Log in to the host cluster and use the kubeconfig to import the member cluster. Kubesphere "add cluster" button

    Adding a member cluster to Kubesphere using the saved KUBECONFIG file

  3. After the member cluster is imported, you can manage it from the KubeSphere web console of the host cluster. Managing the member cluster through KubeSphere

After you enable the multi-cluster management with KubeSphere, you can explore more under this feature. For more information, you can refer to Multi-cluster Projects, Create a Multi-cluster Pipeline, and Deploy Apps in a Multi-cluster Project.

Also, here's a quick demo video.

Wrapping Up

This quickstart describes how to install KubeSphere from the Civo Marketplace, and briefly explains KubeSphere's value in multi-cluster management. Apart from multi-cluster management, KubeSphere also brings other abilities, such as multi-tenancy, App Store, integrated observability, DevOps, and more.

Try KubeSphere out and see what it can do for you!