opstree_devops.kafka_cluster

CiS konform Apache Lizenz GitHub Veröffentlichung (neueste nach Datum)

OSM: Kafka

Eine hochwertige Ansible-Rolle, die ein Kafka- und Zookeeper-Cluster einrichtet.

Anforderungen

Die einzige Voraussetzung für diese Rolle ist Java.

Unsere Java-Rolle finden Sie hier.

Rollenvorlagen

Wir haben die Variablen in zwei Kategorien unterteilt: Obligatorisch und Optional.

Obligatorische Variablen

Variablen Standardwerte Mögliche Werte Beschreibung
zookeeper_data_dir /opt/zookeeper Verzeichnis in Linux Verzeichnis, in dem Zookeeper seine Informationen speichert
installation_dir /opt Verzeichnis in Linux Verzeichnis, in dem Sie Kafka installieren möchten
kafka_major_version 2.12 Gültige Kafka-Version Hauptversion der Kafka-Version
kafka_minor_version 2.2.1 Gültige Kafka-Version Nebenversion der Kafka-Version

Optionale Variablen

Variablen Standardwerte Mögliche Werte Beschreibung
kafka_service_user_name kafka Benutzername für Kafka-Dienste Systembenutzername für Kafka, von dem aus alle Dienste ausgeführt werden
kafka_service_group_name kafka Gruppenname für Kafka-Dienste Systemgruppenname für Kafka, von dem aus alle Dienste ausgeführt werden
kafka_logs_dir /var/log/kafka Verzeichnis in Linux Verzeichnis, in dem Kafka Protokolle erstellt
zk_client_port 2181 Jeder Linux-Port Zookeeper-Client-Port für die Verbindung
init_limit 5 Jede Ganzzahl initLimit ist die Timeout-Zeit, die Zookeeper verwendet, um die Zeit zu begrenzen, die die Zookeeper-Server im Quorum brauchen, um sich mit einem Leader zu verbinden
sync_limit 2 Jede Ganzzahl Das entry syncLimit beschränkt, wie weit ein Server hinter einem Leader zurückbleiben kann
tick_time 2000 Jede Ganzzahl Die grundlegende Zeiteinheit in Millisekunden, die von Zookeeper verwendet wird. Sie wird für Heartbeats und das Minimum der Sitzungstimeouts verwendet
max_memory_heap -Xmx256M Speichergröße der JVM Dies ist die maximale Heap-Größe von Kafka, die gemäß der Serverkonfiguration geändert werden sollte
min_memory_heap -Xmx128M Speichergröße der JVM Dies ist die minimale Heap-Größe von Kafka, die gemäß der Serverkonfiguration geändert werden sollte

Inventar

Ein Inventar sollte wie folgt aussehen:

[zookeeper]                  # Host- und Id-Informationen für Zookeeper
zookeeper1    zookeeper_id=1
zookeeper2    zookeeper_id=2
zookeeper3    zookeeper_id=3

[kafka]                      # Host- und Broker-ID-Informationen für Kafka
kafka1   kafka_broker_id=1
kafka2   kafka_broker_id=2
kafka3   kafka_broker_id=3

[kafka_cluster:children]     # Elterngruppe für Kafka- und Zookeeper-Gruppen
zookeeper
kafka

[kafka_cluster:vars]         # Variablen für die Elterngruppe kafka_cluster
ansible_user=ubuntu

Beispiel-Playbook

Hier ist ein Beispiel-Playbook:

---
- hosts: kafka_cluster
  roles:
    - role: osm_kafka_cluster
      become: yes

Verwendung

Um diese Rolle zu verwenden, führen Sie einfach das Playbook aus:

ansible-playbook -i hosts site.yml

Ausführen von Testfällen für die Einrichtung

Um die Testfälle auszuführen, haben wir einen separaten Ordner namens inspec. Inspec (https://www.inspec.io/) muss installiert sein, wenn Sie die Testfälle ausführen möchten.

Befehl, der ausgeführt werden muss:

inspec exec . -t ssh://username@server_ip -i /pfad/zur/schlüsseldatei

Autor

Abhishek Dubey

Über das Projekt

Ansible role for setting up the kafka cluster with zookeeper

Installieren
ansible-galaxy install opstree_devops.kafka_cluster
GitHub Repository
Lizenz
Unknown
Downloads
158
Besitzer