blob: b3e830f55e52bdd15edd778e377496bd23831c17 [file] [log] [blame]
Yuriy Taraday131227e2017-06-22 15:09:34 +04001
Ales Komarekba180382017-09-14 09:42:03 +02002============
3Helm formula
4============
Yuriy Taraday131227e2017-06-22 15:09:34 +04005
Yuriy Taraday434490c2017-08-22 17:40:01 +04006This formula installs Helm client, installs Tiller on Kubernetes cluster and
7creates releases in it.
Yuriy Taraday131227e2017-06-22 15:09:34 +04008
Ales Komarekba180382017-09-14 09:42:03 +02009
Yuriy Taraday131227e2017-06-22 15:09:34 +040010Sample pillars
11==============
12
tmeneaucf41dc32017-10-16 15:23:05 -040013See the [pillar.example](pillar.example) for a documented example pillar file.
14
15Example Configurations
16======================
17
18_The following examples demonstrate configuring the formula for different
19use cases._
20
Yuriy Taraday434490c2017-08-22 17:40:01 +040021Enable formula, install helm client on node and tiller on Kubernetes (assuming
22already configured kubectl config or local cluster endpoint):
Yuriy Taraday131227e2017-06-22 15:09:34 +040023
24.. code-block:: yaml
25
26 helm:
27 client:
28 enabled: true
Yuriy Taraday434490c2017-08-22 17:40:01 +040029
30Change version of helm being downloaded and installed:
31
32.. code-block:: yaml
33
34 helm:
35 client:
tmeneaucf41dc32017-10-16 15:23:05 -040036 version: 2.6.0 # defaults to 2.6.2 currently
Yuriy Taraday434490c2017-08-22 17:40:01 +040037 download_hash: sha256=youneedtocalculatehashandputithere
38
39Don't install tiller and use existing one exposed on some well-known address:
40
41.. code-block:: yaml
42
43 helm:
44 client:
45 tiller:
46 install: false
47 host: 10.11.12.13:14151
48
49Change namespace where tiller is isntalled and looked for:
50
51.. code-block:: yaml
52
53 helm:
54 client:
55 tiller:
56 namespace: not-kube-system # kube-system is default
57
58Install Mirantis repository and deploy zookeper chart from it:
59
60.. code-block:: yaml
61
62 helm:
63 client:
64 repos:
65 mirantisworkloads: https://mirantisworkloads.storage.googleapis.com/
66 releases:
67 zoo1:
68 name: my-zookeeper
69 chart: mirantisworkloads/zookeeper # we reference installed repo
70 version: 1.2.0 # select any available version
71 values:
72 logLevel: INFO # any values used by chart can specified here
73
74Delete that release:
75
76.. code-block:: yaml
77
78 helm:
79 client:
80 repos:
81 mirantisworkloads: https://mirantisworkloads.storage.googleapis.com/
82 releases:
83 zoo1:
84 enabled: false
85
86Install kubectl and manage remote cluster:
87
88.. code-block:: yaml
89
90 helm:
91 client:
92 kubectl:
93 install: true # installs kubectl 1.6.7 by default
94 config:
tmeneaucf41dc32017-10-16 15:23:05 -040095 # directly translated to cluster definition in kubeconfig
96 cluster:
Yuriy Taraday434490c2017-08-22 17:40:01 +040097 server: https://kubernetes.example.com
98 certificate-authority-data: base64_of_ca_certificate
tmeneaucf41dc32017-10-16 15:23:05 -040099 cluster_name: kubernetes.example
100 # directly translated to user definition in kubeconfig
101 user:
Yuriy Taraday434490c2017-08-22 17:40:01 +0400102 username: admin
103 password: uberadminpass
tmeneaucf41dc32017-10-16 15:23:05 -0400104 user_name: admin
Yuriy Taraday434490c2017-08-22 17:40:01 +0400105
106Change kubectl download URL and use it with GKE-based cluster:
107
108.. code-block:: yaml
109
110 helm:
111 client:
112 kubectl:
113 install: true
114 download_url: https://dl.k8s.io/v1.6.7/kubernetes-client-linux-amd64.tar.gz
115 download_hash: sha256=calculate_hash_here
116 config:
tmeneaucf41dc32017-10-16 15:23:05 -0400117 # directly translated to cluster definition in kubeconfig
118 cluster:
Yuriy Taraday434490c2017-08-22 17:40:01 +0400119 server: https://3.141.59.265
120 certificate-authority-data: base64_of_ca_certificate
tmeneaucf41dc32017-10-16 15:23:05 -0400121 # directly translated to user definition in kubeconfig
Yuriy Taraday434490c2017-08-22 17:40:01 +0400122 user:
123 auth-provider:
124 name: gcp
tmeneaucf41dc32017-10-16 15:23:05 -0400125 user_name: gce_user
Yuriy Taraday434490c2017-08-22 17:40:01 +0400126 gce_service_token: base64_of_json_token_downloaded_from_cloud_console
Yuriy Taraday131227e2017-06-22 15:09:34 +0400127
128
Ales Komarekba180382017-09-14 09:42:03 +0200129More Information
130================
Yuriy Taraday131227e2017-06-22 15:09:34 +0400131
Ales Komarekba180382017-09-14 09:42:03 +0200132* https://github.com/kubernetes/charts
133* https://fabric8.io/helm/
Yuriy Taraday131227e2017-06-22 15:09:34 +0400134
135
Ales Komarekba180382017-09-14 09:42:03 +0200136Documentation and Bugs
137======================
Yuriy Taraday131227e2017-06-22 15:09:34 +0400138
Ales Komarekba180382017-09-14 09:42:03 +0200139To learn how to install and update salt-formulas, consult the documentation
140available online at:
Yuriy Taraday131227e2017-06-22 15:09:34 +0400141
Ales Komarekba180382017-09-14 09:42:03 +0200142 http://salt-formulas.readthedocs.io/
143
144In the unfortunate event that bugs are discovered, they should be reported to
145the appropriate issue tracker. Use Github issue tracker for specific salt
146formula:
147
148 https://github.com/salt-formulas/salt-formula-helm/issues
149
150For feature requests, bug reports or blueprints affecting entire ecosystem,
151use Launchpad salt-formulas project:
152
153 https://launchpad.net/salt-formulas
154
155You can also join salt-formulas-users team and subscribe to mailing list:
156
157 https://launchpad.net/~salt-formulas-users
158
159Developers wishing to work on the salt-formulas projects should always base
160their work on master branch and submit pull request against specific formula.
161
162 https://github.com/salt-formulas/salt-formula-home-assistant
163
164Any questions or feedback is always welcome so feel free to join our IRC
165channel:
166
167 #salt-formulas @ irc.freenode.net