Skip to content

Visualize Kubernetes & DevSecOps Workflows. Tracks changes/events real-time across your entire K8s clusters, git repos, container registries, SBOM, Vulnerability foot print, etc. , analyzing their effects and providing you with the context you need to troubleshoot efficiently. Get the Observability you need, easily.

Notifications You must be signed in to change notification settings

intelops/kubviz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0350f96 · Jul 19, 2023
Jul 14, 2023
Jul 8, 2023
Jul 19, 2023
Jul 19, 2023
Jul 11, 2023
Jul 19, 2023
Jun 6, 2023
Jul 11, 2023
Jul 5, 2023
Jul 19, 2023
Jul 11, 2023
Mar 13, 2022
Aug 1, 2022
Jul 8, 2023
Jan 11, 2022
Jul 6, 2023
Jan 16, 2022
Jul 16, 2023
Jul 8, 2023
Jul 8, 2023
Jul 11, 2023
Jul 11, 2023
Jul 10, 2023
Jul 8, 2023

Repository files navigation

KubViz: Visualize Kubernetes & DevSecOps Workflows.

Docker Image CI Client Docker Image CI CodeQL Go Report Card

Price Discussions Code of Conduct License


KubViz

Visualize Kubernetes & DevSecOps Workflows. Tracks changes/events real-time across your entire K8s clusters, git repos, container registries, SBOM, Vulnerability foot print, etc. , analyzing their effects and providing you with the context you need to troubleshoot efficiently. Get the Observability you need, easily.

How KubViz works

Kubviz client can be installed on any Kubernetes cluster. Kubviz agent runs in a kubernetes cluster where the changes/events need to be tracked. The agent detects the changes in real time and send those events via NATS JetStream and the same is received in the kubviz client.

Kubviz client receives the events and passes it to Clickhouse database. The events present in the Clickhouse database can be visualized through Grafana or Vizual App.

Architecture diagram

Arch. Diagram

How to install and run Kubviz:

Prerequisites

  • A Kubernetes cluster
  • Helm binary

Prepare Namespace

kubectl create namespace kubviz

Client Installation

helm repo add kubviz https://intelops.github.io/kubviz/
helm repo update

token=$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)
helm upgrade -i kubviz-client kubviz/client -n kubviz --set "nats.auth.token=$token"

NOTE:

  • If you want to enable Grafana with the agent deployment, add --set grafana.enabled=true to the helm upgrade command.

  • The kubviz client will also install NATS and Clickhouse. The NATS service is exposed as a LoadBalancer, and you need to note the external IP of the service kubviz-client-nats-external and pass it during the kubviz agent installation.

    kubectl get services kubviz-client-nats-external -n kubviz --output jsonpath='{.status.loadBalancer.ingress[0].ip}'

Agent Installation

Deploying Agent on the Same Kubernetes Cluster as kubeviz Client:
  1. Make sure you have the kubeviz client running on your Kubernetes cluster.
  2. Run the following command to deploy the kubeviz agent:
helm upgrade -i kubviz-agent kubviz/agent -n kubviz \
  --set nats.host=<NATS IP ADDRESS> \
  --set "nats.auth.token=$token" \
  --set git_bridge.enabled=true \
  --set "git_bridge.ingress.hosts[0].host=<INGRESS HOSTNAME>",git_bridge.ingress.hosts[0].paths[0].path=/ \
  --set container_bridge.enabled=true \
  --set "container_bridge.ingress.hosts[0].host=<INGRESS HOSTNAME>",container_bridge.ingress.hosts[0].paths[0].path=/
  1. Replace "NATS IP ADDRESS" with the IP address of your NATS server.
  2. Replace "INGRESS HOSTNAME" with the desired hostname for the Git Bridge and Container Bridge Ingress configurations.
Deploying Agent on a Different Kubernetes Cluster:
  1. Run the following command to deploy the kubeviz agent:
helm upgrade -i kubviz-agent kubviz/agent -n kubviz --set nats.host=<NATS IP Address> --set "nats.auth.token=$token"  
  1. Replace "NATS IP Address" with the IP address of your NATS server.

Use Cases

Cluster Event Tracking

Cluster Events


Use kubviz to monitor your cluster events, including:

  • State changes
  • Errors
  • Other messages that occur in the cluster


Deprecated Kubernetes APIs

Deprecated Kubernetes APIs


  • Visualize Deprecated Kubernetes APIs: KubeViz provides a clear visualization of deprecated Kubernetes APIs, allowing users to easily identify and update their usage to comply with the latest Kubernetes versions
  • Track Outdated Images: With KubeViz, you can track and monitor outdated images within your clusters, ensuring that you are using the most up-to-date and secure versions.
  • Identify Deleted APIs: KubeViz helps you identify any deleted APIs in your clusters, guiding you to find alternative approaches or replacements to adapt to changes in Kubernetes APIs.


Contributing

You are warmly welcome to contribute to Compage. Please refer the detailed guide CONTRIBUTING.md.

Code of Conduct

See CODE_OF_CONDUCT.md

License

Refer the licence - LICENCE.

Join our Slack channel

About

Visualize Kubernetes & DevSecOps Workflows. Tracks changes/events real-time across your entire K8s clusters, git repos, container registries, SBOM, Vulnerability foot print, etc. , analyzing their effects and providing you with the context you need to troubleshoot efficiently. Get the Observability you need, easily.

Topics

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Languages