Operations 8 min read

How AutoAMS 2.0 Automates Server Asset Management with Django and Ansible

This article describes the design, architecture, and key features of AutoAMS 2.0, an automated asset management system built with Django, Bootstrap, MySQL, and Ansible, showing how it replaces manual Excel‑based tracking, collects server and network data without agents, and streamlines permission and location management for large‑scale operations.

Efficient Ops
Efficient Ops
Efficient Ops
How AutoAMS 2.0 Automates Server Asset Management with Django and Ansible

Introduction

After years of operations development, the author finally gave the work a proper name—DevOps—and created AutoAMS 2.0, an automated asset management system, to replace manual Excel‑based server statistics.

System Overview

AutoAMS 2.0 is built with

Django

+

Bootstrap

on the front end and

MySQL

as the database.

Django was chosen because the server information collection program relies on the automation tool

Ansible

, which itself is written in

Python

, making Django a natural fit.

Key Functions

1. System Home Page

Shows server reports, log alerts, system status, and recommended knowledge‑base articles.

2. Server Asset List

3. Hardware/Software Details & Change Log

4. Permission Management

System Architecture

1. Server Information Collection

The system calls the

ansible api

via

ssh

to actively obtain server data without installing any agents.

Collects information without affecting existing server environments.

Facilitates rapid upgrades and new feature releases for the asset system.

2. Network Device Collection

Uses SNMP to gather switch hardware details and automatically stores interface information.

3. Spare Parts Import

Supports bulk import of server, disk, and memory spare parts via Excel.

4. Permission Management

a. Custom permission list b. Add custom permission modifiers to each action c. Create groups and assign permissions d. Assign users to permission groups

5. Server Location Implementation

Provides a cost‑free method to locate servers in racks, avoiding expensive hardware upgrades.

Development History

The original asset system was built four years ago using a manual approach. After experiencing frequent server changes and data inconsistencies, the team evaluated OCSNG and GLPI but found them unsuitable, leading to the creation of AutoAMS 1.0 with CakePHP + Bootstrap + MySQL.

AutoAMS 1.0 suffered from agent compatibility issues and Perl‑based extensions.

Following a technical sharing session at a new company, the architecture was completely redesigned, resulting in the lightweight, reusable AutoAMS 2.0.

Conclusion

Future versions will add batch server configuration and Zabbix monitoring integration, and the project will be open‑sourced on GitHub to encourage community contributions.

AutomationoperationsdevopsDjangoAnsibleAsset Management
Efficient Ops
Written by

Efficient Ops

This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.

0 followers
Reader feedback

How this landed with the community

login 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.