mplachter.flume
Rôle Ansible pour déployer et configurer Apache Flume
- Déploie Apache Flume
- Configure Apache Flume
- Crée le service
apache-flume
- Exécute uniquement la configuration de l'agent
Exigences
- En cours d'exécution
- Ansible 2.3+
- Test
- Docker/Vagrant
- Molecule = 1.2.5
Variables du rôle
- Variables Java
vars
java_heap_xms: 125 java_heap_xmx: 250
- Variables Apache Flume
vars
mirror_url: http://apache.mirrors.ionfish.org/flume version: 1.7.0
- Variables d'installation du dossier/path Linux
vars
download_path: /tmp installation_path: /usr/local owner: root group: root
- Variables de configuration d'Apache Flume
vars
- Veuillez consulter Guide de l'Utilisateur Flume
- Actuellement, la configuration permettra
- Agents
- Le service ne sera créé que pour
agent
- multiple
- Il faudra créer manuellement d'autres services pour exécuter ceux-ci pour le moment
- Le service ne sera créé que pour
- source
- Actuellement, seul un source est autorisé pour chaque
agent
- Actuellement, seul un source est autorisé pour chaque
- canal
- Actuellement, seul un canal est autorisé pour chaque
agent
- Actuellement, seul un canal est autorisé pour chaque
- éviers
- multiple
- groupe d'éviers
- Ajoute tous les
sinks
dansagent
ausinkgroup
- Ajoute tous les
- Agents
- En raison des nombreuses possibilités de configuration de Flume, veuillez lire ce qui suit
- Veuillez remplacer "." par "_" dans votre configuration de flume pour Noms de Propriété
- Les Valeurs n'ont pas besoin du remplacement
- Exemple
kafka_consumer_group_id: testflume
- Résultat
agent.source.kafka.consumer.group.id = testflume
- Veuillez remplacer "." par "_" dans votre configuration de flume pour Noms de Propriété
- Vous pouvez passer la variable
apache_flume_config
pour copier la configuration- Exemple
apache_flume_config: file/flume-conf.properties
- Résultat
- Cela copiera le flume-conf.properties de votre répertoire de fichiers sur la(les) machine(s) cible(s)
- Exemple
- Variables supplémentaires
- Bibliothèques natives HDFS
hdfs_libs = true
- Cela téléchargera
HDFS Native Libs
et les placera dansplugin.d/hdfs/native/
- Cela téléchargera
- Bibliothèques natives HDFS
- Exemple de variables
mirror_url: http://apache.mirrors.ionfish.org/flume version: 1.7.0 download_path: /tmp installation_path: /usr/local owner: root group: root java_heap_xms: 125 java_heap_xmx: 250 hdfs_libs: true agents: - name: agent source: name: kafkaSource type: org.apache.flume.source.kafka.KafkaSource kafka_consumer_group_id: flume kafka_consumer_auto_offset_reset: latest kafka_consumer_max_partition_fetch_bytes: 1048576 kafka_consumer_heartbeat_interval_ms: 3000 kafka_consumer_session_timeout_ms: 30000 kafka_consumer_request_timeout_ms: 40000 kafka_consumer_fetch_max_wait_ms: 500 kafka_bootstrap_servers: - 127.0.0.1:9092 - 0.0.0.0:9092 kafka_topics: - topic1 - topic2 channel: name: kakfaChannel type: memory capacity: 1000000 transactionCapacity: 100000 sinks: - name: kafkaHDFSSink1 type: hdfs hdfs_path: "s3n://GFGJFSHFJHFGFHSBJ:fdjhSFUYGSF65678+-saigfew123@hdfs/%{topic}/%y/%m/%d/%H" hdfs_filePrefix: FlumeData hdfs_inUseSuffix: .tmp hdfs_rollInterval: 30 hdfs_rollSize: 1024 hdfs_rollCount: 10 hdfs_idleTimeout: 0 hdfs_batchSize: 100 hdfs_fileType: "SequenceFile" hdfs_maxOpenFiles: 5000 hdfs_callTimeout: 10000 hdfs_threadsPoolSize: 10 hdfs_rollTimerPoolSize: 1 hdfs_round: false hdfs_roundValue: 1 hdfs_roundUnit: second hdfs_timeZone: Local Time hdfs_useLocalTimeStamp: false hdfs_closeTries: 0 hdfs_retryInterval: 180 - name: kafkaHDFSSink2 type: hdfs hdfs_path: "s3n://GFGJFSHFJHFGFHSBJ:fdjhSFUYGSF65678+-saigfew123@hdfs/%{topic}/%y/%m/%d/%H" hdfs_filePrefix: FlumeData hdfs_inUseSuffix: .tmp hdfs_rollInterval: 30 hdfs_rollSize: 1024 hdfs_rollCount: 10 hdfs_idleTimeout: 0 hdfs_batchSize: 100 hdfs_fileType: "SequenceFile" hdfs_maxOpenFiles: 5000 hdfs_callTimeout: 10000 hdfs_threadsPoolSize: 10 hdfs_rollTimerPoolSize: 1 hdfs_round: false hdfs_roundValue: 1 hdfs_roundUnit: second hdfs_timeZone: Local Time hdfs_useLocalTimeStamp: false hdfs_closeTries: 0 hdfs_retryInterval: 180 sink_group: name: sinkgroup1 processor_type: load_balance processor_backoff: false processor_selector: round_robin
Dépendances
- andrewrothstein.java-oracle-jre
Exemple de Playbook
- hosts: all
roles:
- role: mplachter.flume
Licence
MIT
Informations sur l'Auteur
Matthew Plachter
Installer
ansible-galaxy install mplachter.flume
Licence
mit
Téléchargements
516
Propriétaire
Let's Do Stuff & Things.