mplachter / ansible-role-kafka-manager

Ansible Role for installing and configuring Yahoo Kafka manager

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Yahoo-Kafka-Manager

Ansible Role for building, deploying and configuring Yahoo Kafka Manager

  • Build Yahoo Kafka Manager

    • Builds Yahoo Kafka Manager Locally
  • Deploys Yahoo Kafka Manager

  • Configures Yahoo Kafka Manager

  • Creates kafka-manager service

  • This is a ansible role to install and configure yahoo kafka manager

Requirements

  • Running
    • Ansible 2.3
    • Java 1.8 JDK
    • Unzip
    • SBT
  • Testing
    • Docker
    • Molecule 1.25.0

Role Variables

  • Java vars

    java_heap_xms: 125
    java_heap_xmx: 250
    
  • Kafka Manager vars

    kafka_manager_ver: '1.3.3.14'
    kafka_manager_mirror: https://github.com/yahoo/kafka-manager/archive
    
  • Linux folder/path install vars

    download_path: /tmp
    installation_path: /usr/local
    owner: root
    group: root
    
  • Kafka Manager configuration vars

    • Please consult Yahoo Kafka Manager github Page
    • Currently configuration will allow setting
      • Kafka Manager Features
      • Simple Auth
      • Changing Play Secret
      • Zookeeper Hosts
  • Example variables

    ---
    # defaults file for kafka-manager
    
    # Kafka Manager Remote Download
    kafka_manager_ver: '1.3.3.14'
    kafka_manager_mirror: https://github.com/yahoo/kafka-manager/archive
    download_path: /tmp
    
    # Kafka Manager Install Defualt Settings
    installation_path: /usr/local
    listen_port: 8080
    
    # Linux Directory Permissions
    owner: root
    group: root
    
    kafka_manager_features:
      - KMClusterManagerFeature
      - KMTopicManagerFeature
      - KMPreferredReplicaElectionFeature
      - KMReassignPartitionsFeature
    
    kafka_manager_auth_enabled: false
    kafka_manager_auth_username: admin
    kafka_manager_auth_password: password
    kafka_manager_play_crypto_secret: /HeV^GoZV00N=ov8`IRL3:iTDX3[WNgS1hMMPl/3Y0[qfKCncDspHaNSYNyoB3XA
    kafka_manager_zookeeper_host:
      - name: 127.0.0.1
        port: 2181
    
  • You can bypass the automated build by already having a built Yahoo Kafka Manager in zip form

    • Below is an example of using a prebuilt Yahoo Kafka Manager
      - hosts: all
        roles:
          - role: mplachter.kafka-manager
        vars:
          path_to_locally_built_kafka_manager: files/kafka-manager-1.3.3.6.zip
          kafka_manager_ver: 1.3.3.6
    

Dependencies

  • role: andrewrothstein.java-oracle-jdk
    • version: v2.0.0

Example Playbook

- hosts: all
  roles:
    - role: mplachter.kafka-manager

License

MIT

Author Information

Matthew Plachter

About

Ansible Role for installing and configuring Yahoo Kafka manager

License:MIT License


Languages

Language:Python 100.0%