Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

thanos: remove deprecated features and support for older versions #2629

Merged
merged 1 commit into from Jun 6, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
34 changes: 0 additions & 34 deletions Documentation/api.md
Expand Up @@ -41,8 +41,6 @@ This Document documents the types introduced by the Prometheus Operator to be co
* [ServiceMonitorSpec](#servicemonitorspec)
* [StorageSpec](#storagespec)
* [TLSConfig](#tlsconfig)
* [ThanosGCSSpec](#thanosgcsspec)
* [ThanosS3Spec](#thanoss3spec)
* [ThanosSpec](#thanosspec)

## APIServerConfig
Expand Down Expand Up @@ -522,50 +520,18 @@ TLSConfig specifies TLS configuration parameters.

[Back to TOC](#table-of-contents)

## ThanosGCSSpec

Deprecated: ThanosGCSSpec should be configured with an ObjectStorageConfig secret starting with Thanos v0.2.0. ThanosGCSSpec will be removed.

| Field | Description | Scheme | Required |
| ----- | ----------- | ------ | -------- |
| bucket | Google Cloud Storage bucket name for stored blocks. If empty it won't store any block inside Google Cloud Storage. | *string | false |
| credentials | Secret to access our Bucket. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#secretkeyselector-v1-core) | false |

[Back to TOC](#table-of-contents)

## ThanosS3Spec

Deprecated: ThanosS3Spec should be configured with an ObjectStorageConfig secret starting with Thanos v0.2.0. ThanosS3Spec will be removed.

| Field | Description | Scheme | Required |
| ----- | ----------- | ------ | -------- |
| bucket | S3-Compatible API bucket name for stored blocks. | *string | false |
| endpoint | S3-Compatible API endpoint for stored blocks. | *string | false |
| accessKey | AccessKey for an S3-Compatible API. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#secretkeyselector-v1-core) | false |
| secretKey | SecretKey for an S3-Compatible API. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#secretkeyselector-v1-core) | false |
| insecure | Whether to use an insecure connection with an S3-Compatible API. | *bool | false |
| signatureVersion2 | Whether to use S3 Signature Version 2; otherwise Signature Version 4 will be used. | *bool | false |
| encryptsse | Whether to use Server Side Encryption | *bool | false |

[Back to TOC](#table-of-contents)

## ThanosSpec

ThanosSpec defines parameters for a Prometheus server within a Thanos deployment.

| Field | Description | Scheme | Required |
| ----- | ----------- | ------ | -------- |
| peers | Peers is a DNS name for Thanos to discover peers through. | *string | false |
| image | Image if specified has precedence over baseImage, tag and sha combinations. Specifying the version is still necessary to ensure the Prometheus Operator knows what version of Thanos is being configured. | *string | false |
| version | Version describes the version of Thanos to use. | *string | false |
| tag | Tag of Thanos sidecar container image to be deployed. Defaults to the value of `version`. Version is ignored if Tag is set. | *string | false |
| sha | SHA of Thanos container image to be deployed. Defaults to the value of `version`. Similar to a tag, but the SHA explicitly deploys an immutable container image. Version and Tag are ignored if SHA is set. | *string | false |
| baseImage | Thanos base image if other than default. | *string | false |
| resources | Resources defines the resource requirements for the Thanos sidecar. If not provided, no requests/limits will be set | [v1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#resourcerequirements-v1-core) | false |
| gcs | Deprecated: GCS should be configured with an ObjectStorageConfig secret starting with Thanos v0.2.0. This field will be removed. | *[ThanosGCSSpec](#thanosgcsspec) | false |
| s3 | Deprecated: S3 should be configured with an ObjectStorageConfig secret starting with Thanos v0.2.0. This field will be removed. | *[ThanosS3Spec](#thanoss3spec) | false |
| objectStorageConfig | ObjectStorageConfig configures object storage in Thanos. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.11/#secretkeyselector-v1-core) | false |
| grpcAdvertiseAddress | Explicit (external) host:port address to advertise for gRPC StoreAPI in gossip cluster. If empty, 'grpc-address' will be used. | *string | false |
| clusterAdvertiseAddress | Explicit (external) ip:port address to advertise for gossip in gossip cluster. Used internally for membership only. | *string | false |

[Back to TOC](#table-of-contents)
96 changes: 0 additions & 96 deletions example/prometheus-operator-crd/prometheus.crd.yaml
Expand Up @@ -3219,42 +3219,6 @@ spec:
baseImage:
description: Thanos base image if other than default.
type: string
clusterAdvertiseAddress:
description: Explicit (external) ip:port address to advertise for
gossip in gossip cluster. Used internally for membership only.
type: string
gcs:
description: 'Deprecated: ThanosGCSSpec should be configured with
an ObjectStorageConfig secret starting with Thanos v0.2.0. ThanosGCSSpec
will be removed.'
properties:
bucket:
description: Google Cloud Storage bucket name for stored blocks.
If empty it won't store any block inside Google Cloud Storage.
type: string
credentials:
description: SecretKeySelector selects a key of a Secret.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
optional:
description: Specify whether the Secret or it's key must
be defined
type: boolean
required:
- key
type: object
type: object
grpcAdvertiseAddress:
description: Explicit (external) host:port address to advertise
for gRPC StoreAPI in gossip cluster. If empty, 'grpc-address'
will be used.
type: string
image:
description: Image if specified has precedence over baseImage, tag
and sha combinations. Specifying the version is still necessary
Expand All @@ -3278,9 +3242,6 @@ spec:
required:
- key
type: object
peers:
description: Peers is a DNS name for Thanos to discover peers through.
type: string
resources:
description: ResourceRequirements describes the compute resource
requirements.
Expand All @@ -3296,63 +3257,6 @@ spec:
to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/'
type: object
type: object
s3:
description: 'Deprecated: ThanosS3Spec should be configured with
an ObjectStorageConfig secret starting with Thanos v0.2.0. ThanosS3Spec
will be removed.'
properties:
accessKey:
description: SecretKeySelector selects a key of a Secret.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
optional:
description: Specify whether the Secret or it's key must
be defined
type: boolean
required:
- key
type: object
bucket:
description: S3-Compatible API bucket name for stored blocks.
type: string
encryptsse:
description: Whether to use Server Side Encryption
type: boolean
endpoint:
description: S3-Compatible API endpoint for stored blocks.
type: string
insecure:
description: Whether to use an insecure connection with an S3-Compatible
API.
type: boolean
secretKey:
description: SecretKeySelector selects a key of a Secret.
properties:
key:
description: The key of the secret to select from. Must
be a valid secret key.
type: string
name:
description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
type: string
optional:
description: Specify whether the Secret or it's key must
be defined
type: boolean
required:
- key
type: object
signatureVersion2:
description: Whether to use S3 Signature Version 2; otherwise
Signature Version 4 will be used.
type: boolean
type: object
sha:
description: SHA of Thanos container image to be deployed. Defaults
to the value of `version`. Similar to a tag, but the SHA explicitly
Expand Down
5 changes: 1 addition & 4 deletions example/thanos/prometheus.yaml
Expand Up @@ -5,9 +5,6 @@ metadata:
labels:
prometheus: self
spec:
podMetadata:
labels:
thanos-peer: 'true'
replicas: 2
serviceMonitorSelector:
matchLabels:
Expand All @@ -17,4 +14,4 @@ spec:
role: prometheus-rulefiles
prometheus: k8s
thanos:
peers: thanos-peers.default.svc:10900
version: v0.4.0
Expand Up @@ -4,31 +4,26 @@ metadata:
name: thanos-query
labels:
app: thanos-query
thanos-peer: "true"
spec:
replicas: 1
selector:
matchLabels:
app: thanos-query
thanos-peer: "true"
template:
metadata:
labels:
app: thanos-query
thanos-peer: "true"
spec:
containers:
- name: thanos-query
image: improbable/thanos:v0.1.0
image: improbable/thanos:v0.4.0
args:
- "query"
- "--log.level=debug"
- "--query.replica-label=prometheus_replica"
- "--cluster.peers=thanos-peers.default.svc:10900"
- query
- --log.level=debug
- --query.replica-label=prometheus_replica
- --store=dnssrv+_grpc._tcp.thanos-sidecar.default.svc.cluster.local
ports:
- name: http
containerPort: 10902
- name: grpc
containerPort: 10901
- name: cluster
containerPort: 10900
@@ -1,14 +1,13 @@
apiVersion: v1
kind: Service
metadata:
name: thanos-query
labels:
app: thanos-query
name: thanos-query
spec:
selector:
app: thanos-query
ports:
- port: 9090
protocol: TCP
- name: http
port: 9090
targetPort: http
name: http-query
14 changes: 14 additions & 0 deletions example/thanos/sidecar-service.yaml
@@ -0,0 +1,14 @@
apiVersion: v1
kind: Service
metadata:
name: thanos-sidecar
labels:
app: thanos-sidecar
spec:
clusterIP: None
selector:
prometheus: self
ports:
- name: grpc
port: 10901
targetPort: grpc
13 changes: 0 additions & 13 deletions example/thanos/thanos-peers-svc.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion jsonnet/prometheus-operator/prometheus-crd.libsonnet

Large diffs are not rendered by default.