Skip to main content

Automation helper for Fluxnodes

Project description

Arcane Mage - Automated Fluxnode ArcaneOS Installation

Introduction

This is experimental software. There may be rough edges. If you spot something that is not quite right - please open an issue.

Arcane Mage is a suite of tools designed to ease the installation (and configuration) burden of installing a Fluxnode.

The following is available via the GUI, or CLI:

  • Fully automated A to Z Proxmox installs, including Secure Boot key enrollment.
  • Mutlicast config broadcast on LANs - fully automated installs, except Secure Boot Key enrollement.
  • USB stick creation for plug and play automated installs on bare metal

Configuration Options

See the examples directory for sample configurations.

Any option can be easily set via a yaml configuration file, for example, for Proxmox, start on VM creation, rate limits, etc.

It can also reboot direct into systemd-boot for systems that allow easy enrollment of keys (usually bare metal systems)

Installation

Install uv - https://docs.astral.sh/uv/getting-started/installation/

To run once without installing:

uvx --with arcane_mage python -m arcane_mage

Install as a tool:

uv tool install arcane-mage

To use the default config file fluxnodes.yaml in the directory you are in (this will run the GUI):

arcane-mage

Run the following for help:

arcane-mage --help

Hypervisor Setup - Proxmox Automation

MINIMUM PROXMOX VERSION: 8.4.1

In order to use Arcane Mage with Proxmox, the following needs to be set up on your hypervisor:

  • A user for the API
  • An API token (strongly recommended)
  • Nginx reverse proxy (strongly recommended)
  • Storage area for DISK images needs to allow import content type

To set up your Proxmox Instance behind an Nginx reverse proxy, follow these instructions, it doesn't take much effort:

https://pve.proxmox.com/wiki/Web_Interface_Via_Nginx_Proxy

If you don't reverse proxy the api, you can run into connection issues.

If using the default Proxmox settings, you will need to enable the import option under the Datacenter -> Storage endpoint (click edit):

Proxmox Storage Page

To set up your user, go to "Datacenter" on the Proxmox GUI and add a user:

Proxmox User Page

Next, add an api token for your user:

Proxmox Api Token

Finally, give BOTH your user and api token PVEAdmin permissions:

Proxmox Permissions

A note on using the startup_config parameter

Setting a startup config for a node requires elevated permissions that the PVEAdmin role does not cover. The easiest way to resolve this is to create a role, I.e. UserAdminSysModify with the Sys.Modify permission on the / path. You need to give this extra role to BOTH the api user and token.

A note on API authentication and key storage

Arcane mage uses your systems secure keyring to store api keys / passwords. For macOS this is keychain (tested) and windows Windows Credential Locker (untested)

If your system doesn't have a keyring backend, see here for details on resolving that.

You're now good to run Arcane Mage.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arcane_mage-1.0.0.tar.gz (431.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

arcane_mage-1.0.0-py3-none-any.whl (100.3 kB view details)

Uploaded Python 3

File details

Details for the file arcane_mage-1.0.0.tar.gz.

File metadata

  • Download URL: arcane_mage-1.0.0.tar.gz
  • Upload date:
  • Size: 431.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.3

File hashes

Hashes for arcane_mage-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e00aab172e90e04d5c685ca1be5d8e80d8589eb2ccadeb287d86a3971be355dd
MD5 5d23b66e58a5c4e84daac15953a50975
BLAKE2b-256 04d57fa4312a7185f784a1bea5818a3e39c214f879d123d387abaca0b73d2c8c

See more details on using hashes here.

File details

Details for the file arcane_mage-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for arcane_mage-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5e2f4bd85e2e32ddf3468b53b1ea09f062b86c6fc2c8fc438020e95caa4be4c
MD5 818f4f485e7f7f9162e2e9e490fe6bdf
BLAKE2b-256 fa9085a74cbb4d5ea7a98dbf7a47a843b7168a4725e35d51e2dd85bc8017353b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page