diff --git a/charts/hono/Chart.yaml b/charts/hono/Chart.yaml index e6997d5f..67b9b4e0 100755 --- a/charts/hono/Chart.yaml +++ b/charts/hono/Chart.yaml @@ -15,16 +15,16 @@ name: hono description: | Eclipse Hono™ provides remote service interfaces for connecting large numbers of IoT devices to a back end and interacting with them in a uniform way regardless of the device communication protocol. -version: 2.6.6 +version: 2.7.0 # Version of Hono being deployed by the chart -appVersion: 2.6.0 +appVersion: 2.7.0 keywords: - iot-chart - IoT - connectivity - messaging - Kafka -home: https://www.eclipse.org/hono/ +home: https://eclipse.dev/hono sources: - https://github.com/eclipse-hono/hono icon: https://eclipse.dev/hono/img/hono-logo_image.svg @@ -32,7 +32,7 @@ maintainers: - name: dejanb email: dbosanac@redhat.com - name: sophokles73 - email: kai.hudalla@bosch.io + email: sophokles.kh@gmail.com dependencies: - name: "prometheus" version: "^14.x" @@ -44,9 +44,9 @@ dependencies: condition: "grafana.enabled" - name: "mongodb" repository: "oci://registry-1.docker.io/bitnamicharts" - version: "~13.x" + version: "~15.x" condition: "mongodb.createInstance" - name: "kafka" repository: "oci://registry-1.docker.io/bitnamicharts" - version: "^26.8" + version: "^31.1" condition: "kafkaMessagingClusterExample.enabled" diff --git a/charts/hono/README.md b/charts/hono/README.md index ecd76c32..3f665b55 100644 --- a/charts/hono/README.md +++ b/charts/hono/README.md @@ -1,6 +1,6 @@ # Eclipse Hono -[Eclipse Hono™](https://www.eclipse.org/hono/) provides remote service interfaces for connecting large +[Eclipse Hono™](https://eclipse.dev/hono/) provides remote service interfaces for connecting large numbers of IoT devices to a back end and interacting with them in a uniform way regardless of the device communication protocol. @@ -10,11 +10,11 @@ This repository contains a *chart* that can be used to install Hono to a Kuberne ## Prerequisites Installing Hono using the chart requires the Helm tool to be installed as described on the -[IoT Packages chart repository prerequisites](https://www.eclipse.org/packages/prereqs/#helm) +[IoT Packages chart repository prerequisites](https://eclipse.dev/packages/prereqs/#helm) page. In addition, a Kubernetes cluster to install the chart to is required. -See the corresponding section on the [IoT Packages prerequisites](https://www.eclipse.org/packages/prereqs/#kubernetes-cluster) +See the corresponding section on the [IoT Packages prerequisites](https://eclipse.dev/packages/prereqs/#kubernetes-cluster) page for information on how to set up a cluster suitable for running Hono. The Helm chart is being tested to successfully install on the four most recent Kubernetes versions. @@ -101,6 +101,13 @@ The command removes all the Kubernetes components associated with the chart and ## Release Notes +### 2.7.0 + +* Use Hono 2.7.0 container images. +* Explicitly allow usage of binamilegacy images by default. +* Updated Apache ActibeMQ Artemis image to most recent version. +* Updated Infinispan server to version 15.2 + ### 2.6.6 * Update the Hono Grafana dashboards from schemaVersion 16 to 38. @@ -344,7 +351,7 @@ adapters: ``` *adapters.kafkaMessagingSpec* needs to contain configuration properties as described in Hono's -[Kafka client admin guide](https://www.eclipse.org/hono/docs/admin-guide/hono-kafka-client-configuration/). +[Kafka client admin guide](https://eclipse.dev/hono/docs/admin-guide/hono-kafka-client-configuration/). Make sure to adapt/add properties as required by the Kafka cluster. Assuming that the file is named `customKafkaCluster.yaml`, the values can then be passed in to the Helm `install` @@ -411,7 +418,7 @@ adapters: ``` All of the *specs* need to contain Hono client configuration properties as described in the -[client admin guide](https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/). +[client admin guide](https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/). Make sure to adapt/add properties as required by the custom service implementations. The information contained in the *specs* will then be used by all protocol adapters that get deployed. @@ -518,7 +525,7 @@ adapters: ``` Both the *amqpMessagingNetworkSpec* and the *commandAndControlSpec* need to contain Hono client configuration properties -as described in the [client admin guide](https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/). +as described in the [client admin guide](https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/). Make sure to adapt/add properties as required by the AMQP Messaging Network. Note that *my-secret* is expected to already exist in the namespace that Hono gets installed to, i.e. the Helm chart @@ -562,7 +569,7 @@ The dashboard can then be opened by pointing your browser to `http://localhost:3 The chart can be customized to use container images other than the default ones. This can be used to install an older version of the images or to install a Hono milestone using the chart. It can also be used to install custom built images that need to be pulled from a different (private) container registry. Please refer to Hono's -[build instructions](https://www.eclipse.org/hono/docs/dev-guide/building_hono/#pushing-images) for details regarding +[build instructions](https://eclipse.dev/hono/docs/dev-guide/building_hono/#pushing-images) for details regarding building custom images and pushing them to a private container registry. The `values.yaml` file contains configuration properties for setting the container image and tag names to use for @@ -573,15 +580,15 @@ The following command installs Hono using custom built images published on a pri *2.0.0-custom* instead of the ones indicated by the chart's *appVersion* property: ```bash -helm install eclipse-hono eclipse-iot/hono -n hono --wait --set honoImagesTag=2.0.0-custom --set honoContainerRegistry=my-registry:9090 +helm install eclipse-hono eclipse-iot/hono -n hono --wait --set honoImagesTag=2.7.0-custom --set honoContainerRegistry=my-registry:9090 ``` It is also possible to define the image and tag names and container registry for each component separately. The easiest way to do that is to create a YAML file that specifies the particular properties: ```yaml -# pull standard adapter images in version 2.0.0 from Docker Hub by default -honoImagesTag: "2.0.0" +# pull standard adapter images in version 2.7.0 from Docker Hub by default +honoImagesTag: "2.7.0" deviceRegistryExample: # pull custom Device Registry image from private container registry @@ -592,7 +599,7 @@ deviceRegistryExample: authServer: # pull "older" release from Docker Hub imageName: "eclipse/hono-service-auth" - imageTag: "1.12.2" + imageTag: "2.6.0" ``` Assuming that the file is named `customImages.yaml`, the values can then be passed in to the @@ -614,28 +621,28 @@ details regarding the setup and configuration of a private container registry. ### Deploying via a private Registry -Please refer to Hono's [Building from Source](https://www.eclipse.org/hono/docs/dev-guide/building_hono/) instructions +Please refer to Hono's [Building from Source](https://eclipse.dev/hono/docs/dev-guide/building_hono/) instructions for details regarding getting the source code, building and pushing the container images. As in the previous section, the names of the custom images are configured in a YAML file: ```yaml -# use version 2.0.0-CUSTOM -honoImagesTag: "2.0.0-CUSTOM" +# use version 2.7.0-CUSTOM +honoImagesTag: "2.7.0-CUSTOM" deviceRegistryExample: - imageName: "my.registry.io/eclipse/hono-service-device-registry-mongodb" + imageName: "my.registry.io/eclipsehono/hono-service-device-registry-mongodb" authServer: - imageName: "my.registry.io/eclipse/hono-service-auth" + imageName: "my.registry.io/eclipsehono/hono-service-auth" commandRouterService: - imageName: "my.registry.io/eclipse/hono-service-command-router-infinispan" + imageName: "my.registry.io/eclipsehono/hono-service-command-router-infinispan" adapters: amqp: - imageName: "my.registry.io/eclipse/hono-adapter-amqp" + imageName: "my.registry.io/eclipsehono/hono-adapter-amqp" mqtt: - imageName: "my.registry.io/eclipse/hono-adapter-mqtt" + imageName: "my.registry.io/eclipsehono/hono-adapter-mqtt" http: - imageName: "my.registry.io/eclipse/hono-adapter-http" + imageName: "my.registry.io/eclipsehono/hono-adapter-http" ``` Assuming that the file is named `customImages.yaml`, the values can then be passed in to the @@ -700,7 +707,7 @@ with 80% of the container's memory limit being available to the process like thi ```yaml authServer: - imageName: "eclipse/hono-service-auth-native" + imageName: "eclipsehono/hono-service-auth-native" cmdLineArgs: - "-Xmx24m" resources: @@ -715,10 +722,10 @@ authServer: ## Configuring Storage for Command Routing Data Hono needs to store information about the connection status of devices during runtime. -This kind of information is used for determining how [command & control](https://www.eclipse.org/hono/docs/concepts/command-and-control/) +This kind of information is used for determining how [command & control](https://eclipse.dev/hono/docs/concepts/command-and-control/) messages, that are sent by business applications, can be routed to the protocol adapters that the target devices are connected to. -Hono's protocol adapters can use the [Command Router API](https://www.eclipse.org/hono/docs/api/command-router/) to supply +Hono's protocol adapters can use the [Command Router API](https://eclipse.dev/hono/docs/api/command-router/) to supply device connection information with which a Command Router service component can route command & control messages to the protocol adapters that the target devices are connected to. @@ -791,7 +798,7 @@ cluster and how to install Hono to it. The steps described include: * Helm based installation of Hono to the AKS instance. * (Optionally) using a managed [Azure Service Bus](https://docs.microsoft.com/azure/service-bus-messaging) instance as the broker component for Hono's - [AMQP 1.0 based messaging infrastructure](https://www.eclipse.org/hono/docs/architecture/component-view/#amqp-10-based-messaging-infrastructure) + [AMQP 1.0 based messaging infrastructure](https://eclipse.dev/hono/docs/architecture/component-view/#amqp-10-based-messaging-infrastructure) instead of the Apache ActiveMQ Artemis instance that is installed by the chart by default. - [Virtual Network (VNet) service endpoints](https://docs.microsoft.com/azure/virtual-network) ensure protected communication between AKS and Azure Service Bus. diff --git a/charts/hono/ci/quarkus-native-images-values.yaml b/charts/hono/ci/quarkus-native-images-values.yaml index e9ca5ea8..d5d974ca 100644 --- a/charts/hono/ci/quarkus-native-images-values.yaml +++ b/charts/hono/ci/quarkus-native-images-values.yaml @@ -32,40 +32,34 @@ kafka: create: false authServer: - imageName: "eclipse/hono-service-auth-native" + imageName: "eclipsehono/hono-service-auth-native" cmdLineArgs: - "-Xmx24m" resources: requests: - cpu: memory: "30Mi" limits: - cpu: memory: "30Mi" commandRouterService: - imageName: "eclipse/hono-service-command-router-infinispan-native" + imageName: "eclipsehono/hono-service-command-router-infinispan-native" cmdLineArgs: - - "-Xmx96m" + - "-Xmx110m" resources: requests: - cpu: - memory: "120Mi" + memory: "140Mi" limits: - cpu: - memory: "120Mi" + memory: "140Mi" deviceRegistryExample: embeddedJdbcDeviceRegistry: - imageName: "eclipse/hono-service-device-registry-jdbc-native" + imageName: "eclipsehono/hono-service-device-registry-jdbc-native" cmdLineArgs: - "-Xmx160m" resources: requests: - cpu: memory: "120Mi" limits: - cpu: memory: "120Mi" adapters: @@ -73,7 +67,7 @@ adapters: enabled: false coap: enabled: true - imageName: "eclipse/hono-adapter-coap-native" + imageName: "eclipsehono/hono-adapter-coap-native" cmdLineArgs: - "-Xmx96m" hono: @@ -86,10 +80,8 @@ adapters: maxConnections: 70 resources: requests: - cpu: memory: "120Mi" limits: - cpu: memory: "120Mi" http: enabled: false diff --git a/charts/hono/config/artemis/liveness-probe.sh b/charts/hono/config/artemis/liveness-probe.sh index ef5df20a..da75bc5d 100644 --- a/charts/hono/config/artemis/liveness-probe.sh +++ b/charts/hono/config/artemis/liveness-probe.sh @@ -14,7 +14,7 @@ # brokerName=${1:-hono-broker} -url="http://localhost:8161/console/jolokia/read/org.apache.activemq.artemis:broker=%22${brokerName}%22/Version" - -curl -s --user artemis:artemis -H "Origin: http://0.0.0.0" ${url} +brokerIP=`hostname -I | cut -f 1 -d ' '` +url="http://${brokerIP}:8161/console/jolokia/read/org.apache.activemq.artemis:broker=%22${brokerName}%22/Version" +curl -s --user artemis:artemis -H "Origin: http://${brokerIP}" ${url} diff --git a/charts/hono/config/artemis/readiness-probe.sh b/charts/hono/config/artemis/readiness-probe.sh index 82cc11cb..16e707bb 100755 --- a/charts/hono/config/artemis/readiness-probe.sh +++ b/charts/hono/config/artemis/readiness-probe.sh @@ -15,7 +15,7 @@ brokerName=${1:-hono-broker} acceptorName=${2:-amqps} -url="http://localhost:8161/console/jolokia/read/org.apache.activemq.artemis:broker=%22${brokerName}%22,component=acceptors,name=%22${acceptorName}%22/Started" - -curl -s --user artemis:artemis -H "Origin: http://0.0.0.0" ${url} | grep "\"value\":true" +brokerIP=`hostname -I | cut -f 1 -d ' '` +url="http://${brokerIP}:8161/console/jolokia/read/org.apache.activemq.artemis:broker=%22${brokerName}%22,component=acceptors,name=%22${acceptorName}%22/Started" +curl -s --user artemis:artemis -H "Origin: http://${brokerIP}" ${url} | grep "\"value\":true" diff --git a/charts/hono/config/command-router/embedded-cache-config.xml b/charts/hono/config/command-router/embedded-cache-config.xml index ff39c321..4c9de45d 100644 --- a/charts/hono/config/command-router/embedded-cache-config.xml +++ b/charts/hono/config/command-router/embedded-cache-config.xml @@ -1,6 +1,6 @@ - - + xsi:schemaLocation="urn:infinispan:config:15.2 https://infinispan.org/schemas/infinispan-config-15.2.xsd" + xmlns="urn:infinispan:config:15.2"> - + diff --git a/charts/hono/config/infinispan/hono-data-grid.xml b/charts/hono/config/infinispan/hono-data-grid.xml index eb94ca92..01e22325 100644 --- a/charts/hono/config/infinispan/hono-data-grid.xml +++ b/charts/hono/config/infinispan/hono-data-grid.xml @@ -1,6 +1,6 @@ + xsi:schemaLocation="urn:infinispan:config:15.2 https://infinispan.org/schemas/infinispan-config-15.2.xsd + urn:infinispan:server:15.2 https://infinispan.org/schemas/infinispan-server-15.2.xsd" + xmlns="urn:infinispan:config:15.2" + xmlns:server="urn:infinispan:server:15.2"> - - - - @@ -41,7 +37,7 @@ - + @@ -58,38 +54,27 @@ - + - - - - - - - - + - + - - + - + diff --git a/charts/hono/profileGettingStarted-pre2.7-values.yaml b/charts/hono/profileGettingStarted-pre2.7-values.yaml new file mode 100644 index 00000000..3fb5210c --- /dev/null +++ b/charts/hono/profileGettingStarted-pre2.7-values.yaml @@ -0,0 +1,99 @@ +# +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License 2.0 which is available at +# http://www.eclipse.org/legal/epl-2.0 +# +# SPDX-License-Identifier: EPL-2.0 +# + +# This profile provides a minimal setup of Hono that is suitable for walking through +# Hono's Getting Started guide using a local Kubernetes cluster. +# This profile is supposed to be used with Hono chart versions prior to 2.7.0. + +# This is required to be able to still use the (unmaintained) "bitnamylegacy" container images +# for Kafka and MongoDB, which are used by the chart's example configurations for the Kafka Messaging +# Infrastucture and the Device Registry. +# see https://github.com/bitnami/charts/issues/30850 +# see https://github.com/eclipse-packages/packages/issues/567 +global: + security: + allowInsecureImages: true + +grafana: + enabled: false + +prometheus: + createInstance: false + +jaegerBackendExample: + enabled: false + +adapters: + http: + enabled: true + imageName: "eclipse/hono-adapter-http-native" + resources: + requests: + cpu: "50m" + memory: "120Mi" + limits: + memory: "120Mi" + + mqtt: + enabled: true + imageName: "eclipse/hono-adapter-mqtt-native" + resources: + requests: + cpu: "50m" + memory: "120Mi" + limits: + memory: "120Mi" + + amqp: + enabled: false + + coap: + enabled: false + + kura: + enabled: false + + lora: + enabled: false + +authServer: + imageName: "eclipse/hono-service-auth-native" + resources: + requests: + cpu: "50m" + memory: "60Mi" + limits: + memory: "60Mi" + +deviceRegistryExample: + type: "embedded" + embeddedJdbcDeviceRegistry: + imageName: "eclipse/hono-service-device-registry-jdbc" + resources: + requests: + cpu: "100m" + memory: "400Mi" + limits: + memory: "400Mi" + +dataGridExample: + enabled: false + +commandRouterService: + imageName: "eclipse/hono-service-command-router-native" + resources: + requests: + cpu: "50m" + memory: "140Mi" + limits: + memory: "140Mi" diff --git a/charts/hono/profileGettingStarted-values.yaml b/charts/hono/profileGettingStarted-values.yaml new file mode 100644 index 00000000..ac3a972d --- /dev/null +++ b/charts/hono/profileGettingStarted-values.yaml @@ -0,0 +1,110 @@ +# +# Copyright (c) 2026 Contributors to the Eclipse Foundation +# +# See the NOTICE file(s) distributed with this work for additional +# information regarding copyright ownership. +# +# This program and the accompanying materials are made available under the +# terms of the Eclipse Public License 2.0 which is available at +# http://www.eclipse.org/legal/epl-2.0 +# +# SPDX-License-Identifier: EPL-2.0 +# + +# This profile provides a minimal setup of Hono that is suitable for walking through +# Hono's Getting Started guide using a local Kubernetes cluster. +# This profile is supposed to be used with Hono chart versions starting from 2.7.0. + +grafana: + enabled: false + +prometheus: + createInstance: false + +jaegerBackendExample: + enabled: false + +kafka: + controller: + resources: + requests: + cpu: "150m" + memory: "1500Mi" + limits: + memory: "1500Mi" + extraConfig: | + group.initial.rebalance.delay.ms=0 + offsets.topic.replication.factor=1 + transaction.state.log.min.isr=1 + transaction.state.log.replication.factor=1 + log.flush.interval.messages=1000 + log.flush.interval.ms=1000 + log.retention.bytes=10485760 + log.retention.check.interval.ms=300000 + log.retention.hours=1 + log.segment.bytes=10485760 + +adapters: + http: + enabled: true + imageName: "eclipsehono/hono-adapter-http-native" + resources: + requests: + cpu: "50m" + memory: "120Mi" + limits: + memory: "120Mi" + + mqtt: + enabled: true + imageName: "eclipsehono/hono-adapter-mqtt-native" + resources: + requests: + cpu: "50m" + memory: "120Mi" + limits: + memory: "120Mi" + + amqp: + enabled: false + + coap: + enabled: false + + kura: + enabled: false + + lora: + enabled: false + +authServer: + imageName: "eclipsehono/hono-service-auth-native" + resources: + requests: + cpu: "50m" + memory: "60Mi" + limits: + memory: "60Mi" + +deviceRegistryExample: + type: "embedded" + embeddedJdbcDeviceRegistry: + imageName: "eclipsehono/hono-service-device-registry-jdbc" + resources: + requests: + cpu: "100m" + memory: "400Mi" + limits: + memory: "400Mi" + +dataGridExample: + enabled: false + +commandRouterService: + imageName: "eclipsehono/hono-service-command-router-native" + resources: + requests: + cpu: "50m" + memory: "140Mi" + limits: + memory: "140Mi" diff --git a/charts/hono/templates/NOTES.txt b/charts/hono/templates/NOTES.txt index cdd9d9e6..49e013a6 100644 --- a/charts/hono/templates/NOTES.txt +++ b/charts/hono/templates/NOTES.txt @@ -32,6 +32,9 @@ NAME {{ "READY STATUS RESTARTS AGE" {{ include "hono.fullname" . }}-artemis-f8f7dc7f4-864cj 1/1 Running 0 5m51s {{ include "hono.fullname" . }}-dispatch-router-6c77dc78bd-hjn4l 1/1 Running 0 5m51s {{- end }} +{{- if .Values.dataGridExample.enabled }} +{{ include "hono.fullname" . }}-data-grid-0 1/1 Running 0 5m51s +{{- end }} {{- if ( has "kafka" .Values.messagingNetworkTypes ) }} {{ include "hono.fullname" . }}-kafka-controller-0 1/1 Running 0 5m51s {{- end }} diff --git a/charts/hono/templates/artemis/artemis-deployment.yaml b/charts/hono/templates/artemis/artemis-deployment.yaml index 3515afe3..1c6e548a 100644 --- a/charts/hono/templates/artemis/artemis-deployment.yaml +++ b/charts/hono/templates/artemis/artemis-deployment.yaml @@ -1,7 +1,7 @@ {{- $amqpEnabled := and ( has "amqp" .Values.messagingNetworkTypes ) .Values.amqpMessagingNetworkExample.enabled -}} {{- if and $amqpEnabled ( not .Values.amqpMessagingNetworkExample.broker.servicebus.host ) }} # -# Copyright (c) 2019, 2022 Contributors to the Eclipse Foundation +# Copyright (c) 2019 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. @@ -47,8 +47,6 @@ spec: value: admin - name: HOME value: /home/jboss - - name: AMQ_EXTRA_ARGS - value: "--http-host 0.0.0.0" - name: JAVA_INITIAL_MEM_RATIO value: "30" - name: JAVA_MAX_MEM_RATIO diff --git a/charts/hono/templates/example-data-grid/configmap.yaml b/charts/hono/templates/example-data-grid/configmap.yaml index 45059bc5..00875906 100644 --- a/charts/hono/templates/example-data-grid/configmap.yaml +++ b/charts/hono/templates/example-data-grid/configmap.yaml @@ -1,6 +1,6 @@ {{- if .Values.dataGridExample.enabled }} # -# Copyright (c) 2019, 2020 Contributors to the Eclipse Foundation +# Copyright (c) 2019 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. @@ -20,9 +20,10 @@ data: hono-data-grid.xml: | {{- tpl ( .Files.Get "config/infinispan/hono-data-grid.xml" ) . | nindent 4 }} users.properties: | + #$REALM_NAME=default$ + #$ALGORITHM=clear$ + #Tue Feb 17 17:15:00 CEST 2026 {{ printf "%s=%s" .Values.dataGridExample.authUsername .Values.dataGridExample.authPassword }} public-groups.properties: | - {{ printf "%s=adapter" .Values.dataGridExample.authUsername }} - mgmt-groups.properties: | - {{ printf "%s=admin" .Values.dataGridExample.authUsername }} + {{ printf "%s=application" .Values.dataGridExample.authUsername }} {{- end }} diff --git a/charts/hono/templates/example-data-grid/statefulset.yaml b/charts/hono/templates/example-data-grid/statefulset.yaml index 71a2e200..177af1fb 100644 --- a/charts/hono/templates/example-data-grid/statefulset.yaml +++ b/charts/hono/templates/example-data-grid/statefulset.yaml @@ -1,6 +1,6 @@ {{- if .Values.dataGridExample.enabled }} # -# Copyright (c) 2019, 2021 Contributors to the Eclipse Foundation +# Copyright (c) 2019 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. @@ -36,14 +36,10 @@ spec: - image: {{ .Values.dataGridExample.imageName | quote }} imagePullPolicy: IfNotPresent name: hono-data-grid - command: - - /opt/infinispan/bin/server.sh + args: - -c - - hono-data-grid.xml - - -Dquarkus.log.category."org.infinispan.AUDIT".level=WARN + - /opt/hono/infinispan/hono-data-grid.xml env: - - name: JDK_JAVA_OPTIONS - value: "-XX:MinRAMPercentage=85 -XX:MaxRAMPercentage=85" - name: JAVA_OPTIONS value: {{ printf "-Djgroups.dns.query=%s-%s" (include "hono.fullname" .) $args.name }} ports: @@ -51,22 +47,18 @@ spec: containerPort: 11222 protocol: TCP volumeMounts: - - mountPath: /opt/infinispan/server/conf/hono-data-grid.xml + - mountPath: /opt/hono/infinispan/hono-data-grid.xml name: conf subPath: hono-data-grid.xml readOnly: true - - mountPath: /opt/infinispan/server/conf/users.properties + - mountPath: /opt/hono/infinispan/users.properties name: conf subPath: users.properties readOnly: true - - mountPath: /opt/infinispan/server/conf/public-groups.properties + - mountPath: /opt/hono/infinispan/public-groups.properties name: conf subPath: public-groups.properties readOnly: true - - mountPath: /opt/infinispan/server/conf/mgmt-groups.properties - name: conf - subPath: mgmt-groups.properties - readOnly: true {{- include "hono.component.healthChecks" $args | nindent 8 }} {{- with .Values.dataGridExample.resources }} resources: diff --git a/charts/hono/values.yaml b/charts/hono/values.yaml index 32033dfa..784e24a5 100755 --- a/charts/hono/values.yaml +++ b/charts/hono/values.yaml @@ -14,6 +14,15 @@ # Default values for eclipse-hono. # Declare variables to be passed into your templates. +# This is required to be able to still use the (unmaintained) "bitnamylegacy" container images +# for Kafka and MongoDB, which are used by the chart's example configurations for the Kafka Messaging +# Infrastucture and the Device Registry. +# see https://github.com/bitnami/charts/issues/30850 +# see https://github.com/eclipse-packages/packages/issues/567 +global: + security: + allowInsecureImages: true + nameOverride: "" fullnameOverride: "" @@ -27,7 +36,7 @@ fullnameOverride: "" # the container images for Hono's components should be pulled from. # The registry can also be set separately for each component, overriding # the value specified here. -honoContainerRegistry: "index.docker.io" +honoContainerRegistry: "docker.io" # imagePullSecrets for pulling docker images from private registry. It will # be added to every deployment and statefulset. @@ -109,7 +118,7 @@ messagingNetworkTypes: # is stored in an AMQP 1.0 message sent to the AMQP Messaging Network. A "true" value here # configures the format used in previous Hono versions, while setting "false" chooses a more # generic format (compatible with e.g. Eclipse Ditto). Refer to -# https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ +# https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for the documentation of the corresponding "useLegacyTraceContextFormat" Hono client property. useLegacyAmqpTraceContextFormat: true @@ -139,7 +148,7 @@ adapters: # adapters for connecting to the AMQP Messaging Network to forward downstream messages to. # This property MUST be set if "messagingNetworkTypes" contains "amqp" and # "amqpMessagingNetworkExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. # However, if "amqpMessagingNetworkExample.enabled" is set to true, only # "keyPath", "certPath", "trustStorePath", "hostnameVerificationRequired" can be set. @@ -157,7 +166,7 @@ adapters: # to send commands to devices. # This property MUST be set if "messagingNetworkTypes" contains "amqp" and # "amqpMessagingNetworkExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. # However, if "amqpMessagingNetworkExample.enabled" is set to true, only # "keyPath", "certPath", "trustStorePath", "hostnameVerificationRequired" can be set. @@ -171,7 +180,7 @@ adapters: # adapters for connecting to the Kafka cluster to be used for messaging. # This property MUST be set if "messagingNetworkTypes" contains "kafka" and # "kafkaMessagingClusterExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/common-config/#kafka-based-messaging-configuration + # Please refer to https://eclipse.dev/hono/docs/admin-guide/common-config/#kafka-based-messaging-configuration # for a description of supported properties. kafkaMessagingSpec: {} # commonClientConfig: @@ -198,21 +207,21 @@ adapters: # tenantSpec contains Hono client properties used by all protocol adapters for # connecting to the Tenant service. # This property MUST be set if "deviceRegistryExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. tenantSpec: # deviceRegistrationSpec contains Hono client properties used by all protocol adapters for # connecting to the Device Registration service. # This property MUST be set if "deviceRegistryExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. deviceRegistrationSpec: # credentialsSpec contains Hono client properties used by all protocol adapters for # connecting to the Credentials service. # This property MUST be set if "deviceRegistryExample.enabled" is set to false. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. credentialsSpec: @@ -220,7 +229,7 @@ adapters: # connecting to the Command Router service. # If not set, default properties will be used for establishing a TLS based connection # to the command router server. - # Please refer to https://www.eclipse.org/hono/docs/admin-guide/hono-client-configuration/ + # Please refer to https://eclipse.dev/hono/docs/admin-guide/hono-client-configuration/ # for a description of supported properties. commandRouterSpec: @@ -245,7 +254,7 @@ adapters: enabled: true # imageName contains the name (excluding registry) # of the container image to use for the AMQP adapter - imageName: "eclipse/hono-adapter-amqp" + imageName: "eclipsehono/hono-adapter-amqp" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -354,7 +363,7 @@ adapters: tlsTrustStoreConfigMap: "example" # hono contains the adapter's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/amqp-adapter-config/ + # https://eclipse.dev/hono/docs/admin-guide/amqp-adapter-config/ hono: app: # maxInstances defines the number of adapter Verticle instances to deploy @@ -374,7 +383,7 @@ adapters: enabled: false # imageName contains the name (excluding registry) # of the container image to use for the CoAP adapter - imageName: "eclipse/hono-adapter-coap" + imageName: "eclipsehono/hono-adapter-coap" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -501,7 +510,7 @@ adapters: enabled: true # imageName contains the name (excluding registry) # of the container image to use for the HTTP adapter - imageName: "eclipse/hono-adapter-http" + imageName: "eclipsehono/hono-adapter-http" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -610,7 +619,7 @@ adapters: tlsTrustStoreConfigMap: "example" # hono contains the adapter's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/http-adapter-config/ + # https://eclipse.dev/hono/docs/admin-guide/http-adapter-config/ hono: app: # maxInstances defines the number of adapter Verticle instances to deploy @@ -630,7 +639,7 @@ adapters: enabled: false # imageName contains the name (excluding registry) # of the container image to use for the LoRa adapter - imageName: "eclipse/hono-adapter-lora" + imageName: "eclipsehono/hono-adapter-lora" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -758,7 +767,7 @@ adapters: enabled: true # imageName contains the name (excluding registry) # of the container image to use for the MQTT adapter - imageName: "eclipse/hono-adapter-mqtt" + imageName: "eclipsehono/hono-adapter-mqtt" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -867,7 +876,7 @@ adapters: tlsTrustStoreConfigMap: "example" # hono contains the adapter's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/mqtt-adapter-config/ + # https://eclipse.dev/hono/docs/admin-guide/mqtt-adapter-config/ hono: app: # maxInstances defines the number of adapter Verticle instances to deploy @@ -887,7 +896,7 @@ authServer: # imageName contains the name (excluding registry) # of the container image to use for the Auth Server - imageName: "eclipse/hono-service-auth" + imageName: "eclipsehono/hono-service-auth" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -984,7 +993,7 @@ authServer: tlsKeysSecret: "example" # hono contains the Auth Server's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/auth-server-config/ + # https://eclipse.dev/hono/docs/admin-guide/auth-server-config/ hono: app: # maxInstances defines the number of adapter Verticle instances to deploy @@ -1096,7 +1105,7 @@ deviceRegistryExample: clientTrustStorePath: # hono contains the Device Registry's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/device-registry-config/ + # https://eclipse.dev/hono/docs/admin-guide/device-registry-config/ hono: # auth contains Hono client properties used by the example registry for # connecting to the Authentication service. @@ -1129,9 +1138,9 @@ deviceRegistryExample: # for connecting to a Kafka cluster to be used for messaging. # This property will be used if "messagingNetworkTypes" contains "kafka" and # "kafkaMessagingClusterExample.enabled" is set to false. Please refer to - # https://www.eclipse.org/hono/docs/admin-guide/jdbc-device-registry-config/#kafka-based-messaging-configuration + # https://eclipse.dev/hono/docs/admin-guide/jdbc-device-registry-config/#kafka-based-messaging-configuration # or - # https://www.eclipse.org/hono/docs/admin-guide/mongodb-device-registry-config/#kafka-based-messaging-configuration + # https://eclipse.dev/hono/docs/admin-guide/mongodb-device-registry-config/#kafka-based-messaging-configuration # for a description of supported properties. kafka: {} # commonClientConfig contains Kafka client configuration to be used by all Kafka consumers and producers @@ -1152,7 +1161,7 @@ deviceRegistryExample: embeddedJdbcDeviceRegistry: # imageName contains the name (excluding registry) # of the container image for the example embedded jdbc device registry. - imageName: "eclipse/hono-service-device-registry-jdbc" + imageName: "eclipsehono/hono-service-device-registry-jdbc" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -1225,7 +1234,7 @@ deviceRegistryExample: mongoDBBasedDeviceRegistry: # imageName contains the name (excluding registry) # of the container image for the example MongoDB based device registry. - imageName: "eclipse/hono-service-device-registry-mongodb" + imageName: "eclipsehono/hono-service-device-registry-mongodb" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -1308,7 +1317,7 @@ deviceRegistryExample: jdbcBasedDeviceRegistry: # imageName contains the name (excluding registry) # of the container image for the example jdbc based device registry. - imageName: "eclipse/hono-service-device-registry-jdbc" + imageName: "eclipsehono/hono-service-device-registry-jdbc" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -1459,7 +1468,7 @@ commandRouterService: # imageName contains the name (excluding registry) # of the container image to use for the Command Router service - imageName: "eclipse/hono-service-command-router-infinispan" + imageName: "eclipsehono/hono-service-command-router-infinispan" # imageTag contains the tag of the container image to deploy. # If not specified, the value of the honoImagesTag property is used. # imageTag: @@ -1571,7 +1580,7 @@ commandRouterService: clientTrustStorePath: # hono contains the service's configuration properties as defined in - # https://www.eclipse.org/hono/docs/admin-guide/command-router-config/ + # https://eclipse.dev/hono/docs/admin-guide/command-router-config/ hono: app: # maxInstances defines the number of adapter Verticle instances to deploy @@ -1593,7 +1602,7 @@ commandRouterService: # cache contains properties configuring the embedded or remote cache that # the Command Router uses for storing routing information. Please refer to Hono's Command Router admin guide at - # https://www.eclipse.org/hono/docs/admin-guide/command-router-config/#data-grid-connection-configuration for + # https://eclipse.dev/hono/docs/admin-guide/command-router-config/#data-grid-connection-configuration for # details regarding cache configuration. # If not set explicitly here and "dataGridExample.enabled" is "true", the example data grid is used. # If "dataGridExample.enabled" is "false", an embedded cache with a default configuration will be used. @@ -1605,7 +1614,7 @@ commandRouterService: # for connecting to a Kafka cluster to be used for messaging. # This property will be used if "messagingNetworkTypes" contains "kafka" and # "kafkaMessagingClusterExample.enabled" is set to false. Please refer to - # https://www.eclipse.org/hono/docs/admin-guide/command-router-config/#kafka-based-messaging-configuration + # https://eclipse.dev/hono/docs/admin-guide/command-router-config/#kafka-based-messaging-configuration # for a description of supported properties. kafka: {} # commonClientConfig contains Kafka client configuration to be used by all Kafka consumers and producers @@ -1722,7 +1731,7 @@ grafana: # to be used for messaging if "messagingNetworkTypes" contains "kafka" kafkaMessagingClusterExample: # enabled indicates whether the example Kafka cluster consisting of a single broker - # and one Zookeeper instance should be deployed. This minimal deployment is not suitable + # instance should be deployed. This minimal deployment is not suitable # for production purposes. To use an already existing Kafka cluster instead, # set this property to false and configure "adapters.kafkaMessagingSpec". enabled: true @@ -1947,7 +1956,7 @@ amqpMessagingNetworkExample: artemis: # imageName contains the name (including tag) of the container # image to use for the example AMQP Messaging Network Broker - imageName: "quay.io/artemiscloud/activemq-artemis-broker:1.0.6" + imageName: "quay.io/artemiscloud/activemq-artemis-broker:1.0.32" # [DEPRECATED: use probes instead] livenessProbeInitialDelaySeconds contains the value to use for the "initialDelaySeconds" # configuration property of the component's liveness probe. # The value of the top level "livenessProbeInitialDelaySeconds" property will be used if not set. @@ -2010,7 +2019,7 @@ dataGridExample: enabled: false # imageName contains the name (including tag) # of the container image to use for the example data grid. - imageName: "infinispan/server-native:13.0" + imageName: "quay.io/infinispan/server:15.2.6.Final" # [DEPRECATED: use probes instead] livenessProbeInitialDelaySeconds contains the value to use for the "initialDelaySeconds" # configuration property of the component's liveness probe. # The value of the top level "livenessProbeInitialDelaySeconds" property will be used if not set. @@ -2023,7 +2032,7 @@ dataGridExample: probes: livenessProbe: httpGet: - path: "/rest/v2/cache-managers/routing-info/health/status" + path: "/rest/v2/container/health/status" port: "hotrod" failureThreshold: 5 successThreshold: 1 @@ -2031,7 +2040,7 @@ dataGridExample: initialDelaySeconds: 300 readinessProbe: httpGet: - path: "/rest/v2/cache-managers/routing-info/health/status" + path: "/rest/v2/container/health/status" port: "hotrod" failureThreshold: 5 successThreshold: 1 @@ -2044,10 +2053,10 @@ dataGridExample: resources: requests: cpu: "150m" - memory: "100Mi" + memory: "320Mi" limits: cpu: "1" - memory: "200Mi" + memory: "320Mi" pod: priorityClassName: ""