Code Monkey home page Code Monkey logo

thingsboard-ce-k8s's Introduction

Kubernetes resources configuration for ThingsBoard

Here you can find scripts for deployment on different Kubernetes platforms.

thingsboard-ce-k8s's People

Contributors

amarkevich avatar ashmidt-thingsboard avatar ashvayka avatar dmytro-landiak avatar harshdeepratnani avatar ikulikov avatar markvortman avatar midokura-agustin avatar mistadave avatar mykolaichukalexander avatar pon0marev avatar smatvienko-tb avatar ultrazombie avatar volodymyr-babak avatar vzikratyi-tb avatar yevhenbondarenko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

thingsboard-ce-k8s's Issues

TB Edge won't connect to TB deployed in GKE

I've deployed TB in GKE and TB Edge following the instructions on the official website, but Edge won't connect:

2022-11-18 16:53:28,542 [main] INFO o.t.edge.rpc.EdgeGrpcClient - [287b07ab-d594-49c1-04e1-1f8b4da7dc5b] Sending a connect request to the TB!
2022-11-18 16:53:52,097 [cloud-manager-reconnect-52-thread-1] INFO o.t.s.s.cloud.CloudManagerService - Trying to reconnect due to the error: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception!
2022-11-18 16:53:52,105 [cloud-manager-reconnect-52-thread-1] INFO o.t.edge.rpc.EdgeGrpcClient - [287b07ab-d594-49c1-04e1-1f8b4da7dc5b] Sending a connect request to the TB!
2022-11-18 16:53:55,097 [cloud-manager-reconnect-52-thread-1] INFO o.t.s.s.cloud.CloudManagerService - Trying to reconnect due to the error: io.grpc.StatusRuntimeException: UNAVAILABLE: io exception!

I suspect that it has to be with the deployment config files, since tb-node container defines port 7070, but then there is no service listening on that port. only 8080.

https://github.com/thingsboard/thingsboard-ce-k8s/blob/master/gcp/microservices/tb-services.yml#L135

Am I missing anything?

Cassandra failed to start up

On the new minikube deployment, while trying to deploy cassandra using ./k8s-install-tb.sh, I get to the point where ThingsBoard installs the cql file in Cassandra:

Installing Cassandra DataBase schema part: schema-ts.cql

but it hangs, and after a long while, I get these logs in the cassandra pod:

cassandra 20:47:19.18 
cassandra 20:47:19.18 Welcome to the Bitnami cassandra container
cassandra 20:47:19.18 Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-cassandra
cassandra 20:47:19.18 Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-cassandra/issues
cassandra 20:47:19.18 
cassandra 20:47:19.19 INFO  ==> ** Starting Cassandra setup **
cassandra 20:47:19.21 INFO  ==> Validating settings in CASSANDRA_* env vars..
cassandra 20:47:19.21 WARN  ==> You set the environment variable CASSANDRA_PASSWORD=cassandra. This is the default value when bootstrapping Cassandra and should not be used in production environments.
cassandra 20:47:19.29 INFO  ==> Initializing Cassandra database...
cassandra 20:47:19.56 INFO  ==> Deploying Cassandra from scratch
cassandra 20:47:19.56 INFO  ==> Starting Cassandra
cassandra 20:47:19.57 INFO  ==> Checking that it started up correctly
cassandra 20:47:39.71 INFO  ==> Found CQL startup log line
grep: Unmatched ( or \(
grep: Unmatched ( or \(
grep: Unmatched ( or \(
grep: Unmatched ( or \(
grep: Unmatched ( or \(
cassandra 20:48:16.60 ERROR ==> Cassandra failed to start up

And I get these logs in tb-db-setup.

2021-11-08 20:43:28,951 [background-preinit] INFO  o.h.validator.internal.util.Version - HV000001: Hibernate Validator 6.0.13.Final
2021-11-08 20:43:30,866 [background-preinit] WARN  o.s.h.c.j.Jackson2ObjectMapperBuilder - For Jackson Kotlin classes support please add "com.fasterxml.jackson.module:jackson-module-kotlin" to the classpath
2021-11-08 20:43:33,782 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
2021-11-08 20:43:33,783 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2021-11-08 20:43:34,926 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 1093ms. Found 39 JPA repository interfaces.
2021-11-08 20:43:34,938 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
2021-11-08 20:43:34,938 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2021-11-08 20:43:35,016 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 78ms. Found 1 JPA repository interfaces.
2021-11-08 20:43:35,021 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
2021-11-08 20:43:35,021 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode.
2021-11-08 20:43:35,053 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 32ms. Found 1 JPA repository interfaces.
2021-11-08 20:43:36,211 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
2021-11-08 20:43:36,215 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode.
2021-11-08 20:43:36,353 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.rule.RuleChainRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,356 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.rule.RuleNodeRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,356 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sqlts.latest.TsKvLatestRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,360 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.relation.RelationRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,361 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.rule.RuleNodeStateRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,363 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.deprecated.OAuth2ClientRegistrationInfoRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,363 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.resource.TbResourceRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,364 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.OAuth2ClientRegistrationTemplateRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,364 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.tenant.TenantProfileRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,364 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.deprecated.OAuth2ClientRegistrationRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,365 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.audit.AuditLogRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,365 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.dashboard.DashboardRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,365 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.usagerecord.ApiUsageStateRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,366 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.widget.WidgetTypeRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,366 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sqlts.dictionary.TsKvDictionaryRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,366 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.OAuth2ParamsRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,368 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.device.DeviceRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,368 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.event.EventRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,368 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.user.UserCredentialsRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,371 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.ota.OtaPackageRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,375 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sqlts.ts.TsKvRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,376 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.settings.AdminSettingsRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,376 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.widget.WidgetsBundleRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,389 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.OAuth2RegistrationRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,395 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.device.DeviceCredentialsRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,396 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.attributes.AttributeKvRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,396 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.OAuth2DomainRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,396 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.resource.TbResourceInfoRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,396 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.rpc.RpcRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,398 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.dashboard.DashboardInfoRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,415 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.alarm.AlarmRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,416 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.tenant.TenantRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,416 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.asset.AssetRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,417 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.device.DeviceProfileRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,417 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.oauth2.OAuth2MobileRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,417 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.edge.EdgeRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,418 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.user.UserRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,418 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.component.ComponentDescriptorRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,418 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.customer.CustomerRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,419 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.entityview.EntityViewRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,419 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.edge.EdgeEventRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,419 [main] INFO  o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface org.thingsboard.server.dao.sql.ota.OtaPackageInfoRepository. If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository.
2021-11-08 20:43:36,419 [main] INFO  o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 177ms. Found 0 Redis repository interfaces.
2021-11-08 20:43:37,211 [main] INFO  o.s.i.c.DefaultConfiguringBeanFactoryPostProcessor - No bean named 'errorChannel' has been explicitly defined. Therefore, a default PublishSubscribeChannel will be created.
2021-11-08 20:43:37,244 [main] INFO  o.s.i.c.DefaultConfiguringBeanFactoryPostProcessor - No bean named 'taskScheduler' has been explicitly defined. Therefore, a default ThreadPoolTaskScheduler will be created.
2021-11-08 20:43:37,293 [main] INFO  o.s.i.c.DefaultConfiguringBeanFactoryPostProcessor - No bean named 'integrationHeaderChannelRegistry' has been explicitly defined. Therefore, a default DefaultHeaderChannelRegistry will be created.
2021-11-08 20:43:38,313 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'org.springframework.integration.config.IntegrationManagementConfiguration' of type [org.springframework.integration.config.IntegrationManagementConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-11-08 20:43:38,352 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'integrationChannelResolver' of type [org.springframework.integration.support.channel.BeanFactoryChannelResolver] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-11-08 20:43:38,356 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker - Bean 'integrationDisposableAutoCreatedBeans' of type [org.springframework.integration.config.annotation.Disposables] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2021-11-08 20:43:39,279 [main] INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port(s): 8080 (http)
2021-11-08 20:43:39,320 [main] INFO  o.a.coyote.http11.Http11NioProtocol - Initializing ProtocolHandler ["http-nio-0.0.0.0-8080"]
2021-11-08 20:43:39,320 [main] INFO  o.a.catalina.core.StandardService - Starting service [Tomcat]
2021-11-08 20:43:39,321 [main] INFO  o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/9.0.46]
2021-11-08 20:43:39,504 [main] INFO  o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext
2021-11-08 20:43:39,504 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 10414 ms
2021-11-08 20:43:40,390 [main] INFO  o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default]
2021-11-08 20:43:40,583 [main] INFO  org.hibernate.Version - HHH000412: Hibernate ORM core version 5.4.32.Final
2021-11-08 20:43:41,101 [main] INFO  o.h.annotations.common.Version - HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
2021-11-08 20:43:41,346 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting...
2021-11-08 20:43:41,517 [main] INFO  com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
2021-11-08 20:43:41,557 [main] INFO  org.hibernate.dialect.Dialect - HHH000400: Using dialect: org.hibernate.dialect.PostgreSQLDialect
2021-11-08 20:43:44,445 [main] INFO  o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2021-11-08 20:43:44,485 [main] INFO  o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default'
2021-11-08 20:43:48,076 [nosql-dispatcher-1-thread-1] INFO  o.t.s.d.u.AbstractBufferedRateExecutor - Buffered rate executor thread started
2021-11-08 20:43:48,092 [nosql-dispatcher-1-thread-2] INFO  o.t.s.d.u.AbstractBufferedRateExecutor - Buffered rate executor thread started
2021-11-08 20:43:49,094 [main] INFO  o.t.s.d.a.CachedAttributesService - Going to use directExecutor for the local cache type caffeine
2021-11-08 20:43:50,512 [main] INFO  o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [public/index.html]
2021-11-08 20:43:52,258 [main] INFO  o.s.s.web.DefaultSecurityFilterChain - Creating filter chain: any request, [org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter@22cce199, org.springframework.security.web.context.SecurityContextPersistenceFilter@8de8b07, org.springframework.security.web.header.HeaderWriterFilter@59509393, org.springframework.security.web.csrf.CsrfFilter@3dd27116, org.springframework.security.web.authentication.logout.LogoutFilter@6b64921f, org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter@1028a747, org.springframework.security.oauth2.client.web.OAuth2AuthorizationRequestRedirectFilter@613ba54e, org.springframework.security.oauth2.client.web.OAuth2LoginAuthenticationFilter@24890021, org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter@1fe37d27, org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter@14b4b25e, org.springframework.security.web.savedrequest.RequestCacheAwareFilter@3fc7abf6, org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter@3a720ae3, org.springframework.security.web.authentication.AnonymousAuthenticationFilter@4babe06f, org.springframework.security.oauth2.client.web.OAuth2AuthorizationCodeGrantFilter@7205a8b7, org.springframework.security.web.session.SessionManagementFilter@7ec75228, org.springframework.security.web.access.ExceptionTranslationFilter@345af277, org.springframework.security.web.access.intercept.FilterSecurityInterceptor@6d387e9b]
2021-11-08 20:43:52,678 [main] INFO  o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint(s) beneath base path '/actuator'
2021-11-08 20:43:52,837 [main] INFO  o.s.s.c.ThreadPoolTaskScheduler - Initializing ExecutorService 'taskScheduler'
2021-11-08 20:43:52,982 [main] INFO  o.s.i.endpoint.EventDrivenConsumer - Adding {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
2021-11-08 20:43:52,983 [main] INFO  o.s.i.c.PublishSubscribeChannel - Channel 'application.errorChannel' has 1 subscriber(s).
2021-11-08 20:43:52,988 [main] INFO  o.s.i.endpoint.EventDrivenConsumer - started bean '_org.springframework.integration.errorLogger'
2021-11-08 20:43:52,988 [main] INFO  o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-0.0.0.0-8080"]
2021-11-08 20:43:53,063 [main] INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8080 (http) with context path ''
2021-11-08 20:43:53,192 [main] INFO  o.t.s.i.ThingsboardInstallService - Starting ThingsBoard Installation...
2021-11-08 20:43:53,193 [main] INFO  o.t.s.i.ThingsboardInstallService - Installing DataBase schema for entities...
2021-11-08 20:43:53,194 [main] INFO  o.t.s.s.i.SqlAbstractDatabaseSchemaService - Installing SQL DataBase schema part: schema-entities.sql
2021-11-08 20:43:53,460 [main] INFO  o.t.s.s.i.SqlAbstractDatabaseSchemaService - Installing SQL DataBase schema indexes part: schema-entities-idx.sql
2021-11-08 20:43:53,499 [main] INFO  o.t.s.s.i.PsqlEntityDatabaseSchemaService - Installing SQL DataBase schema PostgreSQL specific indexes part: schema-entities-idx-psql-addon.sql
2021-11-08 20:43:53,528 [main] INFO  o.t.s.i.ThingsboardInstallService - Installing DataBase schema for timeseries...
2021-11-08 20:43:53,529 [main] INFO  o.t.s.s.i.CassandraAbstractDatabaseSchemaService - Installing Cassandra DataBase schema part: schema-ts.cql
2021-11-08 20:43:53,552 [main] WARN  c.d.o.d.internal.core.ContactPoints - Ignoring invalid contact point cassandra:9042 (unknown host cassandra)
2021-11-08 20:43:53,789 [main] INFO  c.d.o.d.i.c.DefaultMavenCoordinates - DataStax Java driver for Apache Cassandra(R) (com.datastax.oss:java-driver-core) version 4.10.0
2021-11-08 20:43:54,151 [Thingsboard Cluster-admin-0] INFO  c.d.o.d.internal.core.time.Clock - Could not access native clock (see debug logs for details), falling back to Java system clock
2021-11-08 20:43:54,153 [Thingsboard Cluster-admin-0] INFO  c.d.o.d.i.c.metadata.MetadataManager - [Thingsboard Cluster] No contact points provided, defaulting to /127.0.0.1:9042
2021-11-08 20:43:54,436 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:43:57,471 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:44:02,772 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:44:15,279 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:44:37,868 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:45:29,321 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:47:15,909 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))
2021-11-08 20:50:29,850 [Thingsboard Cluster-admin-1] WARN  c.d.o.d.i.c.c.ControlConnection - [Thingsboard Cluster] Error connecting to Node(endPoint=/127.0.0.1:9042, hostId=null, hashCode=28b26998), trying next node (ConnectionInitException: [Thingsboard Cluster|control|connecting...] Protocol initialization request, step 1 (OPTIONS): failed to send request (io.netty.channel.StacklessClosedChannelException))

Version of TB: 3.3.1
Commit: 80d6e8d9b9330baa57bc1570b444e05a6d99ab9d

WebSocket channel closes after 10 responses

the things board Ce version 3.4.3 monolith K8s setup closes the WebSocket channel after 10 responses (no reason, error code 1006)and as the Documents show there isn't any limitations also I tried the linux VM setup and it didn't close is there any limitation in the docker image setup? I also tried adding 0 value for ws env's and it didn't help
my changes to the ConfigMap
apiVersion: v1 kind: ConfigMap metadata: name: tb-node-config namespace: thingsboard labels: name: tb-node-config data: conf: | export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SESSIONS_PER_TENANT=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SESSIONS_PER_CUSTOMER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SESSIONS_PER_REGULAR_USER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SESSIONS_PER_PUBLIC_USER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_QUEUE_PER_WS_SESSION=5000 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SUBSCRIPTIONS_PER_TENANT=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SUBSCRIPTIONS_PER_CUSTOMER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SUBSCRIPTIONS_PER_REGULAR_USER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_SUBSCRIPTIONS_PER_PUBLIC_USER=0 export TB_SERVER_WS_TENANT_RATE_LIMITS_MAX_UPDATES_PER_SESSION=0

the logs
751.7a70ed70206456d6d163.js:1 WebSocket error event CloseEvent {isTrusted: true, wasClean: false, code: 1006, reason: '', type: 'close', …} onError @ 7751.7a70ed70206456d6d163.js:1 (anonymous) @ 7751.7a70ed70206456d6d163.js:1 __tryOrUnsub @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 _error @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 j.onclose @ 7751.7a70ed70206456d6d163.js:1 V @ polyfills.775a399a0b5f9321b84c.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 onInvokeTask @ vendor.3f3611f892c51888617d.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 runTask @ polyfills.775a399a0b5f9321b84c.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 at @ polyfills.775a399a0b5f9321b84c.js:1 it @ polyfills.775a399a0b5f9321b84c.js:1 mt @ polyfills.775a399a0b5f9321b84c.js:1 7751.7a70ed70206456d6d163.js:1 WebSocket error event CloseEvent {isTrusted: true, wasClean: false, code: 1006, reason: '', type: 'close', …} onError @ 7751.7a70ed70206456d6d163.js:1 (anonymous) @ 7751.7a70ed70206456d6d163.js:1 __tryOrUnsub @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 _error @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 error @ vendor.3f3611f892c51888617d.js:1 j.onclose @ 7751.7a70ed70206456d6d163.js:1 V @ polyfills.775a399a0b5f9321b84c.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 onInvokeTask @ vendor.3f3611f892c51888617d.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 runTask @ polyfills.775a399a0b5f9321b84c.js:1 invokeTask @ polyfills.775a399a0b5f9321b84c.js:1 at @ polyfills.775a399a0b5f9321b84c.js:1 it @ polyfills.775a399a0b5f9321b84c.js:1 mt @ polyfills.775a399a0b5f9321b84c.js:1

Encountering an error during thingsboard upgrade to vesrion 3.6.2 using helm chart

Hi All,
I am trying to upgrade my thingsboard that i installed using helm chart available in this repo. I am running the script k8s-upgrade-tb.sh where I installed my thingsboard application. I see some migration taking place however things start to go wrong when the script tries to upgrade to version 3.5.0. The following is the error log:

Starting ThingsBoard Upgrade from version 3.4.2 ... Clearing cache to upgrade from version 3.4.2 to 3.4.3 ... Clearing cache [repositorySettings] Upgrading ThingsBoard from version 3.4.2 to 3.4.3 ... Upgrading ThingsBoard from version 3.4.3 to 3.4.4 ... Upgrading ThingsBoard from version 3.4.4 to 3.5.0 ... Updating schema ... Schema updated. Creating default notification configs for system admin Unexpected error during ThingsBoard installation! org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:259) at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:233) at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:551) at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242) at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:152) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:174) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215) at com.sun.proxy.$Proxy258.save(Unknown Source) at org.thingsboard.server.dao.sql.JpaAbstractDao.save(JpaAbstractDao.java:68) at org.thingsboard.server.dao.sql.JpaAbstractDao.saveAndFlush(JpaAbstractDao.java:75) at org.thingsboard.server.dao.sql.JpaAbstractDao$$FastClassBySpringCGLIB$$c3259965.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89) at org.thingsboard.server.dao.aspect.SqlDaoCallsAspect.handleSqlCall(SqlDaoCallsAspect.java:158) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:634) at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:624) at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:72) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:175) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) at org.thingsboard.server.dao.sql.notification.JpaNotificationTargetDao$$EnhancerBySpringCGLIB$$8d6065d0.saveAndFlush(<generated>) at org.thingsboard.server.dao.notification.DefaultNotificationTargetService.saveNotificationTarget(DefaultNotificationTargetService.java:68) at org.thingsboard.server.dao.notification.DefaultNotificationSettingsService.createTarget(DefaultNotificationSettingsService.java:224) at org.thingsboard.server.dao.notification.DefaultNotificationSettingsService.createDefaultNotificationConfigs(DefaultNotificationSettingsService.java:151) at org.thingsboard.server.dao.notification.DefaultNotificationSettingsService$$FastClassBySpringCGLIB$$66faebb9.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) at org.thingsboard.server.dao.notification.DefaultNotificationSettingsService$$EnhancerBySpringCGLIB$$e424c576.createDefaultNotificationConfigs(<generated>) at org.thingsboard.server.service.install.DefaultSystemDataLoaderService.createDefaultNotificationConfigs(DefaultSystemDataLoaderService.java:715) at org.thingsboard.server.install.ThingsboardInstallService.performInstall(ThingsboardInstallService.java:255) at org.thingsboard.server.ThingsboardInstallApplication.main(ThingsboardInstallApplication.java:49) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467) Caused by: org.hibernate.exception.SQLGrammarException: could not extract ResultSet at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:103) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:37) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:67) at org.hibernate.loader.Loader.getResultSet(Loader.java:2322) at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2075) at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2037) at org.hibernate.loader.Loader.doQuery(Loader.java:956) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:357) at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:327) at org.hibernate.loader.Loader.loadEntity(Loader.java:2440) at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:77) at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:61) at org.hibernate.persister.entity.AbstractEntityPersister.doLoad(AbstractEntityPersister.java:4550) at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:4540) at org.hibernate.event.internal.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:571) at org.hibernate.event.internal.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:539) at org.hibernate.event.internal.DefaultLoadEventListener.load(DefaultLoadEventListener.java:208) at org.hibernate.event.internal.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:327) at org.hibernate.event.internal.DefaultLoadEventListener.doOnLoad(DefaultLoadEventListener.java:108) at org.hibernate.event.internal.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:74) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:118) at org.hibernate.internal.SessionImpl.fireLoadNoChecks(SessionImpl.java:1231) at org.hibernate.internal.SessionImpl.fireLoad(SessionImpl.java:1220) at org.hibernate.internal.SessionImpl.access$2100(SessionImpl.java:202) at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.doLoad(SessionImpl.java:2848) at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.lambda$load$1(SessionImpl.java:2825) at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.perform(SessionImpl.java:2781) at org.hibernate.internal.SessionImpl$IdentifierLoadAccessImpl.load(SessionImpl.java:2825) at org.hibernate.internal.SessionImpl.get(SessionImpl.java:1024) at org.hibernate.event.internal.DefaultMergeEventListener.entityIsDetached(DefaultMergeEventListener.java:308) at org.hibernate.event.internal.DefaultMergeEventListener.onMerge(DefaultMergeEventListener.java:175) at org.hibernate.event.internal.DefaultMergeEventListener.onMerge(DefaultMergeEventListener.java:74) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) at org.hibernate.internal.SessionImpl.fireMerge(SessionImpl.java:829) at org.hibernate.internal.SessionImpl.merge(SessionImpl.java:816) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:315) at com.sun.proxy.$Proxy184.merge(Unknown Source) at org.springframework.data.jpa.repository.support.SimpleJpaRepository.save(SimpleJpaRepository.java:669) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.data.repository.core.support.RepositoryMethodInvoker$RepositoryFragmentMethodInvoker.lambda$new$0(RepositoryMethodInvoker.java:289) at org.springframework.data.repository.core.support.RepositoryMethodInvoker.doInvoke(RepositoryMethodInvoker.java:137) at org.springframework.data.repository.core.support.RepositoryMethodInvoker.invoke(RepositoryMethodInvoker.java:121) at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:530) at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:286) at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:640) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:164) at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:139) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:81) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) ... 61 common frames omitted Caused by: org.postgresql.util.PSQLException: ERROR: column notificati0_.external_id does not exist Position: 131 at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2676) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2366) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:356) at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:496) at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:413) at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:190) at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:134) at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52) at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:57) ... 121 common frames omitted Unexpected error during ThingsBoard installation! pod "tb-db-setup" deleted

missing {end} from jsonpath in ./k8s-deploy-thirdparty.sh

Hi
in file k8s-deploy-thirdparty.sh:
redisNodes=$(kubectl get pods -l app=tb-redis -o jsonpath='{range.items[*]}{.status.podIP}:6379 ')

redisNodes=$(kubectl get pods -l app=tb-redis -o jsonpath='{range.items[*]}{.status.podIP}:6379 ')

missing {end} at the end of jsonpath
you can check example in kubernetes site https://kubernetes.io/docs/reference/kubectl/jsonpath/
it should be like this
redisNodes=$(kubectl get pods -l app=tb-redis -o jsonpath='{range.items[*]}{.status.podIP}:6379 {end}')

problem:
when i run in my kubernetes cluster (v 1.18.8) created by rancher it produces extra empty array like this:

10.42.3.17:6379 10.42.2.41:6379 10.42.4.29:6379 10.42.4.31:6379 10.42.3.20:6379 10.42.2.43:6379 :6379

best regards

tb-node kafka topics being reset every minute

Description

The tb-node setatefulset pod log keeps printing that topicId changed. It prints this for every id every 60 seconds~. From my understanding this happens when a topic is being recreated with the same id. Is this expected bahaviour?

Steps to Reproduce

  1. Create completely empty cluster
  2. Create empty demo thingsboard postgresql database
  3. kubectl apply -f thirdparty.yml
  4. kubectl apply -f tb-services.yml
  5. When initialized, tb-node starts to post these messages every 60 seconds.

Expected Behavior

Should not keep printing these messages for the same kafka topics every 60 seconds.

Actual Behavior

The messages look like this

....
2023-07-18 11:40:47,193 [kafka-consumer-stats-6-thread-1] INFO  org.apache.kafka.clients.Metadata - [Consumer clientId=consumer-stats-loader-client, groupId=consumer-stats-loader-client-group] Resetting the last seen epoch of partition tb_core.1-0 to 0 since the associated topicId changed from null to fwMO8nYKRQGjNtbuUtspfQ
2023-07-18 11:40:47,193 [kafka-consumer-stats-6-thread-1] INFO  org.apache.kafka.clients.Metadata - [Consumer clientId=consumer-stats-loader-client, groupId=consumer-stats-loader-client-group] Resetting the last seen epoch of partition tb_core.5-0 to 0 since the associated topicId changed from null to YMBDSCF2R7SrrgxblL5p7A
2023-07-18 11:40:47,193 [kafka-consumer-stats-6-thread-1] INFO  org.apache.kafka.clients.Metadata - [Consumer clientId=consumer-stats-loader-client, groupId=consumer-stats-loader-client-group] Resetting the last seen epoch of partition tb_core.7-0 to 0 since the associated topicId changed from null to zR53ZGknRoWhibRlgVM3cQ
....

Full tb-node log:
tb-node-0-log.txt

Environment

  • Operating System: Ubuntu server 22.04
  • Kubernetes : k3s cluster v1.27.3+k3s1
  • tb-node version: 3.4.2
  • kafka version: wurstmeister/kafka:2.13-2.8.1 (i had the same problem with wurstmeister/kafka:2.12-2.2.1 version)
  • Cluster nodes: 1 master node, 3 worker nodes

Additional Information

Transport nodes don't seem to have the same behaviour at the start, but sometimes also start spamming these kind of messages for some topics after a couple of weeks or months of deployment.

Why helm version not updated?

Helm tb still stays at 3.4.0 at this time of writing, while others (minikube, etc etc) have been up to the latest 3.5.1

May I know why? Is it not working for helm?

Also, separately, how to upgrade TB through helm? I cannot see any upgrade-tb.sh being run?

Postgres Error on High Availability

Hello,

I am still learning how kubernetes-minikube work.
I tested the basic setup with Postgres and with Hybrid configuration and everything went smoothly.

I ended up with problems when i tried the High-Availability setup.

Specifically Postgres pgpool Pod keeps restarting and gives me this error (i saw it through the kubenetes dashboard).

"Readiness probe failed: psql: FATAL: failed to create a backend 0 connection DETAIL: not executing failover because failover_on_backend_error is off"

image
image

.env settings:
PLATFORM=minikube
DEPLOYMENT_TYPE=high-availability
DATABASE=hybrid
CASSANDRA_REPLICATION_FACTOR=1
everything else is default

PS : All the tests i did was with the minikube configuration

mqtt connect timeout problem

There is a problem with the mqtt connection after the deployment of the k8s cluster on thingsboard.

When mqtt's: replicas=1, a single device repeatedly establishes and closes the connection, no matter how many times it is executed continuously, it can work normally.
When mqtt's: replicas>1, a single device repeatedly establishes and closes the connection, which will cause many problems such as connection timeout and connection failure.

I don't know why. Please help me.Thanks.

微信图片_20230312212809

微信图片_20230312213215

question about pgpool.conf , why parameters changed?

Hi
I realized that pgpool configuration override
the default values changed to these values
load_balance_mode = on to load_balance_mode = off
and
black_function_list = 'nextval,setval' to black_function_list = 'currval,lastval,nextval,setval'

i got a question about why did you override these values ??
are default values make problem and where?
Thanks in advance

Upgrade not working, missing log folder

Hello,
we are upgrading our test infrastructure on OKD (aka Openshift), but we met a issue: the tb-node-config is missing a folder, the log folder, and cannot create it. We added a temporary volume in the definition of the pod and the upgrade worked as expected.

diff --git a/common/database-setup.yml b/common/database-setup.yml
index 09ef5cf..55e62a8 100644
--- a/common/database-setup.yml
+++ b/common/database-setup.yml
@@ -31,6 +31,8 @@ spec:
         path: logback.xml
   - name: tb-node-logs
     emptyDir: {}
+  - name: tb-node-logs-update
+    emptyDir: {}
   containers:
   - name: tb-db-setup
     imagePullPolicy: Always
@@ -48,5 +50,7 @@ spec:
         name: tb-node-config
       - mountPath: /var/log/thingsboard
         name: tb-node-logs
+      - mountPath: /var/log/thingsboard/tb-db-setup/
+        name: tb-node-logs-update
     command: ['sh', '-c', 'while [ ! -f /tmp/install-finished ]; do sleep 2; done;']
   restartPolicy: Never

kafka configuration for microservices deploy on GCP: no space left on device

Hi!
We successfully deployed the version 3.3.2 on Google Kubernetes Engine, but with only 4 devices that monitor energy consumption and 6 rule chains that perform a simple anomaly detection, the kafka pod consume all the space dedicated to the logs.

We didn't change the configuration contained in thirdparty.yml.

The question is: did you test this kafka configuration with a certain number of devices and rule chains?

Updated Charts.yaml and Values.yaml for Helm?

dependencies:

Dependencies are gone.
Especially the minimal version of postgresql-ha has been changed to 9.1.1(Application version Postgres 14.3)

Cannot access thingsboard after installing in kube cluster using HELM

I have installed thingsboard using HELM. All the services and pods are up and running but cannot access the thingsboard app.
I have tried the following-

  • Using ingress ip
  • Using tb-https ip
    It seems none of them are working.

Here is the status of the pods
image

Here is the status of the services
image

Status of the cert-manager and nginx-ingress:
image

How can I access the thingsboard?

Kafka node is crashing because of log file access issue

Hi Team

I need your help with one issue.
I have one tb-kafka and zookeeper running in k8s and 3 replicas of tb-node. but kafka node is keep crashing and restarting after some time with following error
ERROR Failed to clean up log for __consumer_offsets-35 in dir /kafka-logs/kafka due to IOException (kafka.server.LogDirFailureChannel)
java.io.IOException: Permission denied
at java.io.RandomAccessFile.setLength(Native Method)
at kafka.log.AbstractIndex.$anonfun$resize$1(AbstractIndex.scala:189)
at kafka.log.AbstractIndex.resize(AbstractIndex.scala:175)
at kafka.log.AbstractIndex.$anonfun$trimToValidSize$1(AbstractIndex.scala:241)
at kafka.log.AbstractIndex.trimToValidSize(AbstractIndex.scala:241)
at kafka.log.LogSegment.onBecomeInactiveSegment(LogSegment.scala:507)

Then I tried to reduce the replica of tb-node to 2 and I have now tb-node-0 and tb-node-1 pods are running but I could see js_eval.responses.tb-node-2. folders inside kafka-logs/kafka
Does this cause the Kafka crash or anything i am missing in my config?

Fully deployed microservices shows blank screen on k3os

I tried deploying this using this link for kicks on https://k3os.io/ in a VM with the minikube options. Installation went pretty smoothly, but when I go to the IP address of the VM, I just get a white screen. First suspect is networking, more specifically, container routing. Looks like the web container resolves, but beyond that, nada. All containers are, infact, running. Any ideas? I figured this'd be relatively similar to minikube, but I'm by no means versed in kube.

Issue with postgres pod after upgrade to 3.2.2

I see this error in the tb-node pod while creating the tenants

2021-05-26 20:55:29,799 [http-nio-0.0.0.0-8080-exec-5] INFO o.h.e.i.DefaultLoadEventListener - HHH000327: Error performing load command
org.hibernate.exception.SQLGrammarException: could not extract ResultSet
at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:103)
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:67)
at org.hibernate.loader.Loader.getResultSet(Loader.java:2292)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2050)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2012)

Caused by: org.postgresql.util.PSQLException: ERROR: column tenantenti0_.isolated_tb_core does not exist
Position: 324
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2455)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2155)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:288)

Error with AWS cluster setup using Kubeone on AZ 'us-west-1'

I'm generally struggling with the cluster deployment in AWS but Kubeone immediately throws this error after running terraform plan command:

Error: Invalid index

  on main.tf line 26, in locals:
  26:   zoneC            = data.aws_availability_zones.available.names[2]
    |----------------
    | data.aws_availability_zones.available.names is list of string with 2 elements

The given key does not identify an element in this collection value.



I even tried to comment the references to the zoneC definition but doesn't seem to work.

```
Error: Error launching source instance: Unsupported: The requested configuration is currently not supported. Please check the documentation for supported configurations.
        status code: 400, request id: 32ce446e-880a-4925-b3ec-a3740ff17b74

Error: Error launching source instance: Unsupported: The requested configuration is currently not supported. Please check the documentation for supported configurations.
        status code: 400, request id: 6771d5a7-9269-4572-a4e1-cccc71381591Error: Error launching source instance: Unsupported: The requested configuration is currently not supported. Please check the documentation for supported configurations.
        status code: 400, request id: 32ce446e-880a-4925-b3ec-a3740ff17b74

Error: Error launching source instance: Unsupported: The requested configuration is currently not supported. Please check the documentation for supported configurations.
        status code: 400, request id: 6771d5a7-9269-4572-a4e1-cccc71381591

cannot login via helm deployment

we deployed via helm chart though i seem to be having the an issue, everything is up and running,i can get to the web ui login however logging in with [email protected] / sysadmin does nothing....

thingsboard-coap-transport-0                1/1     Running   0             16m
thingsboard-http-transport-0                1/1     Running   1 (10m ago)   16m
thingsboard-jsexecutor-9f55ffbd8-glwhh      1/1     Running   1 (14m ago)   16m
thingsboard-jsexecutor-9f55ffbd8-j7vwk      1/1     Running   1 (14m ago)   16m
thingsboard-jsexecutor-9f55ffbd8-ld2n7      1/1     Running   1 (14m ago)   16m
thingsboard-jsexecutor-9f55ffbd8-n6cf6      1/1     Running   1 (15m ago)   16m
thingsboard-jsexecutor-9f55ffbd8-p6d8d      1/1     Running   0             11m
thingsboard-kafka-0                         1/1     Running   0             16m
thingsboard-mqtt-transport-0                1/1     Running   1 (10m ago)   16m
thingsboard-node-0                          1/1     Running   4 (12m ago)   16m
thingsboard-pg-pgpool-7bbf7b9f46-2kws4      1/1     Running   0             16m
thingsboard-pg-postgresql-0                 1/1     Running   0             16m
thingsboard-redis-master-558c45fd6b-9r96r   1/1     Running   0             16m
thingsboard-web-ui-5656d7bfc4-jjmb5         1/1     Running   0             16m
thingsboard-zookeeper-0                     1/1     Running   0             16m

routes.yml is outdated, still using v1beta1 networking API

The config for the minikube routes is outdated and will not work with newer versions of Kube.

https://github.com/thingsboard/thingsboard-ce-k8s/blob/master/minikube/routes.yml

error: error validating "minikube/routes.yml": error validating data: [ValidationError(Ingress.spec.rules[0].http.paths[0].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[0].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[0]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath, ValidationError(Ingress.spec.rules[0].http.paths[1].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[1].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[2].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[2].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[3].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[3].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[3]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath, ValidationError(Ingress.spec.rules[0].http.paths[4].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[4].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[4]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath, ValidationError(Ingress.spec.rules[0].http.paths[5].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[5].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[5]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath, ValidationError(Ingress.spec.rules[0].http.paths[6].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[6].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[6]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath, ValidationError(Ingress.spec.rules[0].http.paths[7].backend): unknown field "serviceName" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[7].backend): unknown field "servicePort" in io.k8s.api.networking.v1.IngressBackend, ValidationError(Ingress.spec.rules[0].http.paths[7]): missing required field "pathType" in io.k8s.api.networking.v1.HTTPIngressPath]; if you choose to ignore these errors, turn validation off with --validate=false'

Where did High Availability go?

Howdy,
I was trying to adapt the minikube HA deployment to full K8s, and making great progress, but since that massive refactor, I seem to have lost track of where HA was being kept in this repo. Did you guys remove it? Why?

No way to upgrade from 3.2.2 to 3.3.1 [+ workaround]

Hello,
following your instruction at the following link https://thingsboard.io/docs/user-guide/install/cluster/openshift-cluster-setup/
and considering your prerequisite at this link https://thingsboard.io/docs/user-guide/install/upgrade-instructions/#ubuntucentos-33, we understood that in order to upgrade to 3.3.1 we must upgrade to 3.3.0 first. We tried with the latest commit, with the commit of the early semptember and other cmmit, but we meet always the following error message: "Unable to upgrade ThingsBoard, unsupported fromVersion: 3.2.2"
Where is a tag of this repo, or the right commit to find the 3.3.0 version? It seems you upgraded this repo directly from version 3.2.2 to 3.3.1...

Intitialize db job fails after giving Widgets error

I get the following error when initializing db for the first time during Thingsboard installation. Sometimes the job succeeds when I remove the limits and resources for this job but most of the time, it fails. I need to provide proper limits and resources in our Staging environment.
Starting ThingsBoard Installation... Installing DataBase schema for entities... Installing SQL DataBase schema part: schema-entities.sql Installing SQL DataBase schema indexes part: schema-entities-idx.sql Installing SQL DataBase schema PostgreSQL specific indexes part: schema-entities-idx-psql-addon.sql Installing DataBase schema for timeseries... Installing Cassandra DataBase schema part: schema-ts.cql Loading system data... Trying to create system admin user Creating system admin user is done Unable to load widget type from json: [/usr/share/thingsboard/data/json/system/widget_bundles/date.json] Unable to load widgets bundle from json: [/usr/share/thingsboard/data/json/system/widget_bundles/date.json] Unexpected error during ThingsBoard installation! java.lang.RuntimeException: Unable to load widgets bundle from json at org.thingsboard.server.service.install.InstallScripts.lambda$loadSystemWidgets$4(InstallScripts.java:191) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.thingsboard.server.service.install.InstallScripts.loadSystemWidgets(InstallScripts.java:169) at org.thingsboard.server.service.install.DefaultSystemDataLoaderService.loadSystemWidgets(DefaultSystemDataLoaderService.java:469) at org.thingsboard.server.install.ThingsboardInstallService.performInstall(ThingsboardInstallService.java:258) at org.thingsboard.server.ThingsboardInstallApplication.main(ThingsboardInstallApplication.java:48) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49) at org.springframework.boot.loader.Launcher.launch(Launcher.java:108) at org.springframework.boot.loader.Launcher.launch(Launcher.java:58) at org.springframework.boot.loader.PropertiesLauncher.main(PropertiesLauncher.java:467) Caused by: java.lang.RuntimeException: Unable to load widget type from json at org.thingsboard.server.service.install.InstallScripts.lambda$loadSystemWidgets$3(InstallScripts.java:185) at java.base/java.lang.Iterable.forEach(Iterable.java:75) at org.thingsboard.server.service.install.InstallScripts.lambda$loadSystemWidgets$4(InstallScripts.java:177) ... 13 common frames omitted Caused by: org.thingsboard.server.dao.exception.DataValidationException: Widget type is referencing to non-existent widgets bundle! at org.thingsboard.server.dao.service.validator.WidgetTypeDataValidator.validateCreate(WidgetTypeDataValidator.java:67) at org.thingsboard.server.dao.service.validator.WidgetTypeDataValidator.validateCreate(WidgetTypeDataValidator.java:33) at org.thingsboard.server.dao.service.DataValidator.validate(DataValidator.java:50) at org.thingsboard.server.dao.widget.WidgetTypeServiceImpl.saveWidgetType(WidgetTypeServiceImpl.java:60) at org.thingsboard.server.service.install.InstallScripts.lambda$loadSystemWidgets$3(InstallScripts.java:182) ... 15 common frames omitted Unexpected error during ThingsBoard installation!

Specify VPC for Terraform to configure

When configuring ThingsBoard to run on EKS via Terraform, I want to specify a VPC ID. I've already got a VPC set up that I want ThingsBoard to reside in. Is there a way to specify that through the config? I see that there's mentions of a vpc_id field. Can I specify that in terraform.tfvars?

tb-mqtt-transport 3.44 - pod startup failed: tb-mqtt-transport-0-gc.log: Permission denied

Starting 'ThingsBoard MQTT Transport Microservice' ...
[0.001s][error][logging] Error opening log file '/var/log/tb-mqtt-transport/tb-mqtt-transport-0-gc.log': Permission denied
[0.001s][error][logging] Initialization of output 'file=/var/log/tb-mqtt-transport/tb-mqtt-transport-0-gc.log' using options 'filecount=10,filesize=10M' failed.
Invalid -Xlog option '-Xlog:gc*,heap*,age*,safepoint=debug:file=/var/log/tb-mqtt-transport/tb-mqtt-transport-0-gc.log:time,uptime,level,tags:filecount=10,filesize=10M', see error log for details.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Environment: OpenShift Local (CRC) 4.11

Workaround:
Change log directory to /tmp in tb-transport-configmap.yml

export JAVA_OPTS="$JAVA_OPTS -Xlog:gc*,heap*,age*,safepoint=debug:file=/tmp/${TB_SERVICE_ID}-gc.log:time,uptime,level,tags:filecount=10,filesize=10M"

Error in starting tb-js-executor:3.3.3

In starting tb-js-executor:3.3.3 the following error is recorded:

2022-02-18 10:48:02,925 [main] INFO: kafka template started.
2022-02-18 10:48:03,725 [main] ERROR: uncaughtException: options.port should be >= 0 and < 65536. Received NaN.
RangeError [ERR_SOCKET_BAD_PORT]: options.port should be >= 0 and < 65536. Received NaN.
at new NodeError (node:internal/errors:371:5)
at validatePort (node:internal/validators:216:11)
at Server.listen (node:net:1461:5)
at Function.listen (/usr/share/tb-js-executor/node_modules/express/lib/application.js:618:24)
at Object. (/usr/share/tb-js-executor/api/httpServer.js:30:5)


It seems the offending line is:

(/usr/share/tb-js-executor/api/httpServer.js:30:5)

where it tries to start a web server for readiness probe:

app.listen(httpPort, () => logger.info(Started http endpoint on port ${httpPort}. Please, use /livenessProbe !))

using the httpPort config parameter:

const config = require('config'),
logger = require('../config/logger')._logger('httpServer'),
express = require('express');

const httpPort = Number(config.get('http_port'));

But it seems the config parameter httpPort cannot be retrieved.

Indeed, looking at the source, the config file is in config/default.yml

http_port: "8888" # /livenessProbe

but it seems it cannot be read or its type is not correct, so ending up in the error:

port should be >= 0 and < 65536. Received NaN.

Thanks
Michele

Using MQTT with Openshift

Installation

Description
I stood up a ThingsBoard Microservices deployment on OKD 4.5, set up a tenant, and a device. Everything is peachy with HTTP requests as far as I can tell. Doing the following works fine:

curl --insecure -v -X POST -d @telemetry.json https://tb-route-http-transport-thingsboard.apps.lab.okd.local/api/v1/<access token>/telemetry --header "Content-Type:application/json"

However, while the installation scripts provided an http route, they did not provide an mqtt route. So I added my own.

spec:
 host: tb-route-mqtt-transport-thingsboard.apps.lab.okd.local
  path: /api/v1
  to:
    kind: Service
    name: tb-mqtt-transport
    weight: 100
  port:
    targetPort: mqtt
  tls:
    termination: edge
  wildcardPolicy: None
status:
  ingress:
    - host: tb-route-mqtt-transport-thingsboard.apps.lab.okd.local
      routerName: default
      conditions:
        - type: Admitted
          status: 'True'
          lastTransitionTime: '2020-10-23T18:11:43Z'
      wildcardPolicy: None
      routerCanonicalHostname: apps.lab.okd.local

And tried using Mosquitto

mosquitto_pub -d -h "tb-route-mqtt-transport-thingsboard.apps.lab.okd.local" -t "v1/devices/me/telemetry" -u "$ACCESS_TOKEN" -f "telemetry-data-as-object.json"

However, that failed with an Error: No route to host and no other information.

So I tried mosquitto_pub again with tb-route-node-root-thingsboard.apps.lab.okd.local since I could use CURL and HTTP with that route (also set up by the scripts). But that also did not work.

I also tried performing a Gatling test, and of course, that also did not work.

What am I doing wrong? How do I get this route to work? Do I even need to? Can anybody provide an example of how to get MQTT working on a microservices deployment?

Environment

  • OS: OKD 4.5 on Fedora CoreOS 32 w/ Fedora Server 32 Services VM
  • ThingsBoard: 3.1.1
  • Browser: Firefox 80

I also have an issue open on the main Thingsboard repo.

k8s AWS downtime during minor version upgrades

Hi, according to this link when Thingsboard is deployed with the micro-services architecture, which is what I am currently exploring with EKS on AWS and everything else AWS managed (RDS, MSK, Elasticache), there should be no downtime at least for minor version updates. However, based on the upgrade instructions found here there are some cases that tb-nodes need to be stopped and as a result experience some downtime. I looked through the upgrade instructions here but there is no mention when the tb-nodes should be stopped. Is the information of when to stop tb-nodes before an upgrade somewhere visible? Thx

Error on login page "POST: /api/noauth/oauth2Clients?platform=WEB 404: Not Found"

thingsboard_error

Hi,

I have deployed thingsboard-ce-k8s project via helm using my AWS MSK kafka. I have enabled ingress as well. But on UI web page its giving error "POST: /api/noauth/oauth2Clients?platform=WEB 404: Not Found"

kubectl describe ing
Name: nginx-ingress-microk8s
Labels: app=nginx-ingress-microk8s
app.kubernetes.io/managed-by=Helm
Namespace: default
Address: 127.0.0.1
Ingress Class: public
Default backend:
Rules:
Host Path Backends


  •       /api/v1/.*                    ioc-http:8082 ()
          /api/.*                       ioc-node:8080 (10.1.80.110:8080)
          /swagger.*                    ioc-node:8080 (10.1.80.110:8080)
          /webjars.*                    ioc-node:8080 (10.1.80.110:8080)
          /v2/.*                        ioc-node:8080 (10.1.80.110:8080)
          /v3/.*                        ioc-node:8080 (10.1.80.110:8080)
          /static/rulenode/.*           ioc-node:8080 (10.1.80.110:8080)
          /assets/help/.*/rulenode/.*   ioc-node:8080 (10.1.80.110:8080)
          /oauth2/.*                    ioc-node:8080 (10.1.80.110:8080)
          /login/oauth2/.*              ioc-node:8080 (10.1.80.110:8080)
          /                             ioc-webui:8084 (10.1.80.104:8084)
          /.*                           ioc-webui:8084 (10.1.80.104:8084)
    

Annotations: meta.helm.sh/release-name: ioc
meta.helm.sh/release-namespace: default
Events:

On MQTT/HTTP transport i am getting this error and its crashing after timeout is hitting.

2023-11-06 04:27:35,653 [main] INFO o.t.s.q.d.HashPartitionService - Failed to get queues routing info: java.util.concurrent.ExecutionException: java.util.concurrent.TimeoutException!
2023-11-06 04:27:45,653 [main] INFO o.t.s.q.d.HashPartitionService - Try to get queue routing info.

On node pod i see below error

:22:07,865 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [tb-rule-engine-notifications-node-tb-node] Failed to get consumer group stats. Reason - null.
2023-11-06 04:22:08,865 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [rule-engine-node-tb-node] Failed to get consumer group stats. Reason - null.
2023-11-06 04:22:09,866 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [re-Main-consumer] Failed to get consumer group stats. Reason - null.
2023-11-06 04:22:11,373 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [re-SequentialByOriginator-consumer] Failed to get consumer group stats. Reason - Failed to get offsets by times in 1000ms.
2023-11-06 04:22:12,882 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [re-HighPriority-consumer] Failed to get consumer group stats. Reason - Failed to get offsets by times in 1000ms.
2023-11-06 04:23:13,392 [kafka-consumer-stats-8-thread-1] INFO org.apache.kafka.clients.Metadata - [Consumer clientId=consumer-stats-loader-client, groupId=consumer-stats-loader-client-group] Cluster ID: CLHIvEO9Qq6J8Z0Pcj5g8Q
2023-11-06 04:23:14,392 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [tb-rule-engine-notifications-node-tb-node] Failed to get consumer group stats. Reason - Failed to get offsets by times in 1001ms.
2023-11-06 04:23:15,897 [kafka-consumer-stats-8-thread-1] WARN o.t.s.q.k.TbKafkaConsumerStatsService - [rule-engine-node-tb-node] Failed to get consumer group stats. Reason - Failed to get offsets by times in 1001ms.

node pod is deployed with below env variables values:

      - name: TB_SERVICE_ID
        value: "tb-node"
      - name: TB_SERVICE_TYPE
        value: "tb-rule-engine"
      - name: TB_QUEUE_TYPE
        value: "kafka"

cassandra mountPath wrong

I find the cassandra.yaml use the wrong mountPath, it should be '/bitnami/cassandra' not '/var/lib/cassandra' ,please check it.

Insallation Error on Azure Microservices - PSQLException: The connection attempt fail

I run the script from Azure VM, trying to install with azure/microservices file but keep failing.

tb-node-db-configmap.yaml

  SPRING_JPA_DATABASE_PLATFORM: org.hibernate.dialect.PostgreSQLDialect
  SPRING_DRIVER_CLASS_NAME: org.postgresql.Driver
  SPRING_DATASOURCE_URL: jdbc:postgresql://my-app-postgresql.postgres.database.azure.com:5432/myapp?user=myappusername&password=mypass?sslmode=require
  SPRING_DATASOURCE_USERNAME: myappusername
  SPRING_DATASOURCE_PASSWORD:  mypass

Then I run ./k8s-install-tb.sh, this error pop up:

Starting ThingsBoard Installation...
Installing DataBase schema for entities...
Installing SQL DataBase schema part: schema-entities.sql
Unexpected error during ThingsBoard installation!

Which part I do wrong and please help me with this! Thank you!!

Pgpool restarts when tb-node scale up

Hi
I use kubernetes v1.19.6
I can fully deploy thingsboard hybrid and high availability to kubernetes
But when i scale up tb-node from 1 to 2 the pgpool instance became unhealthy after a while and restart the instance many times
I do not think it is because of resources limitations because i could see that there is free resources.
What do you suggest to solve this problem?
Did i missed anything?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.