-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz
logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/README.md logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/main.yaml logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/values.schema.json
- Loading branch information
1 parent
5d1b1bf
commit 68567ed
Showing
5 changed files
with
190 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
43 changes: 43 additions & 0 deletions
43
logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/README.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
[![CircleCI](https://dl.circleci.com/status-badge/img/gh/giantswarm/logging-operator/tree/main.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/giantswarm/logging-operator/tree/main) | ||
|
||
# logging-operator | ||
|
||
This operator is in charge of handling the setup and configuration of the logging stack at Giant Swarm. | ||
|
||
It reconciles `cluster.cluster.x-k8s.io` objects and makes sure each `Cluster` is provided with a [`promtail`](https://github.com/giantswarm/promtail-app) instance and the necessary configuration to ship logs into [`loki`](https://github.com/giantswarm/loki-app). | ||
|
||
## Getting started | ||
|
||
Get the code and build it via: | ||
|
||
```bash | ||
git clone https://github.com/giantswarm/logging-operator.git | ||
cd logging-operator | ||
make | ||
``` | ||
|
||
See `make help` for help. | ||
|
||
## Architecture | ||
|
||
The operator is built around a central reconciler, that calls multiple sub-reconcilers sequentially. | ||
![image](images/logging-operator-architecture.png) | ||
|
||
* Logging-Credentials are created if they don't exist. Then, their data (credentials) is used to create the next resources. | ||
* grafana datasource configures Grafana to read data from Loki | ||
* loki-multi-tenant-auth secures all Loki communication (per-tenant read/write access) | ||
* promtail client configures write access to Loki for Promtail | ||
* Promtail config setups some Promtail settings (like which logs to collect) | ||
* Promtail toggle enables/disables promtail deployment on WCs | ||
* Promtail wiring ensures promtail-app reads configs from previous steps | ||
|
||
## Gathering logs from WCs | ||
|
||
When the need to gather logs from the WCs appears, the logging-operator will deploy promtail on those so that one may see the logs from the MC's grafana. In order to achieve that, one has to label the cluster(s) one wants to gather logs from thanks to the following command : | ||
``` | ||
kubectl label cluster -n <wc_namespace> <wc_name> giantswarm.io/logging=true | ||
``` | ||
|
||
## Credits | ||
|
||
This operator was built using [`kubebuilder`](https://book.kubebuilder.io/quick-start.html). |
11 changes: 11 additions & 0 deletions
11
logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/main.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
annotations: | ||
application.giantswarm.io/metadata: https://giantswarm.github.io/control-plane-test-catalog/logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/main.yaml | ||
application.giantswarm.io/readme: https://giantswarm.github.io/control-plane-test-catalog/logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/README.md | ||
application.giantswarm.io/team: atlas | ||
application.giantswarm.io/values-schema: https://giantswarm.github.io/control-plane-test-catalog/logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/values.schema.json | ||
config.giantswarm.io/version: 1.x.x | ||
chartApiVersion: v2 | ||
chartFile: logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz | ||
dateCreated: '2023-09-30T11:26:43.495018' | ||
digest: 7dccd792d2169bf0e07e0cb111845fe94f67e35fe5fd9c70bc83b68e86648dac | ||
home: https://github.com/giantswarm/logging-operator |
119 changes: 119 additions & 0 deletions
119
logging-operator-0.0.6-6d4cf30290bb21102314fc23e04307991a98f571.tgz-meta/values.schema.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,119 @@ | ||
{ | ||
"$schema": "http://json-schema.org/schema#", | ||
"type": "object", | ||
"properties": { | ||
"ciliumNetworkPolicy": { | ||
"type": "object", | ||
"properties": { | ||
"enabled": { | ||
"type": "boolean" | ||
} | ||
} | ||
}, | ||
"image": { | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"type": "string" | ||
}, | ||
"tag": { | ||
"type": "string" | ||
} | ||
} | ||
}, | ||
"registry": { | ||
"type": "object", | ||
"properties": { | ||
"domain": { | ||
"type": "string" | ||
}, | ||
"pullSecret": { | ||
"type": "object", | ||
"properties": { | ||
"dockerConfigJSON": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"resources": { | ||
"type": "object", | ||
"properties": { | ||
"limits": { | ||
"type": "object", | ||
"properties": { | ||
"cpu": { | ||
"type": "string" | ||
}, | ||
"memory": { | ||
"type": "string" | ||
} | ||
} | ||
}, | ||
"requests": { | ||
"type": "object", | ||
"properties": { | ||
"cpu": { | ||
"type": "string" | ||
}, | ||
"memory": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"securityContext": { | ||
"type": "object", | ||
"properties": { | ||
"container": { | ||
"type": "object", | ||
"properties": { | ||
"allowPrivilegeEscalation": { | ||
"type": "boolean" | ||
}, | ||
"capabilities": { | ||
"type": "object", | ||
"properties": { | ||
"drop": { | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
}, | ||
"seccompProfile": { | ||
"type": "object", | ||
"properties": { | ||
"type": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"pod": { | ||
"type": "object", | ||
"properties": { | ||
"runAsNonRoot": { | ||
"type": "boolean" | ||
}, | ||
"runAsUser": { | ||
"type": "integer" | ||
}, | ||
"seccompProfile": { | ||
"type": "object", | ||
"properties": { | ||
"type": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} |