Skip to content

KubeSnapIt – A PowerShell tool for managing Kubernetes snapshots, restorations, and comparisons with ease. Capture snapshots of your Kubernetes resources, restore them when needed, and compare snapshots or live cluster states to track changes over time.

License

Notifications You must be signed in to change notification settings

KubeDeckio/KubeSnapIt

Repository files navigation

KubeSnapIt


Publish Module to PowerShell Gallery Publish Plugin to Krew PowerShell Gallery Version Downloads Krew Version License


KubeSnapIt is a PowerShell-based tool for Kubernetes that simplifies the management of Kubernetes resources by enabling users to take snapshots, compare configurations, and restore states efficiently. It is designed to help Kubernetes administrators and developers manage their cluster configurations effectively.

Documentation

For complete installation, usage, and advanced configuration instructions, please visit the KubeSnapIt Documentation Site.

Features

  • Resource Snapshotting: Capture the current state of Kubernetes objects (Deployments, Services, ConfigMaps, etc.) in YAML format.
  • Resource Diffing: Compare snapshots against live cluster states or between two local snapshots to identify changes.
  • Resource Restoration: Restore Kubernetes configurations from snapshots quickly and easily.
  • Automated Scheduled Snapshots: Schedule periodic snapshots for continuous configuration tracking.
  • Snapshot by Labels: Specify labels to filter which Kubernetes objects are included in snapshots.
  • Dry Run Mode: Simulate snapshotting or restoration processes without making any actual changes.
  • Verbose Logging: Get detailed logs of all operations using the -Verbose flag.

Installation

PowerShell Gallery

To install KubeSnapIt via PowerShell Gallery:

Install-Module -Name KubeSnapIt -Repository PSGallery -Scope CurrentUser

Krew (Linux and macOS)

To install KubeSnapIt as a kubectl plugin using Krew:

# Fetch the latest release tag using GitHub's API
LATEST_VERSION=$(curl -s https://api.github.com/repos/KubeDeckio/KubeSnapIt/releases/latest | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/')

# Download the KubeSnapIt.yaml file from the latest release
curl -L -H "Cache-Control: no-cache" -O /~https://github.com/KubeDeckio/KubeSnapIt/releases/download/$LATEST_VERSION/KubeSnapIt.yaml

# Install the plugin using the downloaded KubeSnapIt.yaml file
kubectl krew install --manifest="./KubeSnapIt.yaml"

Platform Support

KubeSnapIt installed via Krew is supported on Linux and macOS. It does not support Windows at this time.

For additional instructions, refer to the KubeSnapIt Documentation Site.

Changelog

All notable changes to this project are documented in the CHANGELOG.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

About

KubeSnapIt – A PowerShell tool for managing Kubernetes snapshots, restorations, and comparisons with ease. Capture snapshots of your Kubernetes resources, restore them when needed, and compare snapshots or live cluster states to track changes over time.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •