k8s

Install and manage plain Kubernetes installs

943 downloads

563 latest version

4.7 quality score

Version information

  • 2.0.1 (latest)
  • 2.0.0
  • 1.0.0
released Feb 23rd 2024
This version is compatible with:
  • Puppet Enterprise 2023.2.x, 2023.1.x, 2023.0.x, 2021.7.x, 2021.6.x, 2021.5.x, 2021.4.x, 2021.3.x, 2021.2.x, 2021.1.x, 2021.0.x
  • Puppet >= 7.0.0 < 8.0.0
  • CentOS
    ,
    Debian
    ,
    Ubuntu

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'puppet-k8s', '2.0.1'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add puppet-k8s
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install puppet-k8s --version 2.0.1

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

puppet/k8s — version 2.0.1 Feb 23rd 2024

k8s

Table of Contents


Description

This module installs, configures, and manages a Kubernetes cluster built from loose components.

The main focus is towards the current stable versions of K8s (1.18.x+), but it should be able to handle both older and newer versions without issues.

Usage

Set k8s::server::etcd_servers to a list of servers or k8s::puppetdb_discovery to true.

Setting up a server node (apiserver, controller-manager, scheduler):

class { 'k8s':
  role               => 'server',
  control_plane_url  => 'https://kubernetes.example.com:6443',
# generate_ca        => true, # Only set true temporarily to avoid overwriting the old secrets
# puppetdb_discovery => true, # Will use PuppetDB PQL queries to manage etcd and nodes
}

Setting up a client node (kubelet, kube-proxy):

class { 'k8s':
  role              => 'node',
  control_plane_url => 'https://kubernetes.example.com:6443',
}

Examples

For more in-detail examples see the examples.

Reference

All parameters are documented within the classes. Markdown documentation is available in the REFERENCE.md file, it also contains examples.