mirror of
https://github.com/mainflux/mainflux.git
synced 2025-04-26 13:48:53 +08:00

* Use Normalizer as a lib To normalize messages on the consumer side, Normalizer is moved to the internal pkgs. Writers being message consumers are modified to do message normalization instead of subscribing to normalized messages subject. Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix logging middleware for readers and writers Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Remove normalizer interface Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Use Normalizer in writers As we agreed on #919, we'll use normalizer as an interface and provide the default SenML implementation. Because of that, Normalizer is removed from `internal` and we'll use the project structure proposed in the aforementioned issue. Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Fix tests Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Remove unused batch settings from influxDB reader Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update docs Move Normalizer service to `addons`. Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Rename channels input topic Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update Noramlizer docs Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Remove commented code Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update readers logging Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update addons docker-compose files Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com> * Update topcis explanations Signed-off-by: Dušan Borovčanin <dusan.borovcanin@mainflux.com>
Deploy Mainflux on Kubernetes - WIP
Scripts to deploy Mainflux on Kubernetes (https://kubernetes.io). Work in progress. Not ready for deployment.
Steps
1. Setup NATS
- To setup NATS cluster on k8s we recommend using NATS operator. NATS cluster should be deployed on namespace
nats-io
under the namenats-cluster
.
2. Setup gRPC services Istio sidecar
- To load balance gRPC services we recommend using Istio sidecar. In order to use automatic inject you should run following command:
kubectl create -f k8s/mainflux/namespace.yml
2. Setup Users service
- Deploy PostgreSQL service for Users service to use:
kubectl create -f k8s/mainflux/users-postgres.yml
- Deploy Users service:
kubectl create -f k8s/mainflux/users.yml
3. Setup Things service
- Deploy PostgreSQL service for Things service to use:
kubectl create -f k8s/mainflux/things-postgres.yml
- Deploy Things service:
kubectl create -f k8s/mainflux/things.yml
4. Setup adapter services
- Deploy adapter service:
kubectl create -f k8s/mainflux/tcp-services.yml
kubectl create -f k8s/mainflux/<adapter_service_name>.yml
5. Setup Dashflux
- Deploy Dashflux service:
kubectl create -f k8s/mainflux/dashflux.yml
6. Configure Internet Access
Configure NAT on your Firewall to forward ports 80 (HTTP) and 443 (HTTPS) to nginx ingress service