Skip to content

Commit 754a235

Browse files
written an instruct to create bucket-config.yml file on Readme.
Signed-off-by: Kushal Shukla <kushalshukla110@gmail.com>
1 parent 41a380d commit 754a235

File tree

4 files changed

+104
-15
lines changed

4 files changed

+104
-15
lines changed

prombench/docs/eks.md

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ Run Prombench tests in [Elastic Kubernetes Service (EKS)](https://aws.amazon.com
108108
make node_create
109109
```
110110
3. **Setting Up Benchmarking Data**
111+
111112
When setting up a benchmarking environment, it’s often useful to have pre-generated data available. This data can help speed up testing and make benchmarks more realistic by simulating actual workloads.
112113

113114
In this setup, you have two choices:
@@ -138,7 +139,40 @@ Regardless of the option chosen, data stored in Prometheus will only be retained
138139

139140
> **⚠️ Warning:** The benchmark will change its basis when the retention size limit is reached and older downloaded blocks are deleted. Ensure that you have sufficient retention settings configured to avoid data loss that could affect benchmarking results.
140141

141-
4. **Deploy the Kubernetes Objects**:
142+
4. **Downloading Directory configuration**
143+
144+
PromBench can download data from a specific directory in object storage based on a configuration file. This configuration file specifies the directory name along with the minimum and maximum timestamps.
145+
> **Note:** Make sure the file is applied before the ```3b_prometheus-test_deployment.yaml``` .
146+
147+
- **Option 1: To Download Data from a Specific Directory**
148+
149+
Create a ConfigMap with the following structure:
150+
```yaml
151+
apiVersion: v1
152+
kind: ConfigMap
153+
metadata:
154+
name: blocksync-config
155+
namespace: prombench-{{ .PR_NUMBER }}
156+
data:
157+
bucket-config.yml: |
158+
path: your-directory-name
159+
minTime: block-starting-time
160+
maxTime: block-ending-time
161+
```
162+
Replace the values of ```directory```,```minTime```, and ```maxTime``` with your desired configuration. Here ```minTime``` , ```maxTime``` are the starting and ending time of TSDB block.
163+
- **Option 2: To Skip Data Download**
164+
165+
If you do not want to download data, create an empty ConfigMap with the same name:
166+
```yaml
167+
apiVersion: v1
168+
kind: ConfigMap
169+
metadata:
170+
name: blocksync-config
171+
namespace: prombench-{{ .PR_NUMBER }}
172+
data:
173+
```
174+
175+
5. **Deploy the Kubernetes Objects**:
142176

143177
```bash
144178
make resource_apply

prombench/docs/gke.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,40 @@ Regardless of the option chosen, data stored in Prometheus will only be retained
127127

128128
> **⚠️ Warning:** The benchmark will change its basis when the retention size limit is reached and older downloaded blocks are deleted. Ensure that you have sufficient retention settings configured to avoid data loss that could affect benchmarking results.
129129

130-
4. **Deploy the Kubernetes Objects**:
130+
4. **Downloading Directory configuration**
131+
132+
PromBench can download data from a specific directory in object storage based on a configuration file. This configuration file specifies the directory name along with the minimum and maximum timestamps.
133+
> **Note:** Make sure the file is applied before the ```3b_prometheus-test_deployment.yaml``` .
134+
135+
- **Option 1: To Download Data from a Specific Directory**
136+
137+
Create a ConfigMap with the following structure:
138+
```yaml
139+
apiVersion: v1
140+
kind: ConfigMap
141+
metadata:
142+
name: blocksync-config
143+
namespace: prombench-{{ .PR_NUMBER }}
144+
data:
145+
bucket-config.yml: |
146+
path: your-directory-name
147+
minTime: block-starting-time
148+
maxTime: block-ending-time
149+
```
150+
Replace the values of ```directory```,```minTime```, and ```maxTime``` with your desired configuration. Here ```minTime``` , ```maxTime``` are the starting and ending time of TSDB block.
151+
- **Option 2: To Skip Data Download**
152+
153+
If you do not want to download data, create an empty ConfigMap with the same name:
154+
```yaml
155+
apiVersion: v1
156+
kind: ConfigMap
157+
metadata:
158+
name: blocksync-config
159+
namespace: prombench-{{ .PR_NUMBER }}
160+
data:
161+
```
162+
163+
5. **Deploy the Kubernetes Objects**:
131164

132165
```bash
133166
make resource_apply

prombench/docs/kind.md

Lines changed: 35 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ If used with the GitHub integration:
114114
export PR_NUMBER=<PR to benchmark against the selected $RELEASE>
115115
```
116116

117-
3. **Setting Up Benchmarking Data**
117+
2. Setting Up Benchmarking Data
118118
When setting up a benchmarking environment, it’s often useful to have pre-generated data available.This data can help speed up testing and make benchmarks more realistic by simulating actual workloads.
119119

120120
In this setup, you have two choices:
@@ -145,7 +145,40 @@ Regardless of the option chosen, data stored in Prometheus will only be retained
145145

146146
> **⚠️ Warning:** The benchmark will change its basis when the retention size limit is reached and older downloaded blocks are deleted. Ensure that you have sufficient retention settings configured to avoid data loss that could affect benchmarking results.
147147

148-
3. Deploy the Kubernetes objects:
148+
3. Downloading Directory configuration
149+
150+
PromBench can download data from a specific directory in object storage based on a configuration file. This configuration file specifies the directory name along with the minimum and maximum timestamps.
151+
> **Note:** Make sure the file is applied before the ```3b_prometheus-test_deployment.yaml``` .
152+
153+
- **Option 1: To Download Data from a Specific Directory**
154+
155+
Create a ConfigMap with the following structure:
156+
```yaml
157+
apiVersion: v1
158+
kind: ConfigMap
159+
metadata:
160+
name: blocksync-config
161+
namespace: prombench-{{ .PR_NUMBER }}
162+
data:
163+
bucket-config.yml: |
164+
path: your-directory-name
165+
minTime: block-starting-time
166+
maxTime: block-ending-time
167+
```
168+
Replace the values of ```directory```,```minTime```, and ```maxTime``` with your desired configuration. Here ```minTime``` , ```maxTime``` are the starting and ending time of TSDB block.
169+
- **Option 2: To Skip Data Download**
170+
171+
If you do not want to download data, create an empty ConfigMap with the same name:
172+
```yaml
173+
apiVersion: v1
174+
kind: ConfigMap
175+
metadata:
176+
name: blocksync-config
177+
namespace: prombench-{{ .PR_NUMBER }}
178+
data:
179+
```
180+
181+
4. Deploy the Kubernetes objects:
149182
> **_Note:_** If you encounter a `too many files open` error caused by promtail, increase the default value of `/proc/sys/fs/inotify/max_user_instances` from 128 to 512:
150183
> ```bash
151184
> sudo sysctl fs.inotify.max_user_instances=512

prombench/manifests/prombench/benchmark/3b_prometheus-test_deployment.yaml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,3 @@
1-
apiVersion: v1
2-
kind: ConfigMap
3-
metadata:
4-
name: blocksync-config
5-
namespace: prombench-{{ .PR_NUMBER }}
6-
data:
7-
bucket-config.yml: |
8-
path: gendata
9-
minTime: 1729694072541
10-
maxTime: 1729706400000
11-
---
121
apiVersion: apps/v1
132
kind: Deployment
143
metadata:

0 commit comments

Comments
 (0)