shiyuecamus/ng-gateway-chart

By shiyuecamus

โ€ขUpdated 4 months ago

A high-performance, Rust-based Industrial IoT Gateway (Helm Chart) for Kubernetes.

Helm
0

711

shiyuecamus/ng-gateway-chart repository overview

NG Gateway Logo

โ NG Gateway Helm Chart

NG Gateway is a high-performance, Rust-based Industrial IoT (IIoT) edge gateway. This Helm Chart allows you to deploy and manage NG Gateway clusters seamlessly on Kubernetes.

It serves as a bridge between industrial field devices (PLC, Sensors) and cloud platforms, featuring high throughput, low latency, and native support for protocols like Modbus, Siemens S7, OPC UA, and IEC 104.

Note: This is the official Helm Chart for NG Gatewayโ .

โ โœจ Features

โ ๐Ÿš€ High Performance & Core Capabilities
  • Extreme Performance: Built with Rust and Tokio, designed for high concurrency and zero-cost abstractions, ensuring minimal latency even under heavy load.
  • Edge Native: Ultra-low memory footprint (<50MB idle) and fast startup, making it perfect for edge Kubernetes clusters (K3s, MicroK8s, KubeEdge).
  • Multi-Protocol Support: Native high-performance drivers for Modbus (TCP/RTU), Siemens S7, OPC UA, IEC 60870-5-104, Mitsubishi MC, and more.
  • Built-in Web UI: Comes with a modern, embedded Web Console for visual configuration, monitoring, and debuggingโ€”no extra pods needed.
  • Smart Batching: Auto-merges requests into batches (Modbus/S7/MC) to reduce network overhead by up to 98%.
  • Robust Reliability: Implements end-to-end backpressure, bounded queues, and automatic reconnection/supervision for strictly reliable industrial communications.
โ โ˜๏ธ Cloud Native & Deployment
  • One-Command Deployment: Deploy the full gateway stack with a single Helm command.
  • Data Persistence: Built-in PVC configuration ensures critical data (SQLite DB, logs, configs) survives pod restarts.
  • Flexible Networking: Configurable Service types (ClusterIP, NodePort, LoadBalancer) to easily expose the Web UI and API to your OT/IT network.
  • Pluggable Architecture: Supports mounting custom Northward and Southward plugins via volumes for extended functionality.
  • Resource Efficient: Optimized default resource limits tailored for constrained edge environments.

โ ๐Ÿ“‹ Prerequisites

  • Kubernetes 1.19+
  • Helm 3.0+
  • PV provisioner support in the underlying infrastructure (if persistence is enabled)

โ ๐Ÿš€ Quick Start

โ 1. Install the Chart

To install the chart with the release name my-gateway using the OCI registry:

helm install my-gateway oci://registry-1.docker.io/shiyuecamus/ng-gateway-chart --version 0.1.0
โ 2. Access the Web UI

By default, the chart creates a Service (type ClusterIP). To access the UI locally, you can use port-forwarding:

kubectl port-forward svc/my-gateway-node-grove-gateway 8080:8080

Now open your browser and visit: http://localhost:8080

  • Default User: system_admin
  • Default Password: system_admin

โ โš™๏ธ Configuration

The following table lists the configurable parameters of the NG Gateway chart and their default values.

ParameterDescriptionDefault
gateway.replicaCountNumber of gateway replicas1
gateway.image.repositoryGateway image repositoryshiyuecamus/ng-gateway
gateway.image.tagGateway image taglatest
service.typeKubernetes Service typeClusterIP
service.portService port for Web UI/API8080
persistence.enabledEnable data persistencetrue
persistence.sizeSize of the PVC1Gi
persistence.storageClassStorage class for the PVC"" (default class)
resources.limits.memoryMemory limit512Mi
resources.requests.cpuCPU request100m
โ Customizing via values.yaml

To override the default configuration, create a custom-values.yaml file:

gateway:
  replicaCount: 1
  image:
    tag: "0.1.0"

service:
  type: NodePort
  nodePort: 30080

persistence:
  enabled: true
  size: 5Gi

Then install the chart with your custom values:

helm install my-gateway oci://registry-1.docker.io/shiyuecamus/ng-gateway-chart \
  --version 0.1.0 \
  -f custom-values.yaml

โ ๐Ÿ“ฆ Upgrading

To upgrade the chart to the latest version:

helm upgrade my-gateway oci://registry-1.docker.io/shiyuecamus/ng-gateway-chart --version <NEW_VERSION>

โ ๐Ÿ—‘๏ธ Uninstalling

To uninstall/delete the my-gateway deployment:

helm uninstall my-gateway

The command removes all the Kubernetes components associated with the chart and deletes the release.

Tag summary

Content type

Helm

Digest

sha256:fc05f8e5bโ€ฆ

Size

16.6 kB

Last updated

4 months ago

helm pull oci://registry-1.docker.io/shiyuecamus/ng-gateway-chart --version 0.3.0