kubernets helm - okay so my cluster's up, how do i manage all the sh*t to run my apps?
TRANSCRIPT
![Page 1: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/1.jpg)
Okay so my cluster’s up, now how do I manage all the sh*t to run my apps?
HelmMike Splain
Lead DevOps Engineer at Barkly
@mikesplain
github.com/mikesplain
![Page 2: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/2.jpg)
K8s at Barkly● Using since early 2015
● 5 K8s clusters
● 107 Instances across those clusters
● v1.4.9 (I know we’re behind :( )
![Page 3: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/3.jpg)
Problem.● Once you’ve tweaked your cluster to be perfect… whats next?
● Make a manifest
● Make another manifest
● Make 100 more manifests
![Page 4: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/4.jpg)
My App’s up and it works!
![Page 5: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/5.jpg)
201How many manifests does Barkly have?
![Page 6: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/6.jpg)
![Page 7: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/7.jpg)
Problem.● Multiple environments
● Multiple consumers of the manifests
● CI/CD flow of manifests themselves
● Testing?
![Page 8: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/8.jpg)
Helm“Helm is a tool for managing Kubernetes charts.
Charts are packages of pre-configured Kubernetes resources.”
chef cookbook/puppet module/ansible role - apt/yum/dnf + docker = helm chart
![Page 9: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/9.jpg)
Helm● Simple
● Reusable
● Versioned
● Dependency management
● Linux & OSX
![Page 10: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/10.jpg)
Helm Resources● helm.sh
● github.com/kubernetes/helm
● github.com/kubernetes/charts
● github.com/kubernetes/minikube (not required)
![Page 11: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/11.jpg)
Getting started
![Page 12: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/12.jpg)
$ brew install kubernetes-helm
Or grab prebuilt binaries on github
![Page 13: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/13.jpg)
$ helm initCreating /Users/mike/.helmCreating /Users/mike/.helm/repositoryCreating /Users/mike/.helm/repository/cacheCreating /Users/mike/.helm/repository/localCreating /Users/mike/.helm/pluginsCreating /Users/mike/.helm/startersCreating /Users/mike/.helm/repository/repositories.yamlWriting to /Users/mike/.helm/repository/cache/stable-index.yaml$HELM_HOME has been configured at /Users/mike/.helm.Happy Helming!
![Page 14: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/14.jpg)
Tiller:● Listening for incoming requests from the Helm client
● Combining a chart and configuration to build a release
● Installing charts into Kubernetes, and then tracking the subsequent release
● Upgrading and uninstalling charts by interacting with Kubernetes
● Data stored in configmaps
![Page 15: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/15.jpg)
$ helm install --name failed-demo1 stable/jenkins
Local Helm
Kubernetes-charts.Storage.googleapis.com
Tiller in K8s Cluster
Adds custom configs
![Page 16: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/16.jpg)
● mongodb
● mysql
● nginx-ingress
● nginx-lego
● odoo
● opencart
● openvpn
● orangehrm
● osclass
● owncloud
● phabricator
● phpbb
● postgresql
● prestashop
● influxdb
● jasperreports
● jenkins
● joomla
● kapacitor
● kube-lego
● kube2iam
● linkerd
● magento
● mariadb
● mediawiki
● memcached
● minecraft
● minio
● aws-cluster-autoscaler
● chaoskube
● chronograf
● cockroachdb
● concourse
● datadog
● dokuwiki
● drupal
● etcd-operator
● factorio
● gcloud-endpoints
● ghost
● gitlab-ce
● grafana
Current stable charts (57)● prometheus
● rabbitmq
● redis
● redmine
● sapho
● sensu
● spark
● spartakus
● spinnaker
● sumokube
● telegraf
● testlink
● traefik
● uchiwa
● wordpress
![Page 17: Kubernets Helm - Okay so my cluster's up, how do I manage all the sh*t to run my apps?](https://reader035.vdocuments.site/reader035/viewer/2022080500/58d15a481a28ab41128b6a09/html5/thumbnails/17.jpg)
Lets try a few!