aws / aws/amazon-eks-pod-identity-webhook

SELF_HOSTED_SETUP Document Correction

Open
#36 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
691
Forks
202
Avg merge
4h 38m
Merged PRs (30d)
1

Description

### APIServer Configuration
In [SELF_HOSTED_SETUP.md](https://github.com/geckofu/amazon-eks-pod-identity-webhook/blob/master/SELF_HOSTED_SETUP.md#kubernetes-api-server-configuration) it says you need to add `--service-account-key-file` with the path to the `$PKCS_KEY` file. I have tested with minikube 1.17 and a kops 1.15 cluster, here is the error message:

```
{"log":"Error: invalid authentication config: error reading public key file /var/lib/minikube/certs/sa-signing-pkcs.pub: data does not contain any valid RSA or ECDSA public keys\n","stream":"stderr","time":"2020-02-10T14:34:36.834045998Z"}
```

According to the [apiserver doc](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/), it should be the path to `$PUB_KEY`

Also the original public key may not be explictly specified by `--service-account-key-file` (using the default value same as `--tls-private-key-file`) so user needs to make sure it is included, otherwise existing tokens will fail: https://github.com/aws/amazon-eks-pod-identity-webhook/issues/29

### ControllerManager Configuration
It is missing from the doc that you should also configure controller managers:

> You must pass a service account private key file to the token controller in the controller-manager by using the --service-account-private-key-file option. The private key will be used to sign generated service account tokens. [Managing Service Accounts](https://kubernetes.io/docs/reference/access-authn-authz/service-accounts-admin/#token-controller)

Contributor guide

Open the contributing guide

Research direction

Open SELF_HOSTED_SETUP.md at the Kubernetes API server configuration section and compare its service-account key guidance with the linked kube-apiserver documentation. Correct the public-key path guidance, mention preserving the original public key, and add the controller-manager private-key requirement; done means both setup sections accurately reflect the referenced Kubernetes guidance.

Written by the indexing model from the issue text.

Assessment

Domain
documentation, infrastructure
Issue type
Documentation
Difficulty
1/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.