Neuigkeiten von trion.
Immer gut informiert.

Blog-Archiv 2021

MQTT-Broker im Vergleich 3 Mai

Geschrieben von Christian Bittner am 3. Mai 2021
MQTT-Logo

Die Covid Pandemie hat zumindest einen (vermutlich) positiven Nebeneffekt: Die Digitialisierung, die vierte industrielle Revolution, IoT & Co oder wie man das Ganze auch nennen mag erlebt einen Boom. Eines der wesentlichen Protokolle für IoT / Maschinenkommunikation ist MQTT. Um Aktoren/Sensoren/Steuerungssysteme miteinander nach dem Publish-Subscribe Muster plaudern zu lassen bedarf es dabei eines Brokers.

Jib CLI - Docker Images ohne Dämon 2 Apr

Geschrieben von Thomas Kruse am 2. April 2021
Jib Logo

Jib CLI - Docker Images ohne Dämon bauen

Aus dem Java Umfeld stammt das Werkzeug Jib, mit dem sich Anwedungen in optimierte Docker / OCI Container Images verwandeln lassen. Typischerweise wird Jib zusammen mit dem Buildsystem der Anwendung, z.B. maven oder gradle, verwendet.

Doch nun hat Google Jib auch als Kommandozeilenwerkzeug (CLI) in einer ersten Version bereitgestellt. Damit lässt sich Jib auch für andere Arten von Containern einsetzen.

Canary Deployment mit traefik 9 Mär

Geschrieben von Thomas Kruse am 9. März 2021
traefik Proxy

In vielen Kundenprojekten ist der Wunsch zu beobachten, von klassisch betriebenen Anwendungen sofort in die Cloud oder zumindest nach Kubernetes zu migrieren. Vielleicht schwingt dabei der Wunsch mit, Zeit zu sparen, indem Zwischenschritte ausgelassen werden. Oder man ist sich sehr wohl bewußt, dass man in Gewissen Bereichen versäumt hat, Know-How aufzubauen und in Modernisierung zu investieren.

Wir empfehlen regelmäßig zumindest kleine Zwischenschritte einzuplanen, um Erfahrungen mit der Erstellung aber auch dem Design von Anwendungen für Container- und Cloudumgebungen zu sammeln. Das gilt um so mehr, wenn das Unternehmen sich nicht ganze Teams, die sich nur um Infrastruktur und Support kümmern können, leisten möchte.

Eine gute Möglichkeit zum Start stellt der Einsatz von Docker Containern ohne automatischen Orchestrator wie Kubernetes, Mesos oder Docker-Swarm dar. Dabei wählt man typischerweise eine Anwendung aus, die nicht absolut essentiell ist, und optimalerweise bereits von einem Team mit modernen Technologien und vor allem Mindset entwickelt und betreut wird.

Mit verhältnismäßig wenig Infrastruktur können dann auch bereits Patterns aus der Cloud-Welt verprobt werden und entsprechende Erfahrungen mit den notwendigen Umsystemen und Prozessen gewonnen werden. Wichtig ist dabei, dass man den Schwenk auf fertige Lösungen vornimmt, und nicht mit eigenen Mitteln Dinge nachbaut und wartet, die ein Orchestrator mitliefert.

Hat man sich für traefik als Reverseproxy und Loadbalancer entschieden, um Container verfügbar zu machen, kann man bereits von vielen Vorzügen profitieren.

Ein Kunde wünschte sich Canary-Deployments auszuprobieren, und das allein mit traefik. Wie so ein Canary oder A/B Deployment mit traefik umgesetzt werden kann, zeigt der folgende Beitrag.

trion-consulting Heek 3 Mär

Geschrieben von Thomas Kruse am 3. März 2021

Distanzierung zur TrioN Consulting Heek

Aus aktuellem Anlass stellen wir klar:

Bei der trion development GmbH aus Münster handelt es sich um ein eigenständiges Unternehmen, das nicht mit der Marke "TrioN Consulting" aus Heek-Nienborg in Vebindung...

Drone CI global environment Variable 28 Jan

Geschrieben von Thomas Kruse am 28. Januar 2021
Drone CI Logo

Bei Drone CI handelt es sich um einen OpenSource continuous integration (CI) Server. Dabei setzt Drone CI auf die Ausführung des Builds mittels Containern. Typischerweise werden dabei Docker oder Kubernetes als Container Plattform eingesetzt.

Eine Buildpipeline wird in YAML definiert, dabei können sowohl services definiert werden, die im Build verwendet werden, als auch persistente volumes und natürlich die Buildabläufe als steps.

Drone CI Kubernetes Pipeline Beispiel
kind: pipeline
type: kubernetes
name: build-demo

platform:
  os: linux
  arch: arm64

volumes:
  - name: cache
    temp: {}
  - name: docker
    host:
      path: /var/tmp/docker

services:
  - name: docker
    image: docker:20.10-dind
    environment:
      DOCKER_TLS_CERTDIR: ""
    resources:
      requests:
        cpu: 1
        memory: 2Gi
      limits:
        memory: 2Gi
    privileged: true
    ports:
    - 2375
    volumes:
    - name: docker
      path: /var/lib/docker

steps:
  - name: publish
    image: docker
    environment:
      DOCKER_HOST: "tcp://localhost:2375"
    resources:
      requests:
        cpu: 1
        memory: 128Mi
    privileged: true
    commands:
      - cd frontend && sleep 10 # docker sidecar needs time for startup
      - docker build -t registry.docker-registry:5000/demo/frontend .
      - docker push registry.docker-registry:5000/demo/frontend

Los geht's!

Bitte teilen Sie uns mit, wie wir Sie am besten erreichen können.