Der C-Gate IoT Hub wird als Software in einem Container Format zur Verfügung gestellt. Es wird empfohlen den C-Gate IoT Hub auf einem zentralen Server pro Unternehmensstandort zu installieren. Alternativ ist eine Installation auf einem üblichen PC ebenfalls möglich.

Systemanforderungen

  • Container Laufzeitumgebung (z.B. Docker, Kubernetes, OpenShift, Podman, ...)
  • 8 GB RAM
  • 128 GB Festplattenspeicherplatz
  • 64-bit Prozessor (4 Kerne empfohlen)
  • Internetverbindung (Während Installation und Update)
Bei mehr als 25 verbundenen Steuerungen können die Voraussetzungen größer ausfallen.

C-Gate IoT Hub Container

Der C-Gate IoT Hub Container wird in der Docker Registry von CLOOS bereitgestellt. Die dafür notwendigen Zugangsdaten erhalten Sie beim Erwerb eines C-Gate IoT Hub.

Registry und Image URL

docker.cloos.de/cgate

Beispiel für eine Testumgebung mit Docker

docker run -d --name cgate -p 80:8080 -p 4840:4840 docker.cloos.de/cgate

Beispiel für eine Produktivumgebung mit Docker Compose

version: "3"
services:
  cgate:
    container_name: cgate
    image: docker.cloos.de/cgate:latest
    restart: always
    ports:
      - "80:8080"
      - "4840:4840"
      - "5000:5000/tcp"
      - "5000:5000/udp"
      - "5005:5005"
      - "5010:5010"
      - "5679:5679"
    environment:
      - APP_MAX_DATA_SIZE_GB=64
    volumes:
      - data:/data
    logging:
      driver: "json-file"
      options:
        max-size: "100m"
volumes:
  data:

Volumes

C-Gate legt alle Konfigurationen und Daten im Verzeichnis /data ab. Für dieses Verzeichnis sollte ein Volume verwendet werden um die Daten zu persistieren.

Exposed Ports

  • 4840 (OPC UA Server)
  • 5000/tcp (Roboterkommunikation bis V6)
  • 5000/udp (Roboterkommunikation bis V6)
  • 5005 (Roboterkommunikation bis V6)
  • 5010 (Roboterkommunikation bis V6)
  • 5679 (IoT Connector RPC)
  • 8080 (Web Interface)

Variablen

APP_ADMIN_PASSWORD

Erzwingt ein Passwort für den admin Benutzer.

Standardwert: Leer

APP_MAX_DATA_SIZE

Legt die maximale größe der von C-Gate ingesamt gespeicherten Daten in GB fest.

Standardwert: 32

Schritt-für-Schritt-Anleitung

Falls Sie bisher noch keine Container Laufzeitumgebung einsetzen, leitet die folgende Anleitung Sie durch die notwendigen Schritte für eine Basis Container-Laufzeitumgebung mit C-Gate. Wir empfehlen Ihnen in diesem Fall sich dennoch mit Ihrer Container-Umgebung auseinanderzusetzen um diese sicher betreiben zu können.

  1. Installieren Sie Docker für Ihre Linux-Distribution.
  2. Führen Sie folgende Befehle aus, um C-Gate zu installieren und zu starten:
    sudo mkdir -p /opt/cloos/cgate
    cd /opt/cloos/cgate/
    sudo curl -L https://c-gate.cloos.de/static/install/docker-compose.yml -o docker-compose.yml
    sudo docker login docker.cloos.de
    # Geben Sie hier die Zugangsdaten ein, die Sie von CLOOS erhalten haben.
    sudo docker compose up -d
    # Geben Sie der Anwendung ein paar Sekunden Zeit zum Starten.
    # Lesen Sie das generierte Passwort für den Benutzer admin mit folgendem Befehl aus:
    sudo docker logs cgate | grep UserInitializer

Wir empfehlen Ihnen eine Installation unter einem Linux Betriebssystem, da dort Container bereits seit einigen Jahren etabliert sind. Unter Windows hingegen sind Container aktuell noch neu. Es ist daher häufiger mit Änderungen, leicht erhöhtem Resourcenverbauch und mit mehr Herausforderungen bei der Einrichtung und dem Betrieb zu rechnen.

  1. Stellen Sie sicher, dass das aktuellste Update für Windows installiert ist. Sie benötigen mindestens Windows 10 ab Versionsnummer 2004 (Build 19041) oder Windows 11.

    Zum Anzeigen der Windows-Version kann folgender Befehl auf der Kommandozeile ausgeführt werden:
    winver
  2. Installieren Sie WSL (Windows Subsystem for Linux) mit folgenden Befehlen auf der Kommandozeile:
    wsl --set-default-version 2
    # Wählen Sie im Folgenden einen beliebigen Benutzernamen und ein beliebiges Passwort.
    # Hier müssen nicht die Zugangsdaten von CLOOS angegeben werden.
    wsl --install -d Ubuntu
    wsl --set-default Ubuntu
  3. Installieren Sie C-Gate mit unserem C-Gate IoT Hub Installer für Windows.

Nach der Installation

Die nächsten Schritte und weitere Informationen finden Sie auf der C-Gate-Weboberfläche. Diese erreichen Sie nach der Installation unter http://localhost auf Ihrem Server oder PC.

Von einem anderen Rechner aus erreichen Sie C-Gate unter http://[serverip] , wobei [serverip] durch die IP Ihres Servers oder PCs auszutauschen ist, auf dem C-Gate installiert wurde.

Häufig gestellte Fragen

Wo werden meine C-Gate-Daten gespeichert?

Unter Docker werden Daten üblicherweise in sogenannten Volumes abgespeichert. C-Gate verwendet für das interne Verzeichnis /data ein solches Volume.

Wie kann ich ein Backup meiner C-Gate-Daten erstellen?

Mit folgendem Befehlen können Sie ein Backup Ihrer Daten erstellen. Das Backup wird in dem Ordner abgelegt, in dem der Befehl ausgeführt wird.

Linux (Docker):
# Backup erstellen
sudo docker run --rm --volumes-from cgate -v $(pwd):/backup ubuntu tar cvzf /backup/cgate-backup.tar.gz /data

# Backup wiederherstellen
sudo docker run --rm --volumes-from cgate -v $(pwd):/backup ubuntu bash -c "cd /data && tar xvzf /backup/cgate-backup.tar.gz --strip 1"
Windows (WSL Ubuntu Shell):
# Backup erstellen
podman run --rm --volumes-from cgate -v $(pwd):/backup ubuntu tar cvzf /backup/cgate-backup.tar.gz /data

# Backup wiederherstellen
podman run --rm --volumes-from cgate -v $(pwd):/backup ubuntu bash -c "cd /data && tar xvzf /backup/cgate-backup.tar.gz --strip 1"

Für ein tägliches Backup kann beispielsweise ein cron-job (Linux) oder ein geplanter task (Windows) verwendet werden.

Für ein konsistentes Backup wird empfohlen, die Anwendung kurzzeitig zu stoppen (docker stop cgate) und nach dem Backup wieder zu starten (docker start cgate).

C-Gate verlangt beim Start von mir Zugangsdaten. Was muss ich dort eingeben?

Standardmäßig wird mit der Installation von C-Gate ein Benutzer mit dem Namen admin angelegt. Das Password zu diesem Benutzer wird beim ersten Start des Docker Containers generiert und auf der Kommandozeile ausgegeben. Die Ausgabe des Docker Containers können Sie sich mit dem Befehl docker logs cgate anzeigen lassen. Folgender Befehl liefert Ihnen gezielt die Ausgabe der Passwortgenerierung:

Linux (Docker):
sudo docker logs cgate | grep UserInitializer
Windows (WSL Ubuntu Shell):
podman logs cgate | grep UserInitializer

Bei der Windows-Installation werden die Zugangsdaten zusätzlich einmalig am Ende der Installation angezeigt.

Wie kann ich mein Passwort zurücksetzen?

Sie können ein neues Admin Passwort erzwingen, indem Sie die Umgebungsvariable APP_ADMIN_PASSWORD='NewPassword' für Ihren C-Gate Container setzen. Bei einer Docker Installation mit Docker Compose z.B. können Sie diese Variable in der Datei docker-compose.yml unterhalb der environment Zeile setzen.

Beispiel:

...
  environment:
    - APP_ADMIN_PASSWORD="MySecretPassword"
...

Falls Sie C-Gate mit unserer Windows-Anleitung installiert haben, können Sie das Passwort in der Datei ~/.config/cgate/cgate.conf innerhalb der WSL mit dem Eintragen folgender Zeile setzen:

APP_ADMIN_PASSWORD="MySecretPassword"

Wie verbinde ich meine Geräte mit C-Gate?
  1. Zunächst sollte eine physikalische Verbindung vorhanden sein. Für CLOOS-Roboteranlagen ist dies üblicherweise ein Netzwerkkabel verbunden mit der Robotersteuerung und Ihrem Firmennetzwerk. QINEO-Schweißgeräte können alternativ per Wifi angeschlossen werden.
  2. Anschließend benötigen Ihre Geräte eine IP-Adresse und entsprechende Netzwerkeinstellungen, so dass diese von dem Server oder PC, auf denen C-Gate IoT Hub installiert ist, erreichbar sind. Wie Sie die Netzwerkeinstellungen anpassen können, entnehmen Sie bitte dem jeweiligen Gerätehandbuch. Die Netzwerkeinstellungen sollten entsprechend Ihrer IT-Richtlinien vergeben werden. Sie können die Verbindung überprüfen, indem Sie ein ping auf die Geräte-IP von dem Server oder PC mit C-Gate ausführen.
  3. Folgen Sie den C-Gate-Anweisungen auf der C-Gate-Weboberfläche zur Aktivierung Ihrer Lizenz. Anschließend können Sie Ihre Geräte in der Geräte-Ansicht auf dem C-Gate konfigurieren. Tragen Sie dort die entsprechenden IP-Adressen der Geräte ein.

Ist alles richtig eingerichtet, erscheinen die Geräte in der C-Gate-Geräteansicht als Online.

Sollte dennoch keine Verbindung möglich sein, beachten Sie bitte unsere Hinweise zu Firewall-Regeln.

Welche Firewall-Regeln und Ports müssen beachtet werden?

Folgende Ports sind für den Zugriff auf den C-Gate IoT Hub relevant:

Eingehend 80 TCP Weboberfläche und API
Eingehend 4840 TCP OPC UA-Server für die Anbindung Ihrer MES und ERP-Systeme
Eingehend 5679 TCP RPC-Schnittstelle für den C-Gate IoT Connector

Ohne IoT Connector baut der C-Gate IoT Hub zusätzlich zu folgenden Ports Verbindungen auf:

Ausgehend 48010 TCP Roboteranlagen
Ausgehend 52341 TCP Schweißgeräte
Ausgehend 4840 TCP SPS

Mit QIROX Legacy Hardware (Hardware älter als V7) werden zusätzlich folgende Ports verwendet:

Eingehend 5000 TCP
Eingehend 5000 UDP
Eingehend 5005 TCP
Eingehend 5010 TCP

Wie kann ich C-Gate IoT Hub updaten?

C-Gate kann mit einem neuen Container Image auf den neusten Stand gebracht werden.

Linux (Docker):

cd /opt/cloos/cgate/
docker compose pull
docker compose up -d

Linux (Docker-Compose):

cd /opt/cloos/cgate/
docker-compose pull
docker-compose up -d
Windows:

Im Startmenü unter dem Ordner C-Gate gibt es ein Updatescript, welches ein Update auf die aktuelle stabile Version durchführt.

Bestehende Daten werden bei einem Update der Anwendung automatisch von der Anwendung migriert. Je nach Datenmenge kann der Migrationsprozess den Start der neuen Anwendungsversion um einige Minuten verzögern. Die Anwendung steht in dieser Zeit nicht zur Verfügung.

Was befindet sich im Inneren des C-Gate Containers?

Der C-Gate IoT Hub Container basiert auf einem aktuellen offiziellen Ubuntu Basis-Image und enthält die nachfolgenden Dienste. Nur Dienste mit entsprechender Portangabe sind von außerhalb des Containers erreichbar. Dienste ohne Portangaben sind nur innerhalb des Containers erreichbar und somit vor externen Zugriffen geschützt.

  • C-Gate IoT Hub Java Application (Port 4840/tcp, 5000/tcp/udp, 5005/tcp, 5010/tcp)
  • C-Gate IoT Hub NodeJS Graph-Converter Service
  • nginx Webserver (Port 8080/tcp)
  • mongoDB Database

Warum blockiert Windows die Ausführung der C-Gate Installation?

Heruntergeladene .exe Dateien werden von Windows leicht als Bedrohung eingestuft. Mit folgendem Powershell Befehl kann diese Einstufung für die Datei korrigiert werden:

cd Downloads
Unblock-File -Confirm:$false '.\C-Gate IoT Hub Setup.exe'

Sollte die Installation oder Ausführung von enthaltenen Skriptdateien weiterhin blockiert werden, installieren Sie bitte unser Cloos Zertifikat in Ihrem System und versuchen Sie es erneut. Achten Sie bitte darauf bei der Installation als Speicherort für das Zertifikat "Vertrauenswürdige Stammzertifizierungsstellen" auszuwählen.

Ich habe C-Gate unter Windows manuell mit Docker Desktop installiert. Wie migriere ich meine Daten auf die neue Version mit dem C-Gate Installer?

Der neue C-Gate Installer für Windows erkennt automatisch eine bisherige Installation mit Docker Desktop und importiert die Daten während der Installation. Stellen Sie bitte nach der Installation sicher, dass ihre C-Gate Installation wie gewohnt funktioniert. Anschließend löschen Sie bitte den C-Gate Container aus Docker Desktop, damit dieser nicht nach einem Neustart wieder automatisch startet.

Das Update meiner C-Gate Installation unter Windows meldet einen Fehler mit Zugangsdaten. Wie kann ich das beheben?

Bei einer älteren C-Gate Installation unter Windows wurden die Zugangsdaten zum CLOOS Docker Repository zum Teil nicht permanent gespeichert. Um das Problem zu beheben, führen Sie bitte folgenden Befehl in Ihrer WSL Installation (Ubuntu) aus und geben Sie die Zugangsdaten ein, die Sie mit Ihrer C-Gate Lizenz erhalten haben:

podman login --authfile=${HOME}/.docker/config.json docker.cloos.de