Skip to content

Commit

Permalink
Merge pull request #5 from metrico/iox-tunning
Browse files Browse the repository at this point in the history
fix: iox compactor tuning
  • Loading branch information
lmangani authored Sep 21, 2023
2 parents dd08234 + c6c64b9 commit 8ecd12c
Show file tree
Hide file tree
Showing 2 changed files with 104 additions and 13 deletions.
71 changes: 61 additions & 10 deletions docker-compose-full.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,15 @@ services:
volumes:
- minio_data:/data
environment:
MINIO_ROOT_USER: "iox"
MINIO_ROOT_PASSWORD: "iox123"
MINIO_ACCESS_KEY: "minio"
MINIO_SECRET_KEY: "minio123"
command: server --console-address ":9001" /data
- "MINIO_ROOT_USER=minio"
- "MINIO_ROOT_PASSWORD=minio123"
- "MINIO_ACCESS_KEY=minio"
- "MINIO_SECRET_KEY=minio123"
command:
- server
- --console-address
- ":9001"
- /data

createbuckets:
image: minio/mc
Expand All @@ -41,8 +45,8 @@ services:
entrypoint: >
/bin/sh -c "
/usr/bin/mc alias set myminio http://minio:9000 minio minio123;
/usr/bin/mc mb iox;
/usr/bin/mc policy set public iox;
/usr/bin/mc mb myminio/iox;
/usr/bin/mc anonymous set public myminio/iox;
exit 0;
"
Expand All @@ -56,7 +60,8 @@ services:
- AWS_ACCESS_KEY_ID=minio
- AWS_SECRET_ACCESS_KEY=minio123
- AWS_DEFAULT_REGION=us-east-2
- AWS_ENDPOINT = http://minio:9000
- AWS_ALLOW_HTTP=true
- AWS_ENDPOINT=http://minio:9000
- INFLUXDB_IOX_BUCKET=iox
- INFLUXDB_IOX_CATALOG_DSN=postgres://postgres@postgres:5432/iox
# - INFLUXDB_IOX_CATALOG_DSN=sqlite:///data/catalog.sqlite
Expand All @@ -65,7 +70,14 @@ services:
- INFLUXDB_IOX_QUERIER_GRPC_BIND_ADDR=iox:8082
- INFLUXDB_IOX_INGESTER_GRPC_BIND_ADDR=iox:8083
- INFLUXDB_IOX_COMPACTOR_GRPC_BIND_ADDR=iox:8084
- INFLUXDB_IOX_PERSIST_HOT_PARTITION_COST=0
- INFLUXDB_IOX_COMPACTION_MEMORY_BUDGET_BYTES=3000000000
- INFLUXDB_IOX_COMPACTION_MAX_COMPACTING_FILES=100
- INFLUXDB_IOX_COMPACTION_MIN_ROWS_PER_RECORD_BATCH_TO_PLAN=32768
- INFLUXDB_IOX_COMPACTION_MAX_DESIRED_FILE_SIZE_BYTES=104857600
- INFLUXDB_IOX_COMPACTION_PERCENTAGE_MAX_FILE_SIZE=5
- INFLUXDB_IOX_GC_OBJECTSTORE_SLEEP_INTERVAL_MINUTES=1
- INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF=30m
- INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF=30m
- LOG_FILTER=error
restart: unless-stopped
expose:
Expand All @@ -83,6 +95,45 @@ services:
depends_on:
- postgres
- minio
iox-gc:
image: ghcr.io/metrico/iox-musl:latest
container_name: iox-gc
volumes:
- ./data:/data
environment:
- INFLUXDB_IOX_OBJECT_STORE=s3
- AWS_ACCESS_KEY_ID=minio
- AWS_SECRET_ACCESS_KEY=minio123
- AWS_ALLOW_HTTP=true
- AWS_ENDPOINT=http://minio:9000
- INFLUXDB_IOX_BUCKET=iox
- INFLUXDB_IOX_CATALOG_DSN=postgres://postgres@postgres:5432/iox
# - INFLUXDB_IOX_CATALOG_DSN=sqlite:///data/catalog.sqlite
- INFLUXDB_IOX_ROUTER_HTTP_BIND_ADDR=iox:8080
- INFLUXDB_IOX_ROUTER_GRPC_BIND_ADDR=iox:8081
- INFLUXDB_IOX_QUERIER_GRPC_BIND_ADDR=iox:8082
- INFLUXDB_IOX_INGESTER_GRPC_BIND_ADDR=iox:8083
- INFLUXDB_IOX_COMPACTOR_GRPC_BIND_ADDR=iox:8084
- INFLUXDB_IOX_COMPACTION_MEMORY_BUDGET_BYTES=3000000000
- INFLUXDB_IOX_COMPACTION_MAX_COMPACTING_FILES=100
- INFLUXDB_IOX_COMPACTION_MIN_ROWS_PER_RECORD_BATCH_TO_PLAN=32768
- INFLUXDB_IOX_COMPACTION_MAX_DESIRED_FILE_SIZE_BYTES=104857600
- INFLUXDB_IOX_COMPACTION_PERCENTAGE_MAX_FILE_SIZE=5
- INFLUXDB_IOX_GC_OBJECTSTORE_SLEEP_INTERVAL_MINUTES=1
- INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF=30m
- INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF=30m
- LOG_FILTER=info
restart: unless-stopped
links:
- postgres:postgres
- minio:minio
depends_on:
- postgres
- minio
command:
- /influxdb_iox
- run
- garbage-collector

postgres:
image: postgres
Expand All @@ -101,7 +152,7 @@ services:
container_name: fluxpipe
expose:
- 8086
environment:
environment:
- IOX_SERVER=iox

grafana:
Expand Down
46 changes: 43 additions & 3 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,23 @@ services:
- ./data:/data
environment:
- INFLUXDB_IOX_OBJECT_STORE=file
- INFLUXDB_IOX_DB_DIR=/data
- INFLUXDB_IOX_DB_DIR=/data/db
- INFLUXDB_IOX_BUCKET=iox
- INFLUXDB_IOX_CATALOG_DSN=sqlite:///data/catalog.sqlite
- INFLUXDB_IOX_WAL_DIRECTORY=/data/wal
- INFLUXDB_IOX_ROUTER_HTTP_BIND_ADDR=iox:8080
- INFLUXDB_IOX_ROUTER_GRPC_BIND_ADDR=iox:8081
- INFLUXDB_IOX_QUERIER_GRPC_BIND_ADDR=iox:8082
- INFLUXDB_IOX_INGESTER_GRPC_BIND_ADDR=iox:8083
- INFLUXDB_IOX_COMPACTOR_GRPC_BIND_ADDR=iox:8084
- INFLUXDB_IOX_PERSIST_HOT_PARTITION_COST=0
- INFLUXDB_IOX_COMPACTION_MEMORY_BUDGET_BYTES=3000000000
- INFLUXDB_IOX_COMPACTION_MAX_COMPACTING_FILES=100
- INFLUXDB_IOX_COMPACTION_MIN_ROWS_PER_RECORD_BATCH_TO_PLAN=32768
- INFLUXDB_IOX_COMPACTION_MAX_DESIRED_FILE_SIZE_BYTES=104857600
- INFLUXDB_IOX_COMPACTION_PERCENTAGE_MAX_FILE_SIZE=5
- INFLUXDB_IOX_GC_OBJECTSTORE_SLEEP_INTERVAL_MINUTES=1
- INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF=30m
- INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF=30m
- LOG_FILTER=error
restart: unless-stopped
expose:
Expand All @@ -33,6 +41,38 @@ services:
ports:
- 8080:8080
- 8082:8082
iox-gc:
image: influxdb_iox
container_name: iox-gc
build:
dockerfile: ./Dockerfile
context: .
volumes:
- ./data:/data
environment:
- INFLUXDB_IOX_OBJECT_STORE=file
- INFLUXDB_IOX_DB_DIR=/data/db
- INFLUXDB_IOX_BUCKET=iox
- INFLUXDB_IOX_CATALOG_DSN=sqlite:///data/catalog.sqlite
- INFLUXDB_IOX_ROUTER_HTTP_BIND_ADDR=iox:8080
- INFLUXDB_IOX_ROUTER_GRPC_BIND_ADDR=iox:8081
- INFLUXDB_IOX_QUERIER_GRPC_BIND_ADDR=iox:8082
- INFLUXDB_IOX_INGESTER_GRPC_BIND_ADDR=iox:8083
- INFLUXDB_IOX_COMPACTOR_GRPC_BIND_ADDR=iox:8084
- INFLUXDB_IOX_COMPACTION_MEMORY_BUDGET_BYTES=3000000000
- INFLUXDB_IOX_COMPACTION_MAX_COMPACTING_FILES=100
- INFLUXDB_IOX_COMPACTION_MIN_ROWS_PER_RECORD_BATCH_TO_PLAN=32768
- INFLUXDB_IOX_COMPACTION_MAX_DESIRED_FILE_SIZE_BYTES=104857600
- INFLUXDB_IOX_COMPACTION_PERCENTAGE_MAX_FILE_SIZE=5
- INFLUXDB_IOX_GC_OBJECTSTORE_SLEEP_INTERVAL_MINUTES=1
- INFLUXDB_IOX_GC_PARQUETFILE_CUTOFF=1m
- INFLUXDB_IOX_GC_OBJECTSTORE_CUTOFF=1m
- LOG_FILTER=info
restart: unless-stopped
command:
- /influxdb_iox
- run
- garbage-collector

nginx:
image: nginx:latest
Expand All @@ -49,7 +89,7 @@ services:
grafana:
image: grafana/grafana:latest
ports:
- 8086:3000
- 3000:3000
environment:
- INFLUX_HOST=iox:8082
- INFLUX_TOKEN=${INFLUXDB_TOKEN}
Expand Down

0 comments on commit 8ecd12c

Please sign in to comment.