The fairwinds pod controller is a kubernetes controller that performs custom actions to a kubernetes application which include:
1. Listening to kubernetes for new pods
2. Annotating these pods with a timestamp
3. Logging the pods and timestamps to stdout
4. Making deploys to a helm chart (podlog)
5. Only responding to pods with a particular annotation
6. Only responding to pods in namespaces with a particular annotation
7. Implementing leader election
-
Follow the guidelines here to install kubernetes on your machine:
-
Get a cluster and set it as your current configuration
https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/
*. To pull the docker image from a container registry, run the command below:
```docker pull lexmill99/operator-log:v3.2.0```
*. To push a modified image to docker hub
```docker build -t <username>/<repository-name>:<tag> .```
```docker push <username>/<repository-name>:<tag>```
*. To remove and upgrade the chart from helm, run
``` helm uninstall podlog ```
``` helm upgrade --install podlog podlog ```
*. In order to specify the namespaces to watch:
Edit line 12 on podlog/values.yaml
*. In order to specify the annotation to watch:
Edit line 13 on podlog/values.yaml
*. Run run a custom manifest file containing pods:
Run kubectl <path-to-test-pod.yaml>
Please read CONTRIBUTING.md for details on contributions and the process of submitting pull requests.
This project is licensed under the MIT License; see the LICENSE.md file for details.
Thanks to me (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!