etam.ipfs

IPFS

Fonctionnalités :

  • Génération automatique de Peering.Peers.
  • La configuration est appliquée via ipfs config en utilisant un module personnalisé. Prend en charge l'idempotence et génère des différences.
  • Permet de spécifier une adresse IP publique personnalisée, si vous êtes derrière un routeur.
  • Télécharge les binaires pour les mises à jour via la passerelle IPFS locale, si déjà installée.
  • Exécute ipfs repo gc en tant que service séparé.
  • Prend en charge x86_64 et aarch64.

Exigences

  • Le système cible utilise systemd.

Variables de rôle

  • ipfs_ansible_group : Groupe Ansible contenant les nœuds IPFS gérés. Par défaut : all.
  • ipfs_home_dir : par défaut /var/lib/ipfs
  • ipfs_version : (c'est évident)
  • ipfs_init_profile : Profil à appliquer lors de l'initialisation d'IPFS (voir Configurer le profil)
  • ipfs_gc_when : Quand exécuter ipfs repo gc. Temps systemd (voir man systemd.time).
  • ipfs_force_https_download : Forcer le téléchargement de l'archive binaire depuis https, même lorsque le service est en cours d'exécution. Par défaut : non.
  • ipfs_force_migration : Forcer l'exécution de ipfs repo migrate. Implique l'arrêt inconditionnel du service. Par défaut : non.
  • ipfs_swarm_port : 4001
  • ipfs_public_addresses : Adresses de swarm publiques. Par défaut :
    • /ip4/{{ ansible_default_ipv4['address'] }}/tcp/{{ ipfs_swarm_port }}
    • /ip4/{{ ansible_default_ipv4['address'] }}/udp/{{ ipfs_swarm_port }}/quic
    • /ip4/{{ ansible_default_ipv4['address'] }}/udp/{{ ipfs_swarm_port }}/quic-v1
    • /ip4/{{ ansible_default_ipv4['address'] }}/udp/{{ ipfs_swarm_port }}/quic-v1/webtransport
  • ipfs_private_addresses : Formatées comme ipfs_public_addresses. Utilisées pour la connexion directe entre les nœuds IPFS. Peut être utile lors de la connexion sur un LAN via VPN.
  • ipfs_config_extra : Configuration IPFS supplémentaire. La structure yaml est convertie en json et envoyée à ipfs config. La valeur par défaut est
    ipfs_config_extra:
      Gateway.PublicGateways:
        localhost: null
    
    Cela donne lieu à l'exécution
    ipfs config --json Gateway.PublicGateways '{"localhost": null}'
    
    laquelle provient de https://github.com/ipfs/kubo/blob/master/docs/config.md#implicit-defaults-of-gatewaypublicgateways

Dépendances

Aucune

Exemple de Playbook

Juste :

- hosts: ipfs
  roles: [ipfs]

Licence

GPL-3.0-or-later

Informations sur l'auteur

Adam "etam" Mizerski adam@mizerski.pl https://etam-software.eu

À propos du projet

Sets up IPFS nodes, fills "Peering.Peers" and contains custom ansible module that talks with "ipfs config".

Installer
ansible-galaxy install etam.ipfs
Licence
gpl-3.0
Téléchargements
117
Propriétaire
Doing a bit of programming, a bit of Linux sysadmin, a bit of openSUSE packaging, and most importantly enjoying free weekends.