Book Image

Managing Kubernetes Resources Using Helm - Second Edition

By : Andrew Block, Austin Dewey
Book Image

Managing Kubernetes Resources Using Helm - Second Edition

By: Andrew Block, Austin Dewey

Overview of this book

Containerization is one of the best ways to implement DevOps, and learning how to execute it effectively is an essential part of a developer’s skillset. Kubernetes is the current industry standard for container orchestration. This book will help you discover the efficiency of managing applications running on Kubernetes with Helm. Starting with a brief introduction to Helm and its impact on users working with containers and Kubernetes, you’ll delve into the primitives of Helm charts and their architecture and use cases. From there, you’ll understand how to write Helm charts in order to automate application deployment on Kubernetes and work your way toward more advanced strategies. These enterprise-ready patterns are focused on concepts beyond the basics so that you can use Helm optimally, looking at topics related to automation, application development, delivery, lifecycle management, and security. By the end of this book, you’ll have learned how to leverage Helm to build, deploy, and manage applications on Kubernetes.
Table of Contents (18 chapters)
1
Part 1: Introduction and Setup
5
Part 2: Helm Chart Development
12
Part 3: Advanced Deployment Patterns

Scaffolding the Guestbook Helm chart

When developing a new Helm chart from scratch, it is often useful to start by running the helm create command, which has the following syntax:

helm create NAME [flags]

The helm create command provides a new project folder for your Helm chart. Inside, the folder contains a basic Helm chart scaffolding that you can use to begin developing your chart.

Let’s run the helm create command to scaffold our Guestbook Helm chart:

  1. In your terminal, within a directory where you would like to store Helm charts, run the helm create command:
    $ helm create guestbook
    Creating guestbook
  2. Review the list of files that have been created:
    $ ls –al guestbook
    .
    ..
    charts/
    Chart.yaml
    .helmignore
    templates/
    values.yaml
    $ ls –l guestbook/templates/
    deployment.yaml
    _helpers.tpl
    hpa.yaml
    ingress.yaml
    NOTES.txt
    serviceaccount.yaml
    service.yaml
    tests/

As you can see, the helm create command generated a new folder for you called guestbook...