Accessing Cluster Services

MetalK8s GUI

This GUI is deployed during the Bootstrap installation, and can be used for operating, extending and upgrading a MetalK8s cluster.

Gather Required Information

Get the ingress control plane IP.

root@bootstrap $ kubectl --kubeconfig=/etc/kubernetes/admin.conf \
  get svc -n metalk8s-ingress ingress-nginx-control-plane-controller \
<the ingress control plane IP>

Use MetalK8s UI

Once you have gathered the IP address and the port number, open your web browser and navigate to the URL https://<ip>:8443, replacing placeholders with the values retrieved before.

The login page is loaded, and should resemble the following:


Log in with the default login / password (admin@metalk8s.invalid / password).


To change the default password as provided above, refer to this procedure.

The landing page should look like this:


This page displays two monitoring indicators:

  1. the Cluster Status, which evaluates if control plane services are all up and running

  2. the list of alerts stored in Alertmanager.


Grafana is available on the same host as the MetalK8s UI, under /grafana. Log in with the default credentials: admin@metalk8s.invalid / password.


MetalK8s uses SaltStack to manage the cluster. The Salt Master runs in a Pod on the Bootstrap node.

The Pod name is salt-master-<bootstrap hostname>, and it contains two containers: salt-master and salt-api.

To interact with the Salt Master with the usual CLIs, open a terminal in the salt-master container (assuming the Bootstrap hostname to be bootstrap):

root@bootstrap $ kubectl exec -it -n kube-system -c salt-master \
                   --kubeconfig /etc/kubernetes/admin.conf \
                   salt-master-bootstrap bash