Back to Charts

⚠️ Repo Archive Notice

stable/kube2iam/README.md

latest4.7 KB
Original Source

⚠️ Repo Archive Notice

As of Nov 13, 2020, charts in this repo will no longer be updated. For more information, see the Helm Charts Deprecation and Archive Notice, and Update.

kube2iam

Installs kube2iam to provide IAM credentials to pods based on annotations.

DEPRECATION NOTICE

This chart is deprecated and no longer supported.

TL;DR;

console
$ helm install stable/kube2iam

Introduction

This chart bootstraps a kube2iam deployment on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes 1.4+ with Beta APIs enabled

Installing the Chart

To install the chart with the release name my-release:

console
$ helm install stable/kube2iam --name my-release

The command deploys kube2iam on the Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation.

Uninstalling the Chart

To uninstall/delete the my-release deployment:

console
$ helm delete my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following table lists the configurable parameters of the kube2iam chart and their default values.

ParameterDescriptionDefault
affinityaffinity configuration for pod assignment{}
extraArgsAdditional container arguments{}
extraEnvAdditional container environment variables{}
host.ipIP address of host$(HOST_IP)
host.iptablesAdd iptables rulefalse
host.interfaceHost interface for proxying AWS metadatadocker0
host.portPort to listen on8181
image.repositoryImagejtblin/kube2iam
image.tagImage tag0.10.7
image.pullPolicyImage pull policyIfNotPresent
image.pullSecretsImage pull secrets[]
nodeSelectornode labels for pod assignment{}
podAnnotationsannotations to be added to pods{}
priorityClassNamepriorityClassName to be added to pods{}
prometheus.metricsPortPort to expose prometheus metrics on (if unspecified, host.port is used)host.port
prometheus.service.enabledIf true, create a Service resource for Prometheusfalse
prometheus.service.annotationsAnnotations to be added to the service{}
prometheus.serviceMonitor.enabledIf true, create a Prometheus Operator ServiceMonitor resourcefalse
prometheus.serviceMonitor.intervalInterval at which the metrics endpoint is scraped10s
prometheus.serviceMonitor.namespaceAn alternative namespace in which to install the ServiceMonitor""
prometheus.serviceMonitor.labelsLabels to add to the ServiceMonitor{}
probe.enabledEnable/disable pod liveness probetrue
probe.initialDelaySecondsLiveness probe initial delay30
probe.periodSecondsLiveness probe check inteval5
probe.successThresholdLiveness probe success threshold1
probe.failureThresholdLiveness probe fail threshold3
probe.timeoutSecondsLivenees probe timeout1
rbac.createIf true, create & use RBAC resourcesfalse
rbac.serviceAccountNameexisting ServiceAccount to use (ignored if rbac.create=true)default
resourcespod resource requests & limits{}
updateStrategyStrategy for DaemonSet updates (requires Kubernetes 1.6+)OnDelete
verboseEnable verbose outputfalse
tolerationsList of node taints to tolerate (requires Kubernetes 1.6+)[]
aws.secret_keyThe value to use for AWS_SECRET_ACCESS_KEY""
aws.access_keyThe value to use for AWS_ACCESS_KEY_ID""
aws.regionThe AWS region to use""
existingSecretSet the AWS credentials using an existing secret""
podSecurityPolicy.enabledIf true, create a podSecurityPolicy object. For the pods to use the psp, rbac.create should also be set to truefalse
podSecurityPolicy.annotationsThe annotations to add to the podSecurityPolicy object{}

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

console
$ helm install stable/kube2iam --name my-release \
  --set=extraArgs.base-role-arn=arn:aws:iam::0123456789:role/,extraArgs.default-role=kube2iam-default,host.iptables=true,host.interface=cbr0

Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,

console
$ helm install stable/kube2iam --name my-release -f values.yaml

Tip: You can use the default values.yaml