Zum Hauptinhalt springen

OctoMesh auf einem lokalen kind-Cluster ausführen

Diese Anleitung führt Sie durch die lokale Bereitstellung von OctoMesh mithilfe der offiziellen OctoMesh-Helm-Charts in einem lokalen kind-Cluster (Kubernetes in Docker) – demselben Deployment-Modell, das OctoMesh in realen Clustern verwendet.

Repository klonen​

Klonen Sie das getting-started-Repository auf Ihren lokalen Rechner:

# Using HTTPS
git clone https://github.com/meshmakers/getting-started.git

# Using SSH
git clone git@github.com:meshmakers/getting-started.git

Siehe Voraussetzungen für die vor der Installation benötigten Werkzeuge.

Installation​

warnung

Manche Skripte müssen aus einer Sitzung mit erhöhten Rechten ausgeführt werden:

  • Starten Sie unter Windows PowerShell als Administrator (die Skripte brechen mit einer Meldung ab, falls nicht).
  • Unter Linux und macOS ist während des Zertifikatsschritts mit einer sudo-Abfrage zu rechnen.

Führen Sie die folgenden Befehle aus, um die Installation zu starten:

cd getting-started/scripts
./om-install.ps1 # core profile
./om-install.ps1 -DeploymentProfile full # + Refinery Studio and Reporting

Der Installer:

  1. erstellt einen kind-Cluster namens octomesh (alle Ports ausschließlich an 127.0.0.1 gebunden),
  2. installiert MongoDB, RabbitMQ und CrateDB,
  3. installiert ingress-nginx und cert-manager mit einer lokalen Root-CA (Sie werden nach sudo-/Admin-Rechten gefragt, um ihr zu vertrauen; mit -SkipTrustCa überspringen),
  4. installiert die OctoMesh-Plattform und den Communication Operator aus dem öffentlichen Helm-Chart-Repository (nur Release-Versionen – Sie wählen die Version, die neueste ist die Standardeinstellung).

Admin-Benutzer erstellen und anmelden​

  1. Öffnen Sie https://identity.127-0-0-1.nip.io/ und registrieren Sie den Admin-Benutzer (die E-Mail-Adresse muss wohlgeformt sein, muss aber nicht existieren).
  2. Konfigurieren Sie das CLI und melden Sie sich an:
./om-login-local.ps1 # tenant: meshtest
./om-login-local.ps1 -tenantId "mytenant" # custom tenant
./om-login-local.ps1 -includeReporting $true # full profile

Tenant erstellen und den Mesh Adapter bereitstellen​

./om-bootstrap-tenant.ps1 # tenant meshtest + mesh adapter
./om-bootstrap-tenant.ps1 -IncludeSimulation # + simulation adapter

Dies erstellt den Tenant, aktiviert die Kommunikation (was den Standard-Deployment-Site, den Mesh Adapter und das öffentliche Chart-Repository seedet) und stellt die Adapter über den Communication Operator bereit – genau so, wie verwaltete OctoMesh-Umgebungen arbeiten.

URLs​

ServiceURL
Identityhttps://identity.127-0-0-1.nip.io/
GraphQL Playground (System-Tenant)https://assets.127-0-0-1.nip.io/tenants/octosystem/graphql/playground
Bot-Dashboardhttps://bots.127-0-0-1.nip.io/ui/jobs
Platform Services (Konfigurations-Discovery)https://platform.127-0-0-1.nip.io/octosystem/_configuration
Refinery Studio (Full-Profil)https://studio.127-0-0-1.nip.io/
Reporting (Full-Profil)https://reporting.127-0-0-1.nip.io/
RabbitMQ-Verwaltunghttp://localhost:15672/ (guest/guest)
CrateDB-Konsolehttp://localhost:4301/
MongoDBmongodb://localhost:27017

Installation verwalten​

./om-status.ps1 # pods, helm releases, ports, URLs
./om-stop.ps1 # stop the cluster (data preserved)
./om-start.ps1 # start it again (waits for Identity, then restarts dependent services once)
./om-uninstall.ps1 # delete the cluster AND ALL DATA, untrust the CA
# (keeps local-config.json with the selected version + license keys)

Fehlerbehebung​

  • *.127-0-0-1.nip.io löst nicht auf – manche Router/Unternehmens-DNS-Server blockieren DNS-Antworten, die auf 127.0.0.1 verweisen (Rebind-Schutz). Ausweichlösung: Fügen Sie

    127.0.0.1 identity.127-0-0-1.nip.io assets.127-0-0-1.nip.io bots.127-0-0-1.nip.io communication.127-0-0-1.nip.io platform.127-0-0-1.nip.io studio.127-0-0-1.nip.io reporting.127-0-0-1.nip.io

    zu Ihrer hosts-Datei hinzu.

  • Docker-Hub-Ratenbegrenzungen während der Installation – anonyme Pulls sind begrenzt; führen Sie vor der Installation docker login mit einem kostenlosen Docker-Konto aus.

  • Ports bereits belegt – der Installer verweigert die Ausführung, wenn 80/443/27017/5672/15672/5432/4301 belegt sind (z. B. durch eine andere lokale Datenbank). Stoppen Sie zunächst den in Konflikt stehenden Service.

  • Browser warnt vor dem Zertifikat – der Root-CA-Vertrauensschritt wurde übersprungen oder ist fehlgeschlagen. Führen Sie ./om-install.ps1 ohne -SkipTrustCa erneut aus oder vertrauen Sie scripts/kubernetes/.generated/local-root-ca.crt manuell.