Red de conocimiento informático - Material del sitio web - Cómo construir una plataforma de automatización de tiempo de ejecución escalable basada en Python

Cómo construir una plataforma de automatización de tiempo de ejecución escalable basada en Python

Django: un marco de aplicación web de código abierto escrito en Python, que utiliza el patrón de diseño de software MVC;

rpyc: una implementación en Python de RPC y herramientas informáticas distribuidas. Admite operaciones sincrónicas y asincrónicas, devoluciones de llamadas, etc.

saltstack, ansible, func: componentes básicos de control de procesos y gestión de configuración automatizada desarrollados en Python;

Mysql: un sistema de gestión de bases de datos relacionales muy popular.

Diseño de arquitectura de plataforma

1. Arquitectura de OMServer

Todos deberían estar familiarizados con esta arquitectura. La estructura de tres capas es también la arquitectura de plataforma operativa principal actual.

2. Descripción de la arquitectura

La plataforma OMServer es una arquitectura de tres capas, que consta de una capa de interacción WEB, una capa de computación distribuida y una capa de servicio de administración de clústeres.

1) La primera capa: la capa de interacción WEB, una arquitectura B/S típica, que es una plataforma interactiva para que operen los administradores y también es el núcleo de OMServer, desarrollado en base a Django

2), la segunda capa: capa de computación distribuida, proporciona un canal de conexión con el control principal, utiliza el protocolo de transmisión rpyc, el proceso de ejecución del protocolo es: parámetros del módulo front-end -> transmisión cifrada -&>.> cifrado transmisión -> ejecución de tarea -> devolver resultados Establecer->Descifrar salida.

3) La tercera capa: capa de servicio de administración de clústeres, integra los componentes de operación remota convencionales de Python (compatible con Saltstack, Anaible, Func), administra el extremo controlado (clúster de servidores comerciales) y puede administrar el extremo controlado ( clúster de servidores empresariales) de acuerdo con diferentes requisitos en el entorno IDC, la gestión multiubicación y multipunto del terminal de control principal puede mejorar la redundancia y la eficiencia de la ejecución. El módulo de operación del terminal de control principal se distingue por diferentes archivos Python, que son fáciles de mantener y pueden personalizar de manera flexible la lógica de operación y la expansión horizontal.