github.com/vtuson/helm@v2.8.2+incompatible/docs/quickstart.md (about)

     1  # Quickstart Guide
     2  
     3  This guide covers how you can quickly get started using Helm.
     4  
     5  ## Prerequisites
     6  
     7  The following prerequisites are required for a successful and properly secured use of Helm.
     8  
     9  1. A Kubernetes cluster
    10  2. Deciding what security configurations to apply to your installation, if any
    11  3. Installing and configuring Helm and Tiller, the cluster-side service.
    12  
    13  
    14  ### Install Kubernetes or have access to a cluster
    15  - You must have Kubernetes installed. For the latest release of Helm, we recommend the latest stable release of Kubernetes, which in most cases is the second-latest minor release. 
    16  - You should also have a local configured copy of `kubectl`.
    17  
    18  NOTE: Kubernetes versions prior to 1.6 have limited or no support for role-based access controls (RBAC).
    19  
    20  Helm will figure out where to install Tiller by reading your Kubernetes
    21  configuration file (usually `$HOME/.kube/config`). This is the same file
    22  that `kubectl` uses.
    23  
    24  To find out which cluster Tiller would install to, you can run
    25  `kubectl config current-context` or `kubectl cluster-info`.
    26  
    27  ```console
    28  $ kubectl config current-context
    29  my-cluster
    30  ```
    31  
    32  ### Understand your Security Context
    33  
    34  As with all powerful tools, ensure you are installing it correctly for your scenario.
    35  
    36  If you're using Helm on a cluster that you completely control, like minikube or a cluster on a private network in which sharing is not a concern, the default installation -- which applies no security configuration -- is fine, and it's definitely the easiest. To install Helm without additional security steps, [install Helm](#Install-Helm) and then [initialize Helm](#initialize-helm-and-install-tiller).
    37  
    38  However, if your cluster is exposed to a larger network or if you share your cluster with others -- production clusters fall into this category -- you must take extra steps to secure your installation to prevent careless or malicious actors from damaging the cluster or its data. To apply configurations that secure Helm for use in production environments and other multi-tenant scenarios, see [Securing a Helm installation](securing_installation.md)
    39  
    40  If your cluster has Role-Based Access Control (RBAC) enabled, you may want
    41  to [configure a service account and rules](rbac.md) before proceeding.
    42  
    43  ## Install Helm
    44  
    45  Download a binary release of the Helm client. You can use tools like
    46  `homebrew`, or look at [the official releases page](https://github.com/kubernetes/helm/releases).
    47  
    48  For more details, or for other options, see [the installation
    49  guide](install.md).
    50  
    51  ## Initialize Helm and Install Tiller
    52  
    53  Once you have Helm ready, you can initialize the local CLI and also
    54  install Tiller into your Kubernetes cluster in one step:
    55  
    56  ```console
    57  $ helm init
    58  ```
    59  
    60  This will install Tiller into the Kubernetes cluster you saw with
    61  `kubectl config current-context`.
    62  
    63  **TIP:** Want to install into a different cluster? Use the
    64  `--kube-context` flag.
    65  
    66  **TIP:** When you want to upgrade Tiller, just run `helm init --upgrade`.
    67  
    68  By default, when Tiller is installed,it does not have authentication enabled.
    69  To learn more about configuring strong TLS authentication for Tiller, consult
    70  [the Tiller TLS guide](tiller_ssl.md).
    71  
    72  ## Install an Example Chart
    73  
    74  To install a chart, you can run the `helm install` command. Helm has
    75  several ways to find and install a chart, but the easiest is to use one
    76  of the official `stable` charts.
    77  
    78  ```console
    79  $ helm repo update              # Make sure we get the latest list of charts
    80  $ helm install stable/mysql
    81  Released smiling-penguin
    82  ```
    83  
    84  In the example above, the `stable/mysql` chart was released, and the name of
    85  our new release is `smiling-penguin`. You get a simple idea of the
    86  features of this MySQL chart by running `helm inspect stable/mysql`.
    87  
    88  Whenever you install a chart, a new release is created. So one chart can
    89  be installed multiple times into the same cluster. And each can be
    90  independently managed and upgraded.
    91  
    92  The `helm install` command is a very powerful command with many
    93  capabilities. To learn more about it, check out the [Using Helm
    94  Guide](using_helm.md)
    95  
    96  ## Learn About Releases
    97  
    98  It's easy to see what has been released using Helm:
    99  
   100  ```console
   101  $ helm ls
   102  NAME             VERSION   UPDATED                   STATUS    CHART
   103  smiling-penguin  1         Wed Sep 28 12:59:46 2016  DEPLOYED  mysql-0.1.0
   104  ```
   105  
   106  The `helm list` function will show you a list of all deployed releases.
   107  
   108  ## Uninstall a Release
   109  
   110  To uninstall a release, use the `helm delete` command:
   111  
   112  ```console
   113  $ helm delete smiling-penguin
   114  Removed smiling-penguin
   115  ```
   116  
   117  This will uninstall `smiling-penguin` from Kubernetes, but you will
   118  still be able to request information about that release:
   119  
   120  ```console
   121  $ helm status smiling-penguin
   122  Status: DELETED
   123  ...
   124  ```
   125  
   126  Because Helm tracks your releases even after you've deleted them, you
   127  can audit a cluster's history, and even undelete a release (with `helm
   128  rollback`).
   129  
   130  ## Reading the Help Text
   131  
   132  To learn more about the available Helm commands, use `helm help` or type
   133  a command followed by the `-h` flag:
   134  
   135  ```console
   136  $ helm get -h
   137  ```