Construir un Azkaban (herramienta de claves de generación de certificados SSL)

prefacio

compañía Azkaban Linkedin lanzado por un programador de tareas de flujo de trabajo por lotes, principalmente para el funcionamiento de un conjunto de trabajo y los procesos a un orden particular en un flujo de trabajo, su configuración es clave simples: pares de valores manera por dependencias proporcionados a dependencias de configuración. Azkaban uso de perfiles de trabajo para establecer dependencias entre tareas, y proporciona un fácil de usar interfaz de usuario web para mantener y realizar un seguimiento de su flujo de trabajo.

Preparación del entorno

Dado que los procesos de Java se ejecutan en la máquina virtual de Java, es necesario configurar el entorno de Java! El consejo es por encima de 1,8. Si es bajo, por ejemplo, la versión 1.5, sin memoria puede ocurrir!

Aquí Insertar imagen Descripción
El despliegue sigue el autor

Aquí Insertar imagen Descripción

cuentas de inicio de sesión remoto MySQL a través de la máquina 102, la operación realizada en la tabla de datos! Azkaban depender de a través de la escritura-sql-Azkaban para realizar la descompresión en la mesa de la consola de MySQL, crear una tabla de MySQL establecido en la creación-all-sql-2.5.0.sql guión!

Elija las siguientes versiones de Azkaban
Aquí Insertar imagen Descripción

breve introducción

Aquí Insertar imagen Descripción

  • AzkabanWebServer: AzkabanWebServer Azkaban es el sistema principal gestor de la totalidad del flujo de trabajo, que es responsable de la autenticación de inicio de sesión de usuario, gestión de proyectos, el tiempo de ejecución del flujo de trabajo, flujo de trabajo de seguimiento del progreso de la implementación de una serie de tareas.
  • AzkabanExecutorServer: responsable del flujo de trabajo específico presentada, la implementación, para coordinar sus tareas son realizadas por la base de datos MySQL.
  • base de datos relacional (MySQL): La mayor parte del estado de flujo de ejecución de tienda, AzkabanWebServer y AzkabanExecutorServer necesidad de acceder a la base de datos.

Instalar en pc

Crear un directorio
en / opt / módulo de abajo para crear un directorio de Azkaban

mkdir azkaban

descompresión ejecutor

Extraer en / opt / módulo / Azkaban

tar -zxvf azkaban-executor-server-2.5.0.tar.gz -C /opt/module/azkaban

descomprimir servidor

tar -zxvf azkaban-web-server-2.5.0.tar.gz -C /opt/module/azkaban

descompresión secuencia de comandos SQL

tar -zxvf tar -zxvf azkaban-web-server-2.5.0.tar.gz  -C /opt/module/azkaban

sql base de datos de importación de instalación y mysql

Antes de la instalación mysql5.6 que se ha hecho y publicado un enlace aquí. Base de Datos de instalar
las siguientes operaciones de base de datos!

Aquí Insertar imagen Descripción

  1. 103 en la conexión remota 102 en la cuenta de root! Cumpliendo con un cliente (y la versión del servidor debe ser! Coherente)!
mysql -h hadoop102 -P3306 -uroot -p
  1. Después de conectar para ejecutar comandos en
source /opt/module/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql
  1. El dejar de fumar de manera que la transacción de base de datos está comprometida!

Configuración del entorno de Azkaban

almacén de claves generadas

  • Herramienta de claves Java es la herramienta de gestión de datos del certificado que permite a los usuarios gestionar sus propios pares pública / clave privada y certificados asociados.
  • -keystore especifican el nombre de base de datos clave y la ubicación (no habrá todo tipo de información del archivo generado .keystore)
  • -genkey (o -genkeypair) para generar el par de claves
  • -alias es el alias para la generación de claves especificado, si no hay defecto es mykey
  • clave especificada algoritmo RSA -keyalg / DSA por defecto es DSA
keytool -keystore keystore -alias jetty -genkey -keyalg RSA

Aquí Insertar imagen Descripción
Directorio en el que se realizará el comando anterior generará un archivo en el!
Aquí Insertar imagen Descripción
Mover el archivo al servidor web Azkaban directorio raíz

mv keystore /opt/module/azkaban/server/

configuración de sincronización de la hora

Si instala el sistema ya seleccionada la zona horaria de Shanghai, sólo es necesario abrir el servicio NTP para sincronizar el tiempo a otros servidores para llevar a cabo las tareas programadas crontab puede hacer una solicitud de sincronización a la máquina del tiempo de sincronización!
Cómo configurar el servicio de sincronización de hora NTP! Haga clic! !
Si usted tiene una buena sincronización de tiempo, las siguientes operaciones pueden ser ignorados!

sudo crontab -e

Aquí Insertar imagen Descripción

En un nodo de servidor buena para configurar la zona horaria
1) si el archivo de configuración de zona horaria Asia / Shanghai no existe en / usr / share / zoneinfo / directorio, es necesario generar una tzselect.

[zhengkw@hadoop103 azkaban]$ tzselect

Por favor, identificar un lugar para que las reglas de zona horaria se puede configurar
correctamente. Por favor, seleccione un continente o un océano. 1) África 2) América
3) La Antártida 4) Océano Ártico 5) Asia 6) Océano Atlántico 7)
Australia 8) Europa 9) Océano Índico 10) Océano Pacífico 11) Ninguno - Yo
quiero especificar la zona horaria usando el formato POSIX TZ .
选择5亚洲

#? 5

Por favor seleccione un país. 1) Afganistán 18) Israel
35) Palestina 2) Armenia 19) Japón 36)
Filipinas 3) Azerbayán 20) Jordan 37)
Qatar 4) Bahrain 21) Kazajstán 38) Rusia
5) Bangladesh 22) Corea (del Norte) 39) Arabia Saudita
6 ) Bután 23) Corea (del Sur) 40) Singapur 7)
Brunei 24) Kuwait 41) Sri Lanka 8)
Camboya 25) Kirguistán 42) Siria 9) china,
26) Laos 43) Taiwán 10) Chipre 27)
Líbano 44) Tayikistán 11) Timor Oriental 28)
Macao 45) Tailandia 12) Georgia 29)
Malasia 46) Turkmenistán 13) Hong Kong 30)
Mongolia 47) United Arab Emirates 14) India
31) Myanmar (Birmania) 48) Uzbekistán 15) Indonesia 32)
Nepal 49) Vietnam 16) Irán 33) Omán
50) Yemen 17) Irak 34) Pakistán

Seleccionar china China!

#? 9

Por favor, seleccione una de las siguientes regiones de zona horaria. 1) Beijing Tiempo
2) Tiempo de Xinjiang

Seleccione GMT

#? 1

La siguiente información ha sido dada:

    China
    Beijing Time

Por lo tanto se utilizarán TZ = 'Asia / Shanghai'. La hora local es ahora: Jue
Oct 18 de 16:24:23 CST 2018 Tiempo Universal es ahora: Mar Oct 18 de 08:24:23
GMT 2018. ¿La información anterior está bien? 1) Sí 2) No se

#? 1

Usted puede hacer este cambio permanente por sí mismo añadiendo la línea
TZ = 'Asia / Shanghai'; TZ de exportación en el fichero '.profile' en su directorio; a continuación, salir y entrar de nuevo.

Aquí es que el valor TZ nuevo, esta vez en la salida estándar de modo que usted
puede utilizar el directorio / usr / bin / tzselect mando en scripts de shell: Asia / Shanghai

2) copiar el archivo de zona horaria, la configuración de la zona horaria local del sistema de superposición

[zhengkw@hadoop103 azkaban]$ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3) Grupo de sincronización de tiempo (más de tres ventanas)

[zhengkw@hadoop103 azkaban]$ sudo date -s '2018-10-18 16:39:30'

ejecutor de configuración

Abra el directorio / opt / módulo / Azkaban / ejecutor / conf

#Azkaban
#时区
default.timezone.id=Asia/Shanghai
# Azkaban JobTypes Plugins
#jobtype 插件所在位置
azkaban.jobtype.plugin.dir=plugins/jobtypes

#Loader for projects
executor.global.properties=/opt/module/azkaban/executor/conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=hadoop102
mysql.database=azkaban
mysql.user=root
mysql.password=sa
mysql.numconnections=100

# Azkaban Executor settings
#最大线程数
executor.maxThreads=50
#端口号(如修改,请与web服务中一致)
executor.port=12321
#线程数
executor.flow.threads=30

Configuración del servidor

/opt/module/azkaban/server/conf/azkaban.properties Modificar

Aquí Insertar imagen DescripciónAquí Insertar imagen Descripción

configuración de la notificación por correo electrónico

Añadir los siguientes parámetros en /opt/module/azkaban/server/conf/azkaban.properties!

Aquí Insertar imagen Descripción

host envíe servidor de correo
contraseña a un código de autorización de terceros

Obtener código de autorización

Aquí Insertar imagen Descripción

Aquí Insertar imagen DescripciónAquí Insertar imagen Descripción

Modificar Azkaban-users.xml

directorio directorio de instalación del servidor web conf Azkaban, de acuerdo con el siguiente archivo de configuración modificado Azkaban-users.xml usuario administrador del aumento

<azkaban-users>
        <user username="azkaban" password="azkaban" roles="admin" groups="azkaban" />
        <user username="metrics" password="metrics" roles="metrics"/>
        <user username="zhengkw" password="qweasd" roles="admin,metrics" groups="azkaban" />

<role name="admin" permissions="ADMIN" />
        <role name="metrics" permissions="METRICS"/>
</azkaban-users>

Servicio de inicio

Inicio ejecutor

[zhengkw@hadoop103 executor]$ pwd
/opt/module/azkaban/executor
[zhengkw@hadoop103 executor]$ bin/azkaban-executor-start.sh

Inicio web

[zhengkw@hadoop103 server]$ pwd
/opt/module/azkaban/server
[zhengkw@hadoop103 server]$ bin/azkaban-web-start.sh

ver JPS

Aquí Insertar imagen Descripción

Abra un navegador de pruebas

Esta es la configuración de los servicios https, el uso de certificados de cifrado SSL para el cifrado para garantizar la seguridad de la transmisión de paquetes, ya que se genera por el certificado herramienta de claves, no se genera la autoridad, por lo que la primera vez que se emitirá una alarma cuando el aterrizaje!
Introduzca https: // hadoop103: 8443
Aquí Insertar imagen DescripciónHaga clic dentro para continuar con la visita

Entre en la página de inicio de sesión de usuario en la que los usuarios pueden configurar el
Aquí Insertar imagen Descripciónéxito de la visita

Cerrar Servicio

web

bin/azkaban-web-shutdown.sh 

exec

bin/azkaban-executor-shutdown.sh 

resumen

  • Nota La sincronización del tiempo con el fin de ver la información del registro!
  • Debe prestar atención a todo tipo de información de configuración de la conexión a la base de datos!
  • Los usuarios con el aterrizaje de az conf en el configure web / Azkaban-users.xml!
  • SSL es una forma alternativa para empezar, pero a cifrar de manera que es generalmente seguro!

Aquí Insertar imagen Descripción

hoyo encontrado

Aquí Insertar imagen Descripción

  • Debido a que el certificado es una herramienta de producción, se imprimirá en la consola de advertir a la información de nivel puede ser ignorado! Si desea proteger puede ser modificado en el nivel de log4j impresión!
  • A medida que el frente del ejecutor de errores de configuración MySQL causados ​​por no conectarse a la base de datos después de la puesta en marcha! Pero también causó el puerto ocupado!
    Aquí Insertar imagen Descripción

Utilice el comando para ver el puerto 12321 (ocupado cuando el puerto de inicio exec) ocupada por el proceso de

Aquí Insertar imagen Descripción

lsof -i:12321

Obligado a matar!
Aquí Insertar imagen Descripción

Publicado 37 artículos originales · ganado elogios 17 · vistas 1818

Supongo que te gusta

Origin blog.csdn.net/qq_37714755/article/details/104932240
Recomendado
Clasificación