— inSyca IT Solutions —

Elasticsearch und Kibana gehören zum Open Source ELK Stack und werden bei unseren Kundenprojekten für Speicherung, schnelle Suche und Visualisierung von Daten verwendet. O-Ton Elastic: „Mit dem Elastic Stack können Sie zuverlässig und sicher Daten aus jeder beliebigen Quelle und in jedem beliebigen Format erfassen und anschließend die Daten in Echtzeit durchsuchen, analysieren und visualisieren.“ Wir nutzen den Elastic Stack für QNA Daten unserer Chatbots, EDI-Tracking, Logging und für Applikationen die Daten in Echtzeit auswerten und visualisieren.

Unsere Development Module für Kundenprojekte werden in der Cloud betrieben. Deshalb wollten wir einen einfachen Showcase für unsere Kunden um die Möglichkeiten des ELK Stacks zu zeigen. Es gibt bereits Docker Hub Images die ein schnelles Deployment mit Docker ermöglichen, leider ist die Konfiguration über Environment Variablen in Azure Container Instances (ACI) limitiert. Um das Elasticsearch Image für eine Development Umgebung mit nur einem Knoten auszubringen, wird eine Environment Variable „discovery.type“ mit dem Wert „single-node“ benötigt. In der Azure Umgebung werden aber keine Variablennamen mit Sonderzeichen (in diesem Fall ein Punkt) akzeptiert. Auf den original Images aufbauend, wurden die Werte in der Konfiguration für das Docker Image fest hinterlegt und können nun ohne Probleme in Azure verwendet werden.

Das Deployment führt mit wenigen Schritten zu einer kompletten Umgebung und kann sofort verwendet werden.

In Azure die CloudShell öffnen und folgenden Befehl eingeben:

code deploy-aci.yaml

Diese YAML-Datei definiert eine Containergruppe mit den Containern für Elasticsearch und Kibana, einer öffentlichen IP-Adresse und drei exponierten Ports. Die Container werden über das öffentliche Docker Hub Repository der inSyca bereitgestellt.
Die Zeilen unten in den Codeeditor kopieren und anpassen. Folgende Werte müssen durch eigene Werte ersetzt werden:
– YOUR-AZURE-CONTAINERGROUP-NAME (Name der Containergruppe in Azure)
– YOUR-AZURE-DNS-NAME (Name für die URL der Container)

apiVersion: 2018-10-01
location: westeu
name: YOUR-AZURE-CONTAINERGROUP-NAME
properties:
  containers:
  - name: es-op-eu-00
    properties:
      image: docker.io/insyca/es-dev-azr:1.0
      resources:
        requests:
          cpu: 1
          memoryInGb: 1.5
      ports:
      - port: 9200
      - port: 9300
  - name: kb-op-eu-00
    properties:
      image: docker.io/insyca/kb-dev-azr:1.0
      resources:
        requests:
          cpu: 1
          memoryInGb: 1.5
      ports:
      - port: 5601
  osType: Linux
  ipAddress:
    type: Public
    ports:
    - protocol: tcp
      port: 5601
    - protocol: tcp
      port: 9200
    - protocol: tcp
      port: 9300
    dnsNameLabel:
        YOUR-AZURE-DNS-NAME
tags: null
type: Microsoft.ContainerInstance/containerGroups

Mit <ctrl-s> oder über das Menü die Datei speichern und das Deployment mit folgendem Befehl starten. Der Wert YOUR-RESSOURCEGROUP muss durch den Namen einer vorhandenen Ressourcengruppe in Ihrem Azure Tenant ersetzt werden.

az container create --resource-group YOUR-RESSOURCEGROUP--file deploy-aci.yaml

Das Deployment dauert ein paar Minuten, dann stehen Elasticsearch und Kibana zur Verfügung.

In wenigen Minuten erhält man eine Umgebung für Kundenpräsentationen und/oder Entwickler.

Weiterführende Links:
Elastic
Tutorial: Deploy a multi-container group using a YAML file


— inSyca IT Solutions —

Veröffentlicht von inSyca IT Solutions GmbH

Digitale Vernetzung und Prozessintegration für den Mittelstand | B2B - EDI - BPA | On Premise & Cloud | Azure & BizTalk

Kommentar hinterlassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Erstelle deine Website auf WordPress.com
Jetzt starten
%d Bloggern gefällt das: