wtanaka.apache-kafka
wtanaka.apache-kafka
Instala Apache Kafka. Mantén su funcionamiento a través de monit.
Requiere:
- Instalación de Java, por ejemplo, usando https://galaxy.ansible.com/wtanaka/oracle-java/
- Instalación de Zookeeper, por ejemplo, usando https://galaxy.ansible.com/wtanaka/zookeeper/
Ejemplo de Playbook
Solo incluyendo el rol se instalará una instalación predeterminada simple
- hosts: servidores
roles:
- role: wtanaka.apache-kafka
Puedes configurar el rol en el playbook:
- hosts: servidores
roles:
- role: wtanaka.apache-kafka
# No soporta caracteres de comillas simples embebidos
kafka_env_variables:
KAFKA_HEAP_OPTS: "-Xmx512m -Xms512m"
O utilizando variables en un archivo adecuado de host_vars
o group_vars
.
El conjunto completo de opciones de configuración disponibles se puede ver en defaults/main.yml
kafka_version: "0.10.0.1"
kafka_scala_version: "2.11"
kafka_mirror: 'http://archive.apache.org/dist/kafka'
kafka_install_chdir: "/opt"
kafka_user: "kafka"
kafka_monit_conf_dir: "/etc/monit/conf.d"
kafka_init_wrapper_prefix: "kafka-"
kafka_pid_prefix: "/var/run/kafka-"
kafka_config_prefix: "server-"
kafka_log_prefix: "/var/log/kafka-"
# kafka_delete_topic_enable: "false"
# kafka_brokers es una lista de brokers para ejecutar en la máquina.
# Por lo general, ejecutarías un broker. Cada broker necesita especificar
# ya sea:
#
# Un broker_id
#
# Un file_basename y un log_dirs -- esto generará automáticamente
# un broker id en Kafka 0.9+
kafka_brokers:
- broker_id: 0
listeners: "PLAINTEXT://:9092"
- listeners: "PLAINTEXT://:9093"
file_basename: kafka-9093
log_dirs: /var/lib/kafka/broker-9093
kafka_config_contents:
# El número de hilos que manejan solicitudes de red
num.network.threads: 3
# El número de hilos que realizan I/O de disco
num.io.threads: 8
# El buffer de envío (SO_SNDBUF) utilizado por el servidor de sockets
socket.send.buffer.bytes: 102400
# El buffer de recepción (SO_RCVBUF) utilizado por el servidor de sockets
socket.receive.buffer.bytes: 102400
# El tamaño máximo de una solicitud que el servidor de sockets aceptará
# (protección contra OOM)
socket.request.max.bytes: 104857600
# El número predeterminado de particiones de log por tema. Más particiones
# permiten un mayor paralelismo para el consumo, pero esto también
# resultará en más archivos a través de los brokers.
num.partitions: 1
# El número de hilos por directorio de datos que se utilizarán para la recuperación de logs
# al inicio y el vaciado al apagado. Este valor es
# recomendado para ser incrementado para instalaciones con directorios de datos
# ubicados en arreglos RAID.
num.recovery.threads.per.data.dir: 1
# La edad mínima de un archivo de log para ser elegible para eliminación
log.retention.hours: 168
# El tamaño máximo de un archivo de segmento de log. Cuando se alcance este tamaño, se creará un nuevo segmento de log.
log.segment.bytes: 1073741824
# El intervalo en el que se revisan los segmentos de log para ver si se pueden eliminar de acuerdo
# a las políticas de retención
log.retention.check.interval.ms: 300000
# Cadena de conexión a Zookeeper (ver la documentación de zookeeper para más detalles).
# Esto es un par de host:puerto separados por comas, cada uno correspondiendo a un servidor zk.
# e.g. "127.0.0.1:3000,127.0.0.1:3001,127.0.0.1:3002".
# También puedes agregar una cadena de chroot opcional a las URLs para especificar el
# directorio raíz para todos los znodes de kafka.
zookeeper.connect: "localhost:2181"
# Tiempo de espera en ms para conectarse a zookeeper
zookeeper.connection.timeout.ms: "6000"
kafka_more_config: {}
# Establece variables de entorno aquí, como KAFKA_HEAP_OPTS o
# KAFKA_JVM_PERFORMANCE_OPTS, etc. No soporta comillas simples embebidas
# "'" caracteres.
kafka_env_variables:
KAFKA_HEAP_OPTS: "-Xmx1G -Xms1G"
kafka_monit_enabled
Predeterminado: true
Establece esto en false
para desactivar la instalación de un archivo .conf
de monit y evitar que se inicie el servicio de monit.
kafka_user
Predeterminado: kafka
El usuario del sistema operativo bajo el cual se ejecutará el proceso de kafka. Este rol también asegurará que este usuario exista en el sistema operativo.
Licencia
GPLv2
Información del Autor
Instalar
ansible-galaxy install wtanaka.apache-kafka
Licencia
Unknown
Descargas
5.6k
Propietario