Sitewhere Helm Chart

Sitewhere
Analyzed version: 0.2.9

By SiteWhere

SiteWhere is an industrial strength open-source application enablement platform for the Internet of Things (IoT). It provides a multi-tenant microservice-based infrastructure that includes device/asset management, data ingestion, big-data storage, and integration through a modern, scalable architecture.

Prometheus, a CNCF project, is a systems and service monitoring system. It collects metrics from configured targets at given intervals, evaluates rule expressions, displays the results, and can trigger alerts if some condition is observed to be true.

This chart bootstraps a Prometheus deployment on a Kubernetes cluster using the Helm package manager.

Latest version: 15.5.3
View GitHub

How to Install the Sitewhere Helm Chart

Add Chart Repository to Helm

helm repo add sitewhere https://sitewhere.io/helm-charts

Install Chart

helm install my-sitewhere sitewhere/sitewhere --version 0.2.9

Does the Sitewhere Chart Follow Industry Best Practices?

The chart meets the best practices recommended by the industry.

The chart failed to meet 10 of the best practices recommended by the industry.

The chart meets the best practices recommended by the industry. Find the full list of best practices here.

❌ Ensure each container has a configured memory limit

15 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-postgresql (kind: StatefulSet)
  • metadata.name: release-name-cassandra (kind: StatefulSet)
  • metadata.name: release-name-influxdb (kind: StatefulSet)
  • metadata.name: release-name-mongodb-arbiter (kind: StatefulSet)
  • metadata.name: release-name-mongodb-primary (kind: StatefulSet)
  • metadata.name: release-name-mongodb-secondary (kind: StatefulSet)
  • metadata.name: release-name-tenantsdb (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `limits.memory` - value should be within the accepted boundaries recommended by the organization

Learn how to fix the issue here

❌ Ensure each container image has a pinned (tag) version

17 occurrences:

  • metadata.name: release-name-sitewhere-asset-management (kind: Deployment)
  • metadata.name: release-name-sitewhere-batch-operations (kind: Deployment)
  • metadata.name: release-name-sitewhere-command-delivery (kind: Deployment)
  • metadata.name: release-name-sitewhere-device-management (kind: Deployment)
  • metadata.name: release-name-sitewhere-device-registration (kind: Deployment)
  • metadata.name: release-name-sitewhere-device-state (kind: Deployment)
  • metadata.name: release-name-sitewhere-event-management (kind: Deployment)
  • metadata.name: release-name-sitewhere-event-search (kind: Deployment)
  • metadata.name: release-name-sitewhere-event-sources (kind: Deployment)
  • metadata.name: release-name-sitewhere-inbound-processing (kind: Deployment)
  • metadata.name: release-name-sitewhere-instance-management (kind: Deployment)
  • metadata.name: release-name-sitewhere-label-generation (kind: Deployment)
  • metadata.name: release-name-sitewhere-outbound-connectors (kind: Deployment)
  • metadata.name: release-name-sitewhere-rule-processing (kind: Deployment)
  • metadata.name: release-name-sitewhere-schedule-management (kind: Deployment)
  • metadata.name: release-name-sitewhere-streaming-media (kind: Deployment)
  • metadata.name: release-name-sitewhere-web-rest (kind: Deployment)

💡 Incorrect value for key `image` - specify an image version to avoid unpleasant "version surprises" in the future

Learn how to fix the issue here

❌ Prevent ConfigMap security vulnerability (CVE-2021-25742)

3 occurrences:

  • metadata.name: release-name-syncope-environment-config (kind: ConfigMap)
  • metadata.name: release-name-influxdb (kind: ConfigMap)
  • metadata.name: release-name-warp10 (kind: ConfigMap)

💡 Missing property object `allow-snippet-annotations` - set it to "false" to override default behaviour

Learn how to fix the issue here

❌ Ensure each container has a configured memory request

13 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-cassandra (kind: StatefulSet)
  • metadata.name: release-name-influxdb (kind: StatefulSet)
  • metadata.name: release-name-mongodb-arbiter (kind: StatefulSet)
  • metadata.name: release-name-mongodb-primary (kind: StatefulSet)
  • metadata.name: release-name-mongodb-secondary (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `requests.memory` - value should be within the accepted boundaries recommended by the organization

Learn how to fix the issue here

❌ Ensure each container has a configured CPU request

13 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-cassandra (kind: StatefulSet)
  • metadata.name: release-name-influxdb (kind: StatefulSet)
  • metadata.name: release-name-mongodb-arbiter (kind: StatefulSet)
  • metadata.name: release-name-mongodb-primary (kind: StatefulSet)
  • metadata.name: release-name-mongodb-secondary (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `requests.cpu` - value should be within the accepted boundaries recommended by the organization

Learn how to fix the issue here

❌ Ensure each container has a configured CPU limit

15 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-postgresql (kind: StatefulSet)
  • metadata.name: release-name-cassandra (kind: StatefulSet)
  • metadata.name: release-name-influxdb (kind: StatefulSet)
  • metadata.name: release-name-mongodb-arbiter (kind: StatefulSet)
  • metadata.name: release-name-mongodb-primary (kind: StatefulSet)
  • metadata.name: release-name-mongodb-secondary (kind: StatefulSet)
  • metadata.name: release-name-tenantsdb (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `limits.cpu` - value should be within the accepted boundaries recommended by the organization

Learn how to fix the issue here

❌ Ensure each container has a configured liveness probe

8 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `livenessProbe` - add a properly configured livenessProbe to catch possible deadlocks

Learn how to fix the issue here

❌ Ensure each container has a configured readiness probe

8 occurrences:

  • metadata.name: release-name-syncope-console (kind: Deployment)
  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-syncope-enduser (kind: Deployment)
  • metadata.name: release-name-sitewhere-mosquitto (kind: Deployment)
  • metadata.name: release-name-cp-kafka (kind: StatefulSet)
  • metadata.name: release-name-cp-zookeeper (kind: StatefulSet)
  • metadata.name: release-name-warp10 (kind: StatefulSet)
  • metadata.name: release-name-canary (kind: Pod)

💡 Missing property object `readinessProbe` - add a properly configured readinessProbe to notify kubelet your Pods are ready for traffic

Learn how to fix the issue here

❌ Prevent container security vulnerability (CVE-2021-25741)

7 occurrences:

  • metadata.name: release-name-syncope (kind: Deployment)
  • metadata.name: release-name-postgresql (kind: StatefulSet)
  • metadata.name: release-name-mongodb-arbiter (kind: StatefulSet)
  • metadata.name: release-name-tenantsdb (kind: StatefulSet)

💡 Forbidden property object `subPath` - malicious users can gain access to files & directories outside of the volume

Learn how to fix the issue here

❌ Prevent deploying naked pods

1 occurrences:

  • metadata.name: release-name-canary (kind: Pod)

💡 Incorrect value for key `kind` - raw pod won't be rescheduled in the event of a node failure

Learn how to fix the issue here

This is some text inside of a div block.
This is some text inside of a div block.

Reveal misconfigurations within minutes

3 Quick Steps to Get Started