Skip to content

noahand

English | 中文版

noahand (Noah) is a lightweight Linux host agent for centralized cloud-server management. It runs as a daemon with an Nginx-style master/worker process model — the master process (Eagle) supervises and restarts the worker process (Zeus), which executes tasks and loads plugins.

Features

  • Master/Worker supervision — Eagle forks Zeus, restarts it on crash, and forwards SIGTERM / SIGINT / SIGHUP for graceful shutdown and reload
  • Heartbeat reporting — periodically reports host info (IP, hostname, arch, OS, kernel) to a central server at randomized intervals to avoid thundering herds
  • Local admin API — a chi-based HTTP interface on 127.0.0.1:403 for health checks, runtime config, host info, and self-update
  • Prometheus metrics — exposed at /internal/noah/metrics
  • Plugin system — extensible via Go plugins (.so), loaded dynamically at runtime
  • Service integrationnoah init generates a systemd unit file (Linux); launchd (macOS) is also supported

Requirements

  • Go 1.26+
  • Linux (primary target; macOS supported for development)
  • Root privileges to run the agent

Quick Start

# Clone the repository
git clone https://github.com/airdb/noahand.git
cd noahand

# Build plugins and the noah binary (requires go-task)
task build-plugin build

# Run the agent (requires root)
sudo ./output/noah run

CLI Commands

Command Description
noah run Start the agent (Eagle/Zeus supervisor, admin API, plugin loop)
noah init Generate a systemd service file
noah plugin Run in plugin mode (load and execute plugins once)
noah update Self-update (stub, not yet implemented)

To install as a system service:

noah init
sudo systemctl daemon-reload
sudo systemctl start noah
sudo systemctl enable noah
sudo journalctl -u noah -f   # view logs

Documentation

Detailed documentation (in Chinese) lives in docs/zh-cn/:

Contributing

Issues and pull requests are welcome: GitHub Issues

License

Apache License 2.0

About

Noah 是一套服务器统一agent管理框架,核心宗旨是为现代集群操作系统提升最低层的技术保障。

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages