Block-Level Distributed Virus Scanning for Cluster Boot Images
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In clustered computing, the process of creating and updating boot images for multiple compute nodes is cumbersome and resource-intensive, leading to wasted CPU resources, disk space, and bandwidth due to redundancy and the need for individual virus scanning of each node, even though they share a common operating environment.
Innovation Solution
Implementing a block-level distributed application management system where a root image is stored on one storage unit and leaf images, containing unique changes, are stored on separate units, allowing for efficient sharing of virus scanning results across nodes, thus reducing redundant operations and resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If virus scanning is performed on each compute node individually, then each node can detect viruses in its boot image, but CPU resources, disk space, and bandwidth are wasted due to redundant scanning of identical root image blocks
Solution Approach 1:
The boot image is segmented into two distinct parts: the root image (common to all nodes) and the leaf image (unique to each node). This segmentation allows the system to scan only the leaf image on each compute node while trusting the previously scanned root image, thereby eliminating redundant scanning of identical blocks and improving resource efficiency while maintaining virus detection capability.
Solution Approach 2:
The root image serves as a universal base for all compute nodes in the cluster. By scanning the root image once centrally and making its virus-free status universal knowledge across the cluster, the system avoids redundant scanning operations on each node while ensuring comprehensive virus detection coverage for all nodes that share this common root image.
2Ease of operation
If the entire boot image is copied to each compute node, then each node has a complete boot image, but significant bandwidth and disk space are consumed
Solution Approach 1:
The boot image distribution is segmented into common root image blocks (stored centrally and shared) and unique leaf image blocks (stored locally on each node). This allows compute nodes to obtain only the necessary unique portions while sharing common portions, dramatically reducing bandwidth consumption during distribution and disk space requirements on individual nodes.
Solution Approach 2:
The system merges the centrally-stored root image with locally-stored leaf images at runtime on each compute node. This merging provides each node with a complete functional boot image while avoiding the need to physically store and transmit redundant copies of identical root image blocks, thus reducing both bandwidth usage and disk space consumption.
3Adaptability or versatility
If boot images are updated on each compute node individually, then each node can be updated independently, but the update process is cumbersome and time-consuming
Solution Approach 1:
The update process is segmented into two parts: updating the central root image (which contains common blocks) and updating local leaf images (which contain node-specific blocks). When the root image is updated centrally, all compute nodes automatically benefit from the update without requiring individual update operations, significantly reducing update time while maintaining the ability to update leaf images independently if needed.
Solution Approach 2:
The central root image serves as a universal update target for all compute nodes. A single update operation on the root image propagates benefits to all nodes that use this root image, providing efficient bulk updates. Meanwhile, the system maintains adaptability by allowing individual leaf image updates when nodes require node-specific modifications, thus achieving both efficiency and independence.
Data Source
AI summary
Described herein is technology for, among other things virus scanning for block-level distributed application management. The technology involves storing blocks of a root image on a first storage unit and storing blocks of leaf images on respective second storage units. The leaf images include additional data blocks not previously contained in the root image and changes made by respective compute nodes to the blocks of the root image. The technology includes receiving a notification from one of the compute nodes that the root image has been scanned for viruses and providing the notification to other compute nodes.


