Monitor your Managed K8s

Objective

This document provides instructions on how to monitor your managed K8s cluster using VoltConsole. To know more about managed K8s, see Create and Deploy Managed K8s.

Using the instructions provided in this document, you can view the various dashboard views associated with your managed K8s cluster and take appropriate steps as per your requirement to enhance its functioning or deliver corrective actions.


Prerequisites


Monitor Managed K8s Cluster

Log into the VoltConsole and perform the following actions:

Find Managed K8s Cluster Site

  • Click System on the namespace selector to get into system namespace and click Sites -> Site List.

nav pk8s mon
Figure: Navigate namespace

  • Click ... -> Monitor K8s Cluster for your VoltStack site in which the managed K8s cluster is created.

Note: Only in case of VoltStack site with K8s cluster enabled, the monitoring option is visible.


Explore Managed K8s Cluster

The K8s cluster monitoring shows dashboard view for the K8s cluster and also individual views for associated K8s resources such as deployments, services, jobs, etc.

The following utlities are helpful in filtering the display as per your need:

  • Managed K8s cluster monitoring provides one or all of the following filters for the various tabs. Click on a filter and select a value from the available list to filter the page display accordingly. You can apply combination of filters to view information as per your need.

    • Namespace - Select one or more namespaces from the list to display information for the selected namespaces.
    • Deployment - Select one or more deployments from the list to display information for the selected deployments.
    • Status - Select one or more status values from the list to display information for the selected status values.
  • On the upper right side of a page, you may find options for Search, Refresh, Show/hide column, or the time interval selector. For some pages, there may be only a few of these options and for some pages, all of these options may be present. You can use these options to set your display preferences or filter the display for a condition or refresh the display.

Note: Click > located on the left side of a listed entry in any tab to display its details in JSON format.

Go through the following list for information on each view.

Dashboard: Inspect the managed K8s dashboard page.

Monitoring of managed K8s cluster displays dashboard page by default. This page shows the snapshot view for the following K8s entities:

  • Pods - Shows the pods of this cluster and they are shown grouped as per their status. Clicking on Pods switches to the Pods page.
  • Applications - Shows the snapshot view of K8s app resources such as deployments, stateful sets, jobs, services, etc. Click on any of the resources to switch to its respective page view.
  • CPU Usage
  • Memory Usage
  • Storage

dashboard pk8s
Figure: Managed K8s Dashboard View

Note: Click on the Namespace drop-down list and select a namespace to display the dashboard view only for that namespace. You can select multiple namespaces and the dashboard shows aggregate data. Data for all namespaces is displayed by default.

Nodes and Namespaces Inspect nodes and namespaces view.
  • Click on Nodes tab to view the nodes of your cluster site. Click > for a node to display the status of each node in JSON format.
  • Click on the Namespaces tab to view the list of namespaces in your cluster and associated information. This view also shows the K8s resources in each namespace such as deployments, jobs, services, etc.

Note: Click on any non-zero value of a K8s resource to load that resource monitoring tab filtered for that namespace. For example, if you click on Pods value for monitoring namespace, the view switches to pods page showing the pod details in the monitoring namespace.

Deployments: Inspect deployments.
  • Click Deployments tab to display the list of deployments for each namespace. The deployments page also shows information on pods, sites, and upgrade for each deployment in a namespace. Click > for a deployment to display its details in JSON format.

pk8s deployment
Figure: Managed K8s Deployments View

  • Click Upgrade in the Upgrade Available column for any deployment to upgrade the deployment. The Update images window slides in showing the list of containers and images. Do the following:

    • Click ... -> Edit for an image, enter the image version in the new version window, and click Save.
    • Click Save in the update images window.
  • Click ... and view events or conditions for a deployment as per the following guidelines:

    • Select Show events to display list of recent events related to that deployment. Events within the last 24 hours are displayed by default. Click Last 24 hours drop-down list to select another interval or select Custom to set a custom interval.
    • Select Show conditions to display a list of current conditions for that deployment.
    • Click > for an event or condition to display its details in JSON format.

Note: Click on any non-zero value of pods or sites to open the pods page filtered for that namespace.

Stateful Sets: Inspect StatefulSets.
  • Click Stateful Sets tab to view the list of StatefulSets and associated namespaces. This view also shows the number of total and running pods related to each StatefulSet.
  • Click on any non-zero value of pods to open the pods page filtered for that namespace. Pods related to the StatefulSet in that namespace are displayed.
  • Click > for a StatefulSet to display its details in JSON format.
Daemon Sets: Inspect Daemon Sets.
  • Click Daemon Sets tab to view the list of DaemonSets and associated namespaces. This view also shows the number of total and running pods related to each DaemonSet.
  • Click on any non-zero value of pods to open the pods page filtered for that namespace. Pods related to the DaemonSet in that namespace are displayed.
  • Click > for a DaemonSet to display its details in JSON format.
Jobs and Cronjobs: Inspect Jobs and Cronjobs.
  • Click Jobs or Cronjob tab to view the list of jobs and associated namespaces. This view also shows the number of total and completed pods related to each job or cronjob.

The following is a sample image for the jobs view. Cronjobs display is similar to the jobs view.

pk8s jobs
Figure: Managed K8s Jobs View

  • Click on any non-zero value of pods to open the pods page filtered for that namespace. Pods related to the job or cronjob in that namespace are displayed.
  • Click > for a job or cronjob to display its details in JSON format.
PVCs: Inspect PersistentVolumeClaims (PVCs).
  • Click PVCs tab to view the list of PVCs and associated namespaces. This view also shows volumes, resource, and resource version columns for each PVC.
  • Click on any non-zero value of volumes to see the information for each volume. The information displayed includes the storage capacity of the volume, host path, and access modes. Click > for a volume entry to display its details in JSON format.
  • Click > for a PVC to display its details in JSON format.
Services: Inspect services.
  • Click Services tab to display the list of K8s services and the namespaces in which they are deployed. This page also shows columns such as type, endpoints, ports, age, etc. Click > for a service entry to display its details in JSON format.

pk8s srvs
Figure: Managed K8s Services View

  • Click on any non-zero value of Endpoints column to view the endpoints information in a slide-in window. Click > for any endpoint entry to display its details in JSON format.
ConfigMaps: Inspect ConfigMaps.
  • Click Configmaps tab to view the list of ConfigMaps and associated namespaces. This view also shows datacount and age fields for each ConfigMap.
  • Click > for a ConfigMap to display its details in JSON format.
Secrets: Inspect secrets.
  • Click Secrets tab to view the list of secrets and associated namespaces. This view also shows UID and age fields for each secret.
  • Click > for a secret to display its details in JSON format.
ReplicaSets: Inspect ReplicaSets.
  • Click Replica Sets tab to view the list of ReplicaSets and associated namespaces. This view also shows UID and age fields for each ReplicaSet.
  • Click > for a ReplicaSet to display its details in JSON format.
Pods: Inspect pods.
  • Click Pods tab to display the list of pods and associated namespace. This page also shows columns such as its node, number of restarts, status, resource consumption, etc. Click > for a pod to display its details in JSON format.
  • The column Resource shows resource consumption for CPU and memory. It also displays trend in graphical format and hovering over any point on the trend curve shows the time and the consumption at that point of time.

pk8s pods
Figure: Managed K8s Pods View

  • Click on any pod name in the Name column to view the following pod information in a slide-in window:

    • The Events tab shows the pod related event list. You can filter the list to display specific events using the search option or time interval option.
    • The Logs tab shows the logs related to a pod selected using the Container to show logs from field. You can also search for a specific keyword using the search option in this view.
    • The Terminal tab allows you to execute a command for specific container selected using the Container to exec to option. Enter your command in the Command to execute field and click Connect.
    • The Resource Utilization tab shows the CPU, memory, and disk utilization. This page shows container name, usage, requests, request percentage, limits, limits percentage, and graph for the resource utilization over a period of time. Data is displayed for the past 24 hours by default. You can select a specific time interval or another custom 24 hour period using the time interval option. Hovering over any point on the trend curve shows the time and the consumption at that point of time.

Note: You can view the above data also by selecting the ... menu for any pod.

  • Click on any entry under the Status column to view details of the container statuses of the associated pod. Statuses for the pod and wingman containers are displayed. Click > for a container to display its details in JSON format.
Service Accounts: Inspect service accounts.
  • Click Service Accounts tab to view the list of service accounts and associated namespaces. This view also shows UID and age fields for each service account.
  • Click > for a service account to display its details in JSON format.
Roles & RoleBindings: Inspect roles and role bindings.
  • Click Roles and Role Bindings tabs to view the list of roles and role bindings respectively. This view also shows the associated namespace, UID, and age columns.
  • Click > for a role or role binding to display its details in JSON format.
Events & Audit Logs: Inspect events and audit logs.
  • Click Events and Audit Logs tabs to view the graphs/histograms of events and audit logs respectively. This view also shows the same data in list format beneath the graphs.

The following image shows events view. View for the audit logs page is similar to this view.

pk8s events
Figure: Managed K8s Events View

  • Hover over any bar to view the start time, end time, and count of events/audit logs captured for that time interval. Click on the bar to filter the display to the time interval that bar shows. The list beneath the graph also shows the events or audit logs for that time interval only.

Note: Alternatively, you can use the time interval filtering option on the upper right side to display data for a specific predefined interval or a custom 24 hour interval.

  • Click > for an event or audit log list entry to display its details in JSON format.

Note: Click Refresh on the top right side of any page to refresh the information displayed on the page. Next to the Refresh option, there is a drop-down option for some pages to set the time interval over which the view shows the data. You can select from pre-defined options or a set a custom interval for specific dates.


Concepts


API References