WeCube is a set of open source, one-stop IT architecture management and operation and maintenance management tools. It is mainly used to simplify distributed architecture IT management and can be extended through plug-ins.
WeCube's design philosophy is basically consistent with IT system life cycle management. It can be elaborated through "six dimensions and one core".
One core: Continuously expand the functions of WeCube by registering new plug-ins, and realize plug-in registration and collaboration through the following five capabilities. For details on plug-in registration, see "Plug-in Registration".
Menu layout: WeCube provides front-end UI base and front-end development specifications, so that the front-end interaction of each plug-in can be seamlessly integrated into WeCube, thereby forming a unified platform.
Permission model: WeCube's permission model provides a "user-role-menu" three-level permission model and provides a unified authentication scheme. Data permissions and API permissions are controlled by the plug-in itself.
Process orchestration: WeCube has a built-in set of standard BPMN process engines, which can work together through customer-defined orchestration driver plug-ins to reduce manual intervention. For details on arrangement design, see "Arrangement Design".
Data model: The plug-in needs to register the data model it needs to provide to other plug-ins to the unified data model of WeCube, and then provide data access services through the standard CRUD interface.
System parameters: WeCube's global parameters, plug-in parameters that need to be modified by the customer, and plug-ins that need to be exposed to other plug-ins need to be registered in WeCube's system parameters.
Six dimensions: By defining menus in six dimensions and inserting plug-in functions into these menus in an organized manner, effective management of the entire life cycle of the IT system is achieved.
Tasks: Gather various types of tasks to form an integrated work platform. Work content is clearly visible and priorities are clear at a glance.
Design: Define models and specifications to form a standardized design language. Through standardized design and graphical display, expectations for distributed architecture are clearly and accurately depicted.
Execution: Through the execution of various automated and standardized tasks, the expected design of the distributed architecture becomes a reality, eliminating implementation differences caused by uneven personnel capabilities.
Monitoring: Define a full range of monitoring indicators, accurately reflect the current situation through continuous collection of monitoring data, and discover differences between reality and expectations.
Wisdom: Apply technologies such as machine learning to impart intelligent capabilities. Through mathematical modeling, we develop strategies to deal with discrepancies found in monitoring.
Adjustment: Continuously make dynamic adjustments by executing processing strategies to ultimately maintain the equivalence between reality and expectations, thereby making the system run stably.
WeCube's function menu design is consistent with the design concept. They are task, design, execution, monitoring, wisdom, adjustment, collaboration and system.
system
1. System parameters: Manage the system parameters required for the operation of WeCube Platform.
2. Resource management: Manage the resources provided by WeCube such as container host and instances running on the resources.
3. Permission management: Manage users, roles and menus of WeCube Platform, and control permissions at the menu level.
Collaboration
1. Plug-in registration: Select the plug-in package to upload. The plug-in package must declare the plug-in's dependencies, required menus, data models, system parameters, permission settings and running resources. After registration, it runs through the container and supports multiple instances. You can view the plug-in operation. log. Select the plug-in service and associate the attribute values of the CMDB data model through the parameters of the plug-in operation to form a registration.
2. Task orchestration: For example, design an orchestration for VPC creation. Including creating VPC, creating subnets, and creating VMs. Each execution node of the process requires an associated plug-in.
Design (provided by WeCMDB plug-in)
1. Planning and design: used to design the structure of the computer room.
2. Resource planning: used to instantiate a computer room, especially a three-center structure in two places.
3. Application architecture design: used to design the logical architecture of an application.
4. Application deployment design: used to actually deploy an application. Supports grayscale publishing.
5. CI data management/query: Enter individual data management and query through model graphics.
6. CI comprehensive query management/data comprehensive query: used to prepare multi-CI attribute reports. For example, which hosts are used by an application.
7. Enumeration data management/query: manage and query public enumerations and private enumerations.
implement
1. Arrangement task execution: After selecting the arrangement, the arrangement can be performed on the selected target object, and grayscale operations are supported. For example, restart 5 hosts of a certain resource set.
2. Material management (provided by Artifacts plug-in): manages application packages. Various files can be defined, and variable replacement rules caused by environmental differences can be configured, without manual processing.
3. Batch execution: configure comprehensive query and select targets. Perform tasks through specific plug-ins. For example, all hosts of an application perform a user permission change.
Task (provided by Service-Management plug-in)
1. Template management: service catalog management, service request template management;
2. Service management: service request management, task management;
Monitoring (provided by Open-Monitor plug-in)
1. Agent management: registration, start, stop;
2. Data management: Provide data collection configuration, data query and other functions;
3. Alarm management: Provides functions such as threshold configuration, log monitoring, and alarm triggering;
4. View management: Provides graphic configuration and customized view functions;
Adjustment (under planning)
Wisdom (under planning)