Detailed Study On Kubernetes Dashboard

Kubernetes has a popular web-based dashboard called Dashboard. The dashboard may be used to manage the Kubernetes cluster and troubleshoot the containerized application when delivering apps to a Kubernetes cluster that will be containerized.

A very popular web-based user interface of Kubernetes is known as Dashboard. For the purpose of deploying applications to a Kubernetes cluster which will be containerized, managing the cluster with the help of attendant resources and also to troubleshoot the containerized application can be done with the help of dashboard. This system can also be used to get a broad view on those applications that are running on the Kubernetes cluster and also help in creating or modifying certain individual Kubernetes resources like jibs, Daemon Sets, deployment and many more. In the cluster there are several Kubernetes resources and Dashboard helps in providing information regarding the state of these resources. One thing that you should remember is that Dashboard UI cannot be deployed by default. 

Enthusiastic about exploring the skill set of Kubernetes? Then, have a look at the Kubernetes Training Course together additional knowledge. 

In this blog we will discuss about the following topics:

Learn - Kubernetes Dashboard

How to access the Dashboard UI?

Either by making use of kubectl command line interface or by accessing the master apiserver of Kubernetes by using web browser, there are several ways in which you can access the dashboard UI. 

  • Command line proxy – With help of the command line kubectl proxy you can access the dashboard. The authentication with apiserver is handled by Kubectl and there is the availability of Dashboard at http://localhost:8001/ui. The dashboard UI can only be accessed from the machine where the command was executed. 
  • Master Server – To access the dashboard UI directly through the Kubernetes aster apiserver you may want go to https:///ui. In the above mentioned URL, the is the domain name or IP address of the Kubernetes master. This only works when the apiserver of the Kubernetes is set up in such a way so that it allows authentication with user name and password. 

The view of the welcome page

On accessing the dashboard on an empty cluster you will find that the welcome page. This page will contain a button that will deploy your first application. Also you can see which system applications that are running by default in the namespace of the cluster. 

 MindMajix YouTube Channel

How to deploy containerized applications?

With the help of dashboard you can also create and deploy a containerized application in the form of deployment and optional service with a simple wizard. You are provided with two options. You can specify application details manually. You can also upload a YAML or JSON file that contains the application configuration. In order to access the deploy wizard that is present in the welcome page you have the right button. I order to access the wizard at later point you can always click the create button that is present at the upper right side of the page.

   Containerized Applications

Information regarding the deploy wizards are:-

Application details specifications

  • App name – App name is mandatory and you have to give a name to your application. The name along with a label will be added to the deployment and service and it will also be deployed. Within the chosen Kubernetes namespace, the application name should be unique. The starting should be with a lowercase character and the ending should be with a lowercase character or number and it should also contain only lowercase letters, dashes and numbers. The limit should be of 24 characters. You should ignore the trailing and leading spaces. 
  • Container Image – This is also mandatory. The URL that is part of a public Docker container image on any private image or any registry. There should be a colon at the end of the container image specification. 
  • Number of pods – This is mandatory and the number of pods that should be targeted should depend on the number of application to be deployed. This number of pods should be a positive value. In order to maintain the desired quantity of number of pods throughout the cluster a deployment should be made. 
  • Service – This is optional. You may want to expose a service onto an external cluster for some parts of the application. This external part maybe public IP address that is outside of the cluster. This is known as external service. In case of external service, there is the need to open one or more than one ports. The internal services are those which are only visible from the inside part of the cluster. But if you want to create a service you need to specify two ports and lo the container listens on a port which is considered as the incoming port. 
  • Description – The text which is has been entered will be added as an annotation to the deployment and it is also displayed in the application.
  • Labels – The default labels that are used are for the application are the application name and also version. Also you have the liberty to mention other labels that are to be applied to the service, deployment and pods which will include release, environment, partition, and tier and also release track. 
  • Namespace – Multiple virtual clusters are supported by Kubernetes. These clusters are also backed by the same physical cluster. The term that is denoted for these virtual clusters is namespace. With the help of this, you are able to partition resources into logical groups. All types of namespace options are available in a drop form list of dashboard. Maximum of 63 alphanumeric characters and dashes are allowed in a namespace. But there is no allowance of capital letters. It should also not consist of only numbers. This is because if a namespace only consist of number the pod will be directed into a default namespace. 
  • Image pull secret - Pull secret credentials is required when is a specified Docker container the image is private. The pull server credentials are listed in a drop down list. The content of the secret should consist of base 64 encode and the name consist of 253 characters. 
  • CPU requirement and memory requirement - There is the option which allows you to mention the minimum resource limit of the container. Pods run with unbounded memory limit and CPU, by default. 
  • Run as privileged - With the help of this option you can determine if a process in a privileged is equal to those processes that are running on the host. Accessing devices and also manipulating network stack are the capabilities that are possessed by privileged containers.
  • Environmental variables - Through the environment variables, Kubernetes exposes services. Using the values of environmental variables, you can create environment variables or you can pass arguments to your command.

Get ahead in your career by learning CKAD through Mindmajix CKAD Training.

Process of uploading a JSON or YAML file

Declarative configurations are supported by Kubernetes. Here, all types of configurations are stored in JSON or YAML configure a file that is done by using API resource schemas. Another alternative method to specify application details in case of deploy wizard, users have the permission to define their application in the form of YAML or JSON file and then upload the files with the help of dashboard. 

How to use the dashboard? 

Navigation process 
Dashboard showcases the Kubernetes objects in initial view if they are defined in cluster. The objects from the default namespace are only shown by default. The user can also change is by using the namespace selector which is situated in the navigation menu. With the help of dashboard, objects of the Kubernetes are shown and they are also grouped in menu categories. 

Role of admin option 
The role of an admin button is to view for cluster and namespace administration. With the help of this you can list nodes, persistent volumes and namespace. It contains details view of the nodes, volumes and namespace. Throughout the year node, the CPU and memory usage metrics are aggregated and the node list view contains all the details.

Workloads 
The status of all applications running in a selected namespace is shown at entry point view. The view makes a list of applications by workload kind like deployments, stateful sets, replica sets and many more. Also each type of workload kind can be viewed separately. The list contains all the information about the workload which includes the number of pods that are ready for a replica set or a usage of pods for current memory. 

Discovery and services
Those Kubernetes resources that will allow exposing services to external world are shown by services and discovery views. These are discovered within a cluster. 

Storage 
The persistent volume claim resources are shown by storage view and they are so used by applications for storing data.

Config option 
All Kubernetes resources which are being used for live configuration of those applications that are running in cluster are shown by configuration view. There are also config maps and secrets. With the view, permission for editing and also managing Config objects are and to display secrets that are hidden by default is given. 

Logs reviewer 
The logs viewer has the link to pod lists and detail pages and they are built into dashboard.

Conclusion

Dashboard is used for providing information regarding the state of the Kubernetes resources that is present in the cluster. They are also present on any types to error which might have occurred. Dashboard is a web based Kubernetes user interface is highly useful.

                       Check Out Kubernetes Tutorials

 

Course Schedule
NameDates
Kubernetes TrainingJul 27 to Aug 11View Details
Kubernetes TrainingJul 30 to Aug 14View Details
Kubernetes TrainingAug 03 to Aug 18View Details
Kubernetes TrainingAug 06 to Aug 21View Details
Last updated: 23 Feb 2024
About Author

Sandeep is working as a Senior Content Contributor for Mindmajix, one of the world’s leading online learning platforms. With over 5 years of experience in the technology industry, he holds expertise in writing articles on various technologies including AEM, Oracle SOA, Linux, Cybersecurity, and Kubernetes. Follow him on LinkedIn and Twitter.

read less