Commit Graph

22 Commits (669cc47e0e3585cd8163f177b51f92e06190e156)

Author SHA1 Message Date
HubbeKing daa1b2741b
Fix default k8s.jsonnet PVC capacity 3 years ago
HubbeKing fbf9e3e4a1
Update image links in k8s.jsonnet to point to ghcr.io 3 years ago
HubbeKing 242de74579 Add support for playlist_manager to k8s.jsonnet 3 years ago
HubbeKing 3dfcb83c88 Add cutter and sheetsync support to k8s.jsonnet 3 years ago
HubbeKing 8c9095ef5b Add postgres support to k8s.jsonnet 3 years ago
HubbeKing 5e92a9abbe Use placeholder values for NFS settings 3 years ago
HubbeKing 08a4f8f53e Update ingress manifest to networking.k8s.io/v1 API
This means k8s.jsonnet only works with kubernetes versions >= 1.19.0, but means it works with kubernetes versions >= 1.22.0 as well, which removed the old networking.k8s.io/v1beta API.
3 years ago
HubbeKing e4c8d4eef0 Change k8s.jsonnet to use an NFS PVC instead of a hostPath mount 3 years ago
HubbeKing 421a9ab42e Actually fix serviceName for segment_coverage ingress
Turns out I can't type. At all.
4 years ago
HubbeKing f7f5523d5d Fix serviceName for segment_coverage ingress rule 4 years ago
Mike Lang fbcfea745a k8s.jsonnet: Fix metrics rules
restreamer should have a metrics rule, and segment_coverage should be with an underscore.
4 years ago
Mike Lang 6e5e4b41df docker-compose/k8s: Limit segment-coverage start/end times
Instead of defaulting to oldest/newest.
4 years ago
Mike Lang 7981623611 k8s.jsonnet: Default to only backfilling things from this year
By setting a 6-month limit
4 years ago
Mike Lang b029250c1c Disable stacksampler by default
It causes problems due to the sheer number of unique metrics emitted, which makes
the prometheus endpoint be very expensive / fail a lot.

The data is not useful enough to justify the cost.
4 years ago
Hubbe d2713103a9
Add thrimshim to k8s.jsonnet (#185)
* Add thrimshim to k8s jsonnet file

* Fix reference to bustime_start in thrimshim

* Add "enabled" config to selectively disable things

* Fix styling and handling of disabled components

* Don't need to "hide" enabled field

* Add port arg to thrimshim deployment

* fix indent nitpick

Co-authored-by: Mike Lang <ekimekim@users.noreply.github.com>
4 years ago
HubbeKing 9eca34c7a9 Fix suggested style changes 4 years ago
HubbeKing 4ca425dd12 Simplify ingress_secret_name setting and add ingress_labels setting
using std.objectHas() removes the need to have a separate boolean to check.
4 years ago
HubbeKing cf7670d008 More sensible default secretName for ingress TLS
The given secretName has to be in the same namespace as the ingress itself.
4 years ago
HubbeKing 1dc62c193f Add TLS settings to k8s.jsonnet
Use jsonnet computed field names to optionally add TLS configuration to generated Ingress object

In this way, one can easily let the kubernetes ingress handle TLS, with or without a secretName

Additional configuration would be required to tie into cert-manager for automated cert generation
4 years ago
Mike Lang b47eb3865f Fix segment_coverage -> segment-coverage
because _ is illegal in k8s names.

However the image name does contain a _ so we replace - with _ when constructing the image name.
4 years ago
HubbeKing 9a95dc44eb Fix k8s.jsonnet to compile to something kubernetes accepts
Add Service definitions to output
Correct apiVersion for Ingress definition
Output a v1 List, as kubectl doesn't parse JSON arrays
4 years ago
Mike Lang 28faff5c58 Add a k8s version of the docker-compose file
Note this version is very simplified compared to the docker-compose
and has some major limitations:
* It relies on hostPath and a nodeSelector to put all the components on a shared storage node
* It only supports use as a replication node (downloader, restreamer, backfiller, segment_coverage)
* It uses the k8s Ingress instead of the built-in nginx for http routing.
4 years ago