Seminarinformationen

Seminar - Ziel

In diesem 8-tägigen Seminar "LPIC-OT DevOps Tools Engineer Komplettkurs" erwerben Sie alle notwendigen Kenntnisse, um erfolgreich in einer DevOps-Umgebung zu arbeiten. Weltweit setzen Unternehmen zunehmend auf DevOps-Ansätze, um die Zusammenarbeit zwischen Systemadministration und Softwareentwicklung zu verbessern. Um dieser Entwicklung gerecht zu werden, hat das Linux Professional Institute (LPI) die LPIC-Open Technology DevOps Tools Engineer-Zertifizierung ins Leben gerufen. Diese bescheinigt Ihre Kompetenz im Umgang mit den wichtigsten Tools zur Steigerung von Effizienz und Teamarbeit im IT-Bereich.

Der Kurs legt den Fokus auf praxisnahe Fähigkeiten und den Einsatz zentraler DevOps-Werkzeuge wie Git, Jenkins, Docker, Docker Swarm, Kubernetes, Vagrant, Cloud-Init, Packer und Ansible. Sie erhalten umfassende Einblicke in moderne Softwareentwicklung, Versionsverwaltung, kontinuierliche Integration, Container-Orchestrierung, automatisierte Bereitstellung, Konfigurationsmanagement und den Betrieb von Services.

Die Inhalte des Seminars orientieren sich an den Anforderungen der LPIC-OT DevOps Tools Engineer-Zertifizierung und sind speziell für IT-Fachkräfte konzipiert, die die Prozesse zwischen Entwicklung und Betrieb effizienter gestalten wollen. Nach Abschluss des Seminars sind Sie bestens vorbereitet, um Ihre Kenntnisse im DevOps-Umfeld unter Beweis zu stellen und in einem wachsenden, zukunftsorientierten Bereich erfolgreich zu agieren.

Teilnehmer - Zielgruppe

  • Entwickler
  • Softwarearchitekten

Kurs - Voraussetzungen

  • Kenntnisse in DevOps-relevanten Domänen wie Software Engineering und Architecture, Container- und Machine Deployment, Configuration Management und Monitoring
  • Kenntnisse in führenden freien und Open-Source-Dienstprogramme wie Docker, Vagrant, Ansible, Puppet, Git und Jenkins

Seminardauer

  • 8 Tage
  • 09:00 Uhr bis 17:00 Uhr

Schulungsunterlagen

  • nach Absprache

Seminar-Inhalt / Agenda

701 Software Engineering

701.1 Modern Software Development

  • Service-basierte Anwendungen verstehen und entwerfen
  • Gängige API-Konzepte und -Standards verstehen
  • Aspekte der Datenspeicherung, Service-Status und Sitzungsverwaltung verstehen
  • Eigenschaften von Cloud-nativen Anwendungen verstehen
  • Software für den Betrieb in Containern entwerfen
  • Software für die Bereitstellung in Cloud-Diensten entwerfen
  • Risiken bei der Migration und Integration monolithischer Legacy-Software
  • Datenbankschema-Updates und Datenbankmigrationen

Verwendete Dateien, Begriffe und Utilities:

  • REST, JSON
  • Service Oriented Architectures (SOA)
  • Microservices
  • Immutable servers
  • Loose coupling
  • Test-driven development

701.2 Standard Components and Platforms for Software

  • Funktionen und Konzepte von Objekt-Speicher
  • Funktionen und Konzepte von relationalen und NoSQL-Datenbanken
  • Funktionen und Konzepte von Message Brokern und Message Queues
  • Funktionen und Konzepte von Big Data Services
  • Funktionen und Konzepte von Computing Services / IaaS
  • Funktionen und Konzepte von Application Runtimes / PaaS
  • Funktionen und Konzepte von gehosteten Anwendungen / SaaS
  • Funktionen und Konzepte von Function Applications / FaaS
  • Funktionen und Konzepte von Content Delivery Networks
  • Identitäts- und Zugriffsmanagement in Cloud-Diensten

Verwendete Dateien, Begriffe und Utilities:

  • Objects, Buckets, ACLs, S3
  • MariaDB, MySQL, PostgreSQL
  • Redis, MongoDB, InfluxDB
  • Elasticsearch und OpenSearch
  • Kafka, MQTT
  • IAM

701.3 Source Code Management

  • Git-Konzepte und Repository-Struktur verstehen
  • Dateien innerhalb eines Git-Repositorys verwalten
  • Branches und Tags verwalten
  • Mit Remote-Repositorys und Branches sowie Submodulen arbeiten
  • Dateien und Branches zusammenführen
  • SVN und CVS, inklusive zentralisierter und verteilter SCM-Lösungen

Verwendete Dateien, Begriffe und Utilities:

  • git
  • .gitignore

701.4 Continuous Integration and Continuous Delivery

  • Konzepte von Continuous Integration und Continuous Delivery verstehen
  • Komponenten einer CI/CD-Pipeline verstehen (Builds, Unit-, Integrations- und Akzeptanztests, Artefaktverwaltung, Delivery und Deployment)
  • Konzepte von GitOps verstehen
  • Rolle von Build-Artefakten und Caches verstehen
  • Best Practices für Deployment verstehen
  • Semantische Versionierung verstehen

Verwendete Dateien, Begriffe und Utilities:

  • Declarative Pipeline
  • Production, Staging und Development Environments
  • Feature toggles
  • Preview releases
  • Reconciliation loops
  • A/B testing
  • Blue-green und canary deployment

701.5 Software Composition, Licensing and Open Source

  • Verständnis, wie eine Anwendung aus mehreren Softwarekomponenten aufgebaut wird
  • Abhängigkeitsmanager wie NPM, Gradle oder Composer
  • Konzepte von proprietärer und Open-Source-Software verstehen
  • Konzepte von Open-Source-Software-Lizenzen verstehen
  • Gängige Open-Source-Lizenzen (GPL, LGPL, AGPL, BSD, MIT und Apache License)
  • Lizenzkompatibilität und Multi-Lizenzierung

Verwendete Dateien, Begriffe und Utilities:

  • Software libraries
  • Software Bill Of Materials
  • Proprietary software
  • Open Source Software und Free Software
  • Copyleft Open-Source-Software-Lizenzen
  • Permissive Open-Source-Software-Lizenzen

702 Application Container

702.1 Application Container Management

  • Docker- und Podman-Architektur verstehen
  • Bestehende Images aus einem OCI-Registry verwenden
  • Container betreiben und darauf zugreifen
  • Docker-Netzwerkkonzepte verstehen, inklusive Overlay-Netzwerke
  • Konzepte von DNS-Service-Discovery verstehen
  • Container mit Containernetzwerken verbinden und DNS für Service-Discovery verwenden
  • Docker-Speicherkonzepte verstehen
  • Docker-Volumes für geteilten und persistenten Containerspeicher verwenden
  • Rootless Container

Verwendete Dateien, Begriffe und Utilities:

  • docker container
  • docker network
  • docker image
  • docker volume
  • podman container
  • podman network
  • podman image
  • podman volume

702.2 Container Orchestration

  • Anwendungsmodell von Docker Compose und Podman Compose verstehen
  • Docker Compose-Dateien (Version 3 oder neuer) erstellen und ausführen
  • Dienste, Netzwerke und Volumes inklusive ihrer gängigen Eigenschaften in Docker Compose-Dateien definieren
  • Docker Compose verwenden, um laufende Container auf neuere Images zu aktualisieren

Verwendete Dateien, Begriffe und Utilities:

  • docker compose
  • podman-compose
  • docker-compose.yml

702.3 Container Image Building

  • Dockerfiles erstellen und Images aus Dockerfiles bauen
  • OCI-Image-Namen verstehen
  • Images in ein Docker-Registry hochladen
  • Prinzipien von Image-Scannern verstehen
  • Sicherheitsrisiken von Container-Virtualisierung und Container-Images verstehen und wie man sie mindert
  • Docker buildx, Docker Buildkit, Podman build und Buildah

Verwendete Dateien, Begriffe und Utilities:

  • docker image
  • docker login
  • Dockerfile
  • Containerfile
  • .dockerignore
  • FROM, COPY, ADD, RUN, VOLUME, EXPOSE, USER, WORKDIR, ENV, ARG, CMD, ENTRYPOINT

703 Kubernetes

703.1 Kubernetes Architecture and Usage

  • Wichtige Komponenten und Dienste in einem Kubernetes-Cluster verstehen
  • kubectl konfigurieren, um ein bestehendes Kubernetes-Cluster zu verwenden
  • kubectl verwenden, um Informationen über Kubernetes-Ressourcen zu erhalten
  • kubectl verwenden, um Ressourcen zu erstellen, zu ändern und zu löschen
  • Kubernetes Operators

Verwendete Dateien, Begriffe und Utilities:

  • API-Server, etcd, Controller Manager, Scheduler
  • ~/.kube/config
  • kubectl get, kubectl describe, kubectl apply, kubectl create, kubectl run, kubectl expose, kubectl scale, kubectl set, kubectl edit, kubectl explain, kubectl config, kubectl logs, kubectl exec

703.2 Basic Kubernetes Operations

  • Verwendung von YAML-Dateien zur Deklaration von Kubernetes-Ressourcen verstehen
  • Prinzip eines Pods verstehen
  • Verwendung von Deployments, inklusive Skalierung und Rolling Updates verstehen
  • Dienste mit Services und Ingress zugänglich machen
  • Speicher mit PersistentVolumeClaims verwenden
  • Andere Kubernetes-Orchestrierungsressourcen (DaemonSets, StatefulSets, Jobs und CronJobs)

Verwendete Dateien, Begriffe und Utilities:

  • Pods, ReplicaSets, Deployments, Services, Ingress, PersistentVolumeClaims, ConfigMaps, Secrets

703.3 Kubernetes Package Management

  • Konzepte von Charts, Releases und Values verstehen
  • Software mit Helm installieren, aktualisieren und deinstallieren
  • Benutzerdefinierte Werte angeben, um mit Helm installierte Software zu konfigurieren
  • Kustomize
  • Flux CD und Argo CD

Verwendete Dateien, Begriffe und Utilities:

  • helm install, helm upgrade, helm list, helm uninstall, values.yaml

704 Security and Observability

704.1 Cloud Native Security

  • Wichtige IT-Infrastrukturkomponenten und ihre Rolle bei der Bereitstellung verstehen
  • Gängige IT-Infrastruktursicherheitsrisiken und Wege zu deren Minderung verstehen
  • Supply-Chain-Sicherheit und Abhängigkeiten von Fremdcode verstehen
  • Gängige Anwendungs-Sicherheitsrisiken und Wege zu deren Minderung verstehen
  • Konzepte der asymmetrischen Kryptographie und digitalen Zertifikate verstehen
  • Prinzipien gängiger Standards für Authentifizierung und Autorisierung verstehen
  • Verwaltung von Benutzeranmeldeinformationen und Verwendung fortschrittlicher Authentifizierungstechnologien

Verwendete Dateien, Begriffe und Utilities:

  • Service Exploits, Brute Force Angriffe, Denial of Service Angriffe
  • Sicherheitsupdates, Paketfilterung, Load Balancer und Application Gateways
  • Cross Site Scripting, ausführliche Fehlerberichte
  • API-Authentifizierung
  • Buffer Overflows, SQL Injections
  • API-Zugriff, Berechtigungen, Ausführlichkeit und Ratenbegrenzungen
  • CORS-Header und CSRF-Tokens
  • Common Vulnerabilities and Exposures (CVE)
  • CVE-IDs und CVE-Scores
  • Public Key, Private Key, X.509-Zertifikat, Zertifizierungsstelle
  • TLS, Transportverschlüsselung
  • Single Sign-On (SSO)
  • OAuth2, OpenID Connect und SAML
  • Zwei-Faktor-Authentifizierung (2FA) und Multi-Faktor-Authentifizierung (MFA)
  • Einmal-Passwörter (OTP), zeitbasierte Einmal-Passwörter (TOTP)
  • Authenticator-Anwendungen
  • Passwort-Hashing und Salting

704.2 Prometheus Monitoring

  • Ziele von IT-Betrieb und Service-Bereitstellung verstehen, inklusive nicht-funktionaler Eigenschaften wie Verfügbarkeit, Latenz, Reaktionsfähigkeit
  • Metriken und Indikatoren verstehen und identifizieren, um die technische Funktionalität eines Dienstes zu überwachen und zu messen
  • Metriken und Indikatoren verstehen und identifizieren, um die logische Funktionalität eines Dienstes zu überwachen und zu messen
  • Konzepte von Prometheus verstehen, inklusive Exporter, Pushgateway, Alertmanager und Grafana
  • Architektur von Prometheus verstehen
  • Prometheus einrichten und dateibasierte Service-Discovery konfigurieren
  • Container und Microservices mit Prometheus überwachen
  • PromQL verwenden, um Log-Daten abzurufen
  • Metriken für spezifische Labels aggregieren
  • Metriken über die Zeit aggregieren

Verwendete Dateien, Begriffe und Utilities:

  • Prometheus, Exporters, AlertManager, Grafana
  • Label selectors
  • Instant vectors und Aggregatfunktionen
  • Range vectors und Aggregatfunktionen
  • Node Exporter und Blackbox Exporter

704.3 Log Management and Analysis

  • Verständnis, wie Application- und System-Logging funktioniert
  • Architektur und Funktionen gängiger Open-Source-Logging-Stacks verstehen

Verwendete Dateien, Begriffe und Utilities:

  • Elasticsearch und OpenSearch
  • Logstash und filebeat
  • Fluentd und FluentBit
  • Kibana
  • Loki und promtail
  • Grafana
  • Greylog2

704.4 Tracing

  • Konzepte von Tracing verstehen
  • Konzepte von OpenTelemetry verstehen
  • Gängige Open-Source-Telemetrie-Analyse-Tools

Verwendete Dateien, Begriffe und Utilities:

  • OpenTelemetry
  • Spans und Distributed Traces
  • Contexts, Span und Trace IDs
  • Span attributes, events, links, status und kind
  • Grafana Tempo
  • Jaeger

Weitere Schulungen zu Thema LPI Linux Professional Institute

Linux-LPI - Workshop zur Prüfungsvorbereitung für LPIC1

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

Dieser Workshop bietet eine intensive Vorbereitung auf die beiden LPIC-1-Zertifizierungsprüfungen LPI101 und LPI102. Erfahrene Linux-Administratoren können hier ihr vorhandenes Wissen prüfen und etwaige Lücken stopfen. Neben einer zielorientierten Wiederholung des ...

Linux-LPI - LPIC2: Workshop zur Prüfungsvorbereitung LPI201

- u.a. in Nürnberg, Berlin, Stuttgart, München, Köln

Dieser Workshop dient der intensiven Vorbereitung auf die LPI201-Prüfung. Die Prüfungsinhalte werden wiederholt und etwaige Lücken gestopft. Durch eine Testprüfung erhalten Sie Sicherheit im Umgang mit dem Material. Wenn Sie Prüfungen ablegen möchten bzw. den Kurs als ...

LPIC-1: FastLearn

- u.a. in München, Heidelberg, Erfurt, Jena, Marburg

In dieser 5-tägigen Schulung "LPIC-1: FastLearn" erhalten Sie eine umfassende Vorbereitung auf die LPIC-1-Zertifizierung (Junior Level Administration). Das Hauptziel der LPIC-1-Zertifizierung besteht darin, Ihre praktischen Linux-Kenntnisse zu demonstrieren, anstatt ...

LPIC-2: FastLearn

- u.a. in Frankfurt am Main, Hamburg, Nürnberg, Erfurt, Darmstadt

In dieser 8-tägigen Schulung "LPIC-2: FastLearn" erhalten Sie eine intensive Vorbereitung auf die LPIC-2-Zertifizierung (Intermediate Level Linux Professional). Das Hauptziel der LPIC-2-Zertifizierung besteht darin, Ihre praktischen Linux-Kenntnisse zu demonstrieren, ...