Operations 11 min read

Overview of the Octopus Automation Platform Architecture and Core Modules

The article introduces Octopus, the core automation service of 58 Group, detailing its overall architecture, the Octopus Agent lifecycle, communication mechanisms, management center capabilities, and key functional modules such as server information collection, command execution, deployment, permission control, and file transfer.

58 Tech
58 Tech
58 Tech
Overview of the Octopus Automation Platform Architecture and Core Modules

Octopus is a core automation service of the 58 Group that provides a foundation for higher‑level business operation automation, evolving since 2013 from simple deployment to comprehensive server management capabilities including Nginx configuration, permission control, remote command execution, and file transfer.

The system’s architecture consists of a central management console that obtains basic data from a CMDB, and an Octopus Agent deployed on each server, which is bound to the CMDB delivery process to ensure every server can be managed through Octopus.

The Agent startup performs several initialization steps: environment checks to verify compliance with CMDB standards, business‑environment initialization based on templates, dynamic module loading according to server type and business scenario, self‑upgrade via push notifications, and self‑monitoring that reports status and resource usage back to the management console.

Communication between the upper‑level operation system and servers is mediated by the Octopus API and the Agent, with Zookeeper serving as the registration center. Because Zookeeper’s watch mechanism is one‑time, a distributed queue was introduced to reliably handle high‑concurrency tasks and preserve task order.

The Octopus Management Center exposes all external capabilities through APIs and includes modules for API handling, authorization management (whitelists and tokens), Agent management (status, resource usage, remote restart/upgrade/offline), plugin management (upload, strategy‑based distribution, hot‑swap), configuration management (dynamic updates), and statistics management (coverage, alive rate, version distribution).

The modular Octopus Agent comprises several functional components: a server‑information collection module that syncs hardware and OS data to the CMDB, a command execution module supporting Shell, Python, and Jar scripts with user selection, deployment modules for services such as FTP, Tomcat, Nginx, and SCF, a permission module for real‑time server‑access control, a file/directory monitoring module, and a peer‑to‑peer file transfer module with synchronous/asynchronous modes, size‑based MD5 verification, bidirectional rate limiting, and an HTTP server pool for high‑frequency transfers.

Overall, Octopus runs on tens of thousands of nodes, providing a reliable foundation for automated operations, and will continue to be optimized and expanded with community involvement.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

AutomationOperationsDeploymentAgentAPIserver management
58 Tech
Written by

58 Tech

Official tech channel of 58, a platform for tech innovation, sharing, and communication.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.