Skip to content

ronballesteros/zarf

 
 

Repository files navigation

Zarf - Kubernetes Air Gap Buddy

zarf logo

Zarf massively simplifies the setup & administration of kubernetes clusters "across the air gap".

It provides a static go binary CLI that can pull, package, and install all the things your clusters need to run. It caches downloads (for speed), hashes packages (for security), and can even install the kubernetes cluster itself if you want it to.

Zarf runs on a bunch of operating systems and aims to support configurations ranging from "I want to run one, simple app" to "I need to support & dependency control a bunch of internet-disconnected clusters".

 

This repo is in transition from Repo1 by DoD Platform One to Github. See the announcments post for the latest URLs for this project during this transition.

 

 

If you're just getting into Zarf, you should...

Get Started

Using Zarf

Experience just how easy it is to go from zero to chainsaw wielding hero (of the Kubernetes cluster) using Zarf!

Read

Add Logging

Zarf components

Sometimes running your app in-cluster is enough—usually, it's not. Find out how to inject commonly-required, uber-useful functionality through the use of Zarf components.

Read

Roll Your Own

Custom packages

Once you're comfortable with the basic workflow & able to deploy someone else's Zarf deployment packages, it's time to roll your own. Here's how.

Coming Soon!

 

To understand the different modes of use, have a look at...

Simple Applications

Appliance Mode

If want to "run a Kubernetes app" but aren't into hand-rolling a cluster just for it, Zarf can help. Here's how, and why you might want to.

Coming Soon!

Disconnected GitOps

The Utility Cluster

Zarf overcomes the "the Air Gap problem" using a Kubernetes cluster (and k8s-native tooling) for the care & feeding of other k8s clusters.

Here's how it works and what ops/support looks like.

Coming Soon!

 

If you'd rather help develop Zarf, you should read...

Workstation Setup

Thinking about hacking on the Zarf binary itself? Or, perhaps you want to run the examples in an isolated environment (the same way we do)? Get your machine setup just right using these instructions!

Read

Build Your First Zarf

You've got a development workstation setup, so... now what? Why not build your own Zarf? Step-by-step instructions, here.

Read

Contribution Guide

As with most collaborative efforts there are guidelines for contributing to the project. Find out what they are & how to make them work, here.

Read

 

Or, for details & design decisions, check out...

Supported OSes

Zarf is intended to run on a variety of Operating Systems—you can find out which and discover how to take Zarf for a test-drive (in a VM of your favorite flavor) by clicking the link!

Read

Zarf Components

Need to understand what's happening in your cluster? Zarf can give you visibility by injecting a Logging component. Looking for some additional CLI tooling? Install the Management component.

Find out all the other stuff Zarf offers, here.

Read

Usage Examples

There are a bunch of interesting ways to use Zarf beyond "space-marine-ing" your way through the pixel demon invasion. Browse our examples directory to find out what other neat things are available.

Read

Iron Bank

Hardened image registry

Zarf can build deployment packages using images pulled from pretty much anywhere... but for gov't-approved & "hardened" container images check out Platform One's Iron Bank.

Read

 

Packages

No packages published

Languages

  • Go 95.3%
  • Makefile 2.0%
  • HCL 1.9%
  • Shell 0.8%