Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/k0rventen/macaque
a kubernetes chaos monkey implementation in go
https://github.com/k0rventen/macaque
chaos-engineering chaos-monkey golang kubernetes
Last synced: about 10 hours ago
JSON representation
a kubernetes chaos monkey implementation in go
- Host: GitHub
- URL: https://github.com/k0rventen/macaque
- Owner: k0rventen
- Created: 2021-08-15T21:08:57.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-11-20T16:13:52.000Z (about 2 years ago)
- Last Synced: 2024-11-15T00:33:42.115Z (2 months ago)
- Topics: chaos-engineering, chaos-monkey, golang, kubernetes
- Language: Go
- Homepage:
- Size: 73.2 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# macaque
a kubernetes [chaos monkey]("https://netflix.github.io/chaosmonkey/") implementation in go.
```
o(..)o I'm a chaos macaque.
(-) __/
```macaque runs in-cluster, uses a crontab for its schedule, can send kill confirmation to slack/webex, and select pods based on labels.
## deploy
The image is available for both `amd64` and `arm64`. To install :
```
# apply in the proper namespace (comes with role/rolebinding/sa and minimal permissions)
kubectl apply -f https://raw.githubusercontent.com/k0rventen/macaque/main/macaque.yml# edit the deployment to suit your preferences
kubectl edit deploy macaque
```## config
configuration is done either through args or env vars:
```
Usage of macaque:
-crontab string
env 'MACAQUE_CRONTAB'
crontab spec for macaque, eg 0 * * * * for every hour.
-namespace string
env 'MACAQUE_NAMESPACE'
optionnal namespace in which to look for pods
(if undefined, uses the ns from the service account).
-selector string
env 'MACAQUE_SELECTOR'
optionnal pod selector to use in app=foo format
(no selector will match any pod in the given namespace).
-slack-channel string
env 'MACAQUE_SLACK_CHANNEL'
optionnal slack channel id.
-slack-token string
env 'MACAQUE_SLACK_TOKEN'
optionnal slack bot token.
-timezone string
env 'MACAQUE_TIMEZONE'
optionnal timezone to use, eg Europe/Paris (defaults to UTC).
-webex-room-id string
env 'MACAQUE_WEBEX_ROOM_ID'
optionnal webex room id.
-webex-token string
env 'MACAQUE_WEBEX_TOKEN'
optionnal webex bot token.
```