karmada-io / dashboard

Web UI for Karmada
Apache License 2.0
49 stars 42 forks source link

Karmada-dashboard

License

English version|中文版

Karmada Dashboard is a general-purpose, web-based control panel for Karmada which is a multi-cluster management project. image

🚀QuickStart

Prerequisites

You need to have a Karmada installed on Kubernetes(aka. host cluster) and the karmadactl or kubectl command-line tool must be configured to communicate with your host cluster and Karmada control plane.

If you don't already have the Karmada, you can launch one by following this tutorial.


Install Karmada-dashboard

In the following steps, we assumed that you follow this tutorial to set up a minimal environment with Karmada, for administrator who manage multi cluster with karmada, all the experience from minimal environment is reusable, there won't be a lot of differences.

1.Switch user-context to karmada-host

export KUBECONFIG="$HOME/.kube/karmada.config"
kubectl config use-context karmada-host

2.Deploy Karmada-dashboard, we choose to export karmada dashboard by nodePort, which will free of any dependencies.

kubectl apply -k artifacts/overlays/nodeport-mode

When the process of installation finished, you can visit the karmada dashboard by http://your-karmada-host:32000

You still need the jwt token to login to the dashboard.

3.Create Service Account

switch user-context to karmada-apiserver:

kubectl config use-context karmada-apiserver

Create Service Account:

kubectl apply -f artifacts/dashboard/karmada-dashboard-sa.yaml

4.Get jwt token

Execute the following code to get the jwt token:

kubectl -n karmada-system get secret/karmada-dashboard-secret -o go-template="{{.data.token | base64decode}}"

it should print results like this:

eyJhbGciOiJSUzI1NiIsImtpZCI6InZLdkRNclVZSFB6SUVXczBIRm8zMDBxOHFOanQxbWU4WUk1VVVpUzZwMG8ifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrYXJtYWRhLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJrYXJtYWRhLWRhc2hib2FyZC10b2tlbi14NnhzcCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJrYXJtYWRhLWRhc2hib2FyZCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6ImE5Y2RkZDc3LTkyOWYtNGM0MS1iZDY4LWIzYWVhY2E0NGJiYiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDprYXJtYWRhLXN5c3RlbTprYXJtYWRhLWRhc2hib2FyZCJ9.F0BqSxl0GVGvJZ_WNwcEFtChE7joMdIPGhv8--eN22AFTX34IzJ_2akjZcWQ63mbgr1mVY4WjYdl7KRS6w4fEQpqWkWx2Dfp3pylIcMslYRrUPirHE2YN13JDxvjtYyhBVPlbYHSj7y0rvxtfTr7iFaVRMFFiUbC3kVKNhuZtgk_tBHg4UDCQQKFALGc8xndU5nz-BF1gHgzEfLcf9Zyvxj1xLy9mEkLotZjIcnZhwiHKFYtjvCnGXxGyrTvQ5rgilAxBKv0TcmjQep_TG_Q5M9r0u8wmxhDnYd2a7wsJ3P3OnDw7smk6ikY8UzMxVoEPG7XoRcmNqhhAEutvcJoyw

Login Dashboard

Now open Karmada-dashboard with url [http://your-karmada-host:32000 ]()

copy the token you just generated and paste it into the Enter token field on the login page. image Once the process of authentication passed, you can use karmada dashboard freely. You can follow the Usage of karmada-dashboard to have a quick experience of karmada dashboard.

Meeting

Regular Meeting For dashboard:

Resources:

💻Contributing

Karmada dashboard is still catching up with the features of Karmada, we have only implemented the basic functionalities currently. If you want to contribute to the development of the Karmada dashboard, you can refer to the document of development, we are happy to see more contributors join us. Please feel free to submit issues or pull requests to our repository.

License

Karmada-dashboard is under the Apache 2.0 license. See the LICENSE file for details.