diff --git a/charts/pravega/README.md b/charts/pravega/README.md index fefb06bcf..bcb4a4e1b 100644 --- a/charts/pravega/README.md +++ b/charts/pravega/README.md @@ -54,20 +54,20 @@ The following table lists the configurable parameters of the Pravega chart and t | `debugLogging` | Enable debug logging | `false` | | `serviceAccount.name` | Service account to be used | `pravega-components` | | `controller.replicas` | Number of controller replicas | `1` | -| `controller.resources.requests.cpu` | CPU requests for controller | `1000m` | +| `controller.resources.requests.cpu` | CPU requests for controller | `500m` | | `controller.resources.requests.memory` | Memory requests for controller | `1Gi` | -| `controller.resources.limits.cpu` | CPU limits for controller | `2000m` | -| `controller.resources.limits.memory` | Memory limits for controller | `3Gi` | +| `controller.resources.limits.cpu` | CPU limits for controller | `1000m` | +| `controller.resources.limits.memory` | Memory limits for controller | `2Gi` | | `controller.service.type` | Override the controller service type, if external access is enabled (LoadBalancer/NodePort) | | | `controller.service.annotations` | Annotations to add to the controller service, if external access is enabled | `{}` | -| `controller.jvmOptions` | JVM Options for controller | `[]` | +| `controller.jvmOptions` | JVM Options for controller | `["-Xmx2g", "-XX:MaxDirectMemorySize=2g"]` | | `segmentStore.replicas` | Number of segmentStore replicas | `1` | | `segmentStore.secret` | Secret configuration for the segmentStore | `{}` | | `segmentStore.env` | Name of configmap containing environment variables to be added to the segmentStore | | | `segmentStore.resources.requests.cpu` | CPU requests for segmentStore | `1000m` | -| `segmentStore.resources.requests.memory` | Memory requests for segmentStore | `3Gi` | +| `segmentStore.resources.requests.memory` | Memory requests for segmentStore | `4Gi` | | `segmentStore.resources.limits.cpu` | CPU limits for segmentStore | `2000m` | -| `segmentStore.resources.limits.memory` | Memory limits for segmentStore | `5Gi` | +| `segmentStore.resources.limits.memory` | Memory limits for segmentStore | `4Gi` | | `segmentStore.service.type` | Override the segmentStore service type, if external access is enabled (LoadBalancer/NodePort) | | | `segmentStore.service.annotations` | Annotations to add to the segmentStore service, if external access is enabled | `{}` | | `segmentStore.jvmOptions` | JVM Options for segmentStore | `[]` | diff --git a/charts/pravega/values.yaml b/charts/pravega/values.yaml index c29ee3e56..e940b640c 100644 --- a/charts/pravega/values.yaml +++ b/charts/pravega/values.yaml @@ -43,11 +43,11 @@ controller: replicas: 1 resources: requests: - cpu: 1000m + cpu: 500m memory: 1Gi limits: - cpu: 2000m - memory: 3Gi + cpu: 1000m + memory: 2Gi ## service type and annotations are ignored if external access is disabled service: ## used to override the service type for controller @@ -64,16 +64,16 @@ segmentStore: resources: requests: cpu: 1000m - memory: 3Gi + memory: 4Gi limits: cpu: 2000m - memory: 5Gi + memory: 4Gi ## service type and annotations are ignored if external access is disabled service: ## used to override the service type for segmentStore type: annotations: {} - jvmOptions: [] + jvmOptions: ["-Xmx2g", "-XX:MaxDirectMemorySize=2g"] storage: @@ -92,10 +92,10 @@ storage: ## ecs is used to configure a Dell EMC ECS system as the long term storage backend ## considered only if storage.longtermStorage.type = ecs ecs: {} - # configUri: "" - # bucket: "" - # prefix: "" - # credentials: "" + # configUri: https://object.ecstestdrive.com?namespace=namespace%26identity=user%26secretKey=password + # bucket: "bucket" + # prefix: "prefix" + # credentials: ecs-credentials ## hdfs is used to configure an HDFS system as long term storage backend ## considered only if storage.longtermStorage.type = hdfs @@ -109,4 +109,36 @@ storage: className: standard options: - # bookkeeper.ack.quorum.size: "3" + bookkeeper.ensemble.size: "3" + bookkeeper.write.quorum.size: "3" + bookkeeper.ack.quorum.size: "3" + bookkeeper.write.timeout.milliseconds: "60000" + bookkeeper.write.outstanding.bytes.max: "33554432" + pravegaservice.cache.size.max: "1073741824" + pravegaservice.cache.time.seconds.max: "600" + hdfs.block.size: "67108864" + writer.flush.threshold.bytes: "67108864" + writer.flush.size.bytes.max: "67108864" + pravegaservice.container.count: "8" + controller.container.count: "8" + controller.retention.bucket.count: "4" + controller.service.asyncTaskPool.size: "20" + controller.retention.thread.count: "4" + log.level: "INFO" + ## The following parameters are only useful if you are going to deploy metrics in this cluster. + # metrics.dynamicCache.size: "100000" + # metrics.statistics.enable: "true" + # metrics.statsD.reporter.enable: "false" + # metrics.statsD.connect.host: "telegraph.default" + # metrics.statsD.connect.port: "8125" + # metrics.influxDB.reporter.enable: "true" + # metrics.output.frequency.seconds: "10" + # metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" + # controller.metrics.dynamicCache.size: "100000" + # controller.metrics.statistics.enable: "true" + # controller.metrics.statsD.reporter.enable: "false" + # controller.metrics.statsD.connect.host: "telegraph.default" + # controller.metrics.statsD.connect.port: "8125" + # controller.metrics.influxDB.reporter.enable: "true" + # controller.metrics.output.frequency.seconds: "10" + # controller.metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" diff --git a/charts/pravega/values/large.yaml b/charts/pravega/values/large.yaml new file mode 100644 index 000000000..3193bffdb --- /dev/null +++ b/charts/pravega/values/large.yaml @@ -0,0 +1,70 @@ +controller: + replicas: 2 + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 2000m + memory: 4Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for controller + type: + annotations: {} + jvmOptions: [] + +segmentStore: + replicas: 6 + secret: {} + # name: + # path: + env: + resources: + requests: + cpu: 2000m + memory: 16Gi + limits: + cpu: 4000m + memory: 16Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for segmentStore + type: + annotations: {} + jvmOptions: ["-Xmx4g", "-XX:MaxDirectMemorySize=12g"] + +options: + bookkeeper.ensemble.size: "3" + bookkeeper.write.quorum.size: "3" + bookkeeper.ack.quorum.size: "3" + bookkeeper.write.timeout.milliseconds: "60000" + bookkeeper.write.outstanding.bytes.max: "33554432" + pravegaservice.cache.size.max: "11811160064" + pravegaservice.cache.time.seconds.max: "600" + hdfs.block.size: "67108864" + writer.flush.threshold.bytes: "67108864" + writer.flush.size.bytes.max: "67108864" + pravegaservice.container.count: "48" + controller.container.count: "48" + controller.retention.bucket.count: "10" + controller.service.asyncTaskPool.size: "20" + controller.retention.thread.count: "4" + log.level: "INFO" + ## The following parameters are only useful if you are going to deploy metrics in this cluster. + # metrics.dynamicCache.size: "100000" + # metrics.statistics.enable: "true" + # metrics.statsD.reporter.enable: "false" + # metrics.statsD.connect.host: "telegraph.default" + # metrics.statsD.connect.port: "8125" + # metrics.influxDB.reporter.enable: "true" + # metrics.output.frequency.seconds: "10" + # metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" + # controller.metrics.dynamicCache.size: "100000" + # controller.metrics.statistics.enable: "true" + # controller.metrics.statsD.reporter.enable: "false" + # controller.metrics.statsD.connect.host: "telegraph.default" + # controller.metrics.statsD.connect.port: "8125" + # controller.metrics.influxDB.reporter.enable: "true" + # controller.metrics.output.frequency.seconds: "10" + # controller.metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" diff --git a/charts/pravega/values/medium.yaml b/charts/pravega/values/medium.yaml new file mode 100644 index 000000000..b8ceb850f --- /dev/null +++ b/charts/pravega/values/medium.yaml @@ -0,0 +1,70 @@ +controller: + replicas: 2 + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 1000m + memory: 2Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for controller + type: + annotations: {} + jvmOptions: [] + +segmentStore: + replicas: 2 + secret: {} + # name: + # path: + env: + resources: + requests: + cpu: 2000m + memory: 8Gi + limits: + cpu: 4000m + memory: 8Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for segmentStore + type: + annotations: {} + jvmOptions: ["-Xmx4g", "-XX:MaxDirectMemorySize=4g"] + +options: + bookkeeper.ensemble.size: "3" + bookkeeper.write.quorum.size: "3" + bookkeeper.ack.quorum.size: "3" + bookkeeper.write.timeout.milliseconds: "60000" + bookkeeper.write.outstanding.bytes.max: "33554432" + pravegaservice.cache.size.max: "3221225472" + pravegaservice.cache.time.seconds.max: "600" + hdfs.block.size: "67108864" + writer.flush.threshold.bytes: "67108864" + writer.flush.size.bytes.max: "67108864" + pravegaservice.container.count: "16" + controller.container.count: "16" + controller.retention.bucket.count: "10" + controller.service.asyncTaskPool.size: "20" + controller.retention.thread.count: "4" + log.level: "INFO" + ## The following parameters are only useful if you are going to deploy metrics in this cluster. + # metrics.dynamicCache.size: "100000" + # metrics.statistics.enable: "true" + # metrics.statsD.reporter.enable: "false" + # metrics.statsD.connect.host: "telegraph.default" + # metrics.statsD.connect.port: "8125" + # metrics.influxDB.reporter.enable: "true" + # metrics.output.frequency.seconds: "10" + # metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" + # controller.metrics.dynamicCache.size: "100000" + # controller.metrics.statistics.enable: "true" + # controller.metrics.statsD.reporter.enable: "false" + # controller.metrics.statsD.connect.host: "telegraph.default" + # controller.metrics.statsD.connect.port: "8125" + # controller.metrics.influxDB.reporter.enable: "true" + # controller.metrics.output.frequency.seconds: "10" + # controller.metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" diff --git a/charts/pravega/values/minikube.yaml b/charts/pravega/values/minikube.yaml new file mode 100644 index 000000000..137f78e83 --- /dev/null +++ b/charts/pravega/values/minikube.yaml @@ -0,0 +1,26 @@ +controller: + replicas: 1 + resources: + requests: + cpu: 250m + memory: 512Mi + limits: + cpu: 500m + memory: 1Gi + jvmOptions: [] + +segmentStore: + replicas: 1 + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 500m + memory: 2Gi + jvmOptions: [] + +options: + bookkeeper.ack.quorum.size: "1" + bookkeeper.write.quorum.size: "1" + bookkeeper.ensemble.size: "1" diff --git a/charts/pravega/values/small.yaml b/charts/pravega/values/small.yaml new file mode 100644 index 000000000..c027b9277 --- /dev/null +++ b/charts/pravega/values/small.yaml @@ -0,0 +1,70 @@ +controller: + replicas: 1 + resources: + requests: + cpu: 500m + memory: 1Gi + limits: + cpu: 1000m + memory: 2Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for controller + type: + annotations: {} + jvmOptions: [] + +segmentStore: + replicas: 1 + secret: {} + # name: + # path: + env: + resources: + requests: + cpu: 1000m + memory: 4Gi + limits: + cpu: 2000m + memory: 4Gi + ## service type and annotations are ignored if external access is disabled + service: + ## used to override the service type for segmentStore + type: + annotations: {} + jvmOptions: ["-Xmx2g", "-XX:MaxDirectMemorySize=2g"] + +options: + bookkeeper.ensemble.size: "3" + bookkeeper.write.quorum.size: "3" + bookkeeper.ack.quorum.size: "3" + bookkeeper.write.timeout.milliseconds: "60000" + bookkeeper.write.outstanding.bytes.max: "33554432" + pravegaservice.cache.size.max: "1073741824" + pravegaservice.cache.time.seconds.max: "600" + hdfs.block.size: "67108864" + writer.flush.threshold.bytes: "67108864" + writer.flush.size.bytes.max: "67108864" + pravegaservice.container.count: "8" + controller.container.count: "8" + controller.retention.bucket.count: "4" + controller.service.asyncTaskPool.size: "20" + controller.retention.thread.count: "4" + log.level: "INFO" + ## The following parameters are only useful if you are going to deploy metrics in this cluster. + # metrics.dynamicCache.size: "100000" + # metrics.statistics.enable: "true" + # metrics.statsD.reporter.enable: "false" + # metrics.statsD.connect.host: "telegraph.default" + # metrics.statsD.connect.port: "8125" + # metrics.influxDB.reporter.enable: "true" + # metrics.output.frequency.seconds: "10" + # metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086" + # controller.metrics.dynamicCache.size: "100000" + # controller.metrics.statistics.enable: "true" + # controller.metrics.statsD.reporter.enable: "false" + # controller.metrics.statsD.connect.host: "telegraph.default" + # controller.metrics.statsD.connect.port: "8125" + # controller.metrics.influxDB.reporter.enable: "true" + # controller.metrics.output.frequency.seconds: "10" + # controller.metrics.influxDB.connect.uri: "http://INFLUXDB-IP:8086"