claudeandClaude Opus 5.5 fd4f3184d7 Publish sanitized P2Pool hashrate stats
Enable P2Pool's --data-api/--local-api and add a small stdlib-only sidecar
that copies an allowlist of numeric fields (node/sidechain hashrate,
connected miners, shares, network difficulty) to /p2pool/stats.json. Worker
IPs and wallet fragments in local/stratum are never served.

An Ingress adds that single path to the website host (www.eom.dev by
default), so the homepage can read it same-origin and reuse its TLS cert.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018STDcc5BaYxPMNA9S8Wycs
2026-11-08 02:36:23 +00:00
2026-07-07 10:43:07 -04:00
2026-07-07 10:43:07 -04:00
2026-07-07 10:43:07 -04:00
2026-07-07 10:43:07 -04:00

ansible-role-monero

Deploys a Monero node (monerod) and a P2Pool node to Kubernetes, in the monero namespace. Miners point xmrig at the P2Pool service on port 3333.

Role Variables

Required, from Vault:

  • monerod_user, monerod_password: monerod's RPC login. Stored in the monerod-rpc Secret and passed to both containers through an environment variable, so it doesn't show in the Deployment specs.
  • monero_p2pool_wallet_address: the address P2Pool pays out to.

Optional:

  • monero_p2pool_chain (default nano): main, mini or nano. Match it to your total hashrate; see the note in defaults/main.yml. Switching chains starts from zero shares on the new chain, and shares on the old one stop earning once they leave its PPLNS window.
  • monero_p2pool_addpeers (default []): extra P2Pool peers as host:port. They must be on the same chain.

Example Playbook

- hosts: alpha-control-plane
  become: true
  vars_files:
    - ../secrets.yaml
  roles:
    - role: ericomeehan.monero

License

MIT-0

S
Description
Deploys Monerod and P2Pool to Kubernetes
Readme
54 KiB