Skip to content

Commit

Permalink
add readme and kustomization.yaml to support kustomize deployments
Browse files Browse the repository at this point in the history
  • Loading branch information
KaceyGambill committed Jul 30, 2024
1 parent c2ae4cd commit 7f7cefb
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 5 deletions.
68 changes: 63 additions & 5 deletions deploy/README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,69 @@
Example Deployment
==================
# Example Deployment

1. Make sure you've built the included Dockerfile with `TAG=latest make container`. The image should be tagged as `registry.k8s.io/prometheus-adapter/staging-prometheus-adapter:latest`.

2. `kubectl create namespace monitoring` to ensure that the namespace that we're installing
the custom metrics adapter in exists.

3. `kubectl create -f manifests/`, modifying the Deployment as necessary to
point to your Prometheus server, and the ConfigMap to contain your desired
metrics discovery configuration.
3. This can be deployed via `kubectl create -f manifests/` or via `kustomize`
a. if using `kubectl create -f manifests/` modify the Deployment as necessary to point to your Prometheus server, and the ConfigMap to contain your desired metrics discovery configuration.
b. if using `kustomize` reference the kustomization file located: `http://github.com/kubernetes-sigs/prometheus-adapter/deploy?ref=release-X.XX`
example kustomization.yaml:

```kustomization.yaml
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- github.com/kubernetes-sigs/prometheus-adapter/deploy?ref=release-X.XX
patches:
- path: deployment-patch.yaml
target:
kind: Deployment
version: v1
name: prometheus-adapter
namespace: monitoring
- path: configmap-patch.yaml
target:
kind: ConfigMap
version: v1
name: adapter-config
namespace: monitoring
```

```deployment-patch.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
name: prometheus-adapter # deployment name to patch
namespace: monitoring
spec:
template:
spec:
containers:
- name: prometheus-adapter # name of container
args:
- --cert-dir=/var/run/serving-cert
- --config=/etc/adapter/config.yaml
- --metrics-relist-interval=1m
- --prometheus-url=http://prometheus.monitoring.svc.cluster.local:9090/ # prometheus URL
- --secure-port=6443
- --tls-cipher-suites=TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_128_GCM_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384,TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA
```

```configmap-patch.yaml
kind: ConfigMap
apiVersion: v1
metadata:
labels:
app.kubernetes.io/component: metrics-adapter
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/version: 0.12.0
name: adapter-config
namespace: monitoring
data:
config.yaml: |-
# your rules would go here
```
18 changes: 18 additions & 0 deletions deploy/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: monitoring
resources:
- ./manifests/api-service.yaml
- ./manifests/cluster-role-aggregated-metrics-reader.yaml
- ./manifests/cluster-role-binding-delegator.yaml
- ./manifests/cluster-role-binding-hpa-custom-metrics.yaml
- ./manifests/cluster-role-binding.yaml
- ./manifests/cluster-role-metrics-server-resources.yaml
- ./manifests/cluster-role.yaml
- ./manifests/config-map.yaml
- ./manifests/deployment.yaml
- ./manifests/network-policy.yaml
- ./manifests/pod-disruption-budget.yaml
- ./manifests/role-binding-auth-reader.yaml
- ./manifests/service-account.yaml
- ./manifests/service.yaml

0 comments on commit 7f7cefb

Please sign in to comment.