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-0.3.2.tar.gz (12.5 MB view details)

Uploaded Source

Built Distribution

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

arcane_mage-0.3.2-py3-none-any.whl (95.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for arcane_mage-0.3.2.tar.gz
Algorithm Hash digest
SHA256 fc0a70c832ae0280024077d4d603838a21036a543d0a977e86b2bf5aff5d6b2e
MD5 f0f0ecc1dc755a3e61a836a9300d4d3e
BLAKE2b-256 cf1e9cbd53203c79f9411f8c6231840653cb6257b8fefcf01bfb79b19b243629

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for arcane_mage-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fb4cff8e9c0de7227d10e5661897d25487b5f52726fad7862a946b238663c383
MD5 fc53e4fbc546eb6bb22c0681f51c87ce
BLAKE2b-256 a1a4b3930db787f89f6cb32df8564dbe17cfbab82468e44474e8a839711c1dca

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