Vue normale

À partir d’avant-hierFlux principal

proxmox-offline-mirror : créer un miroir local pour Debian et Ubuntu

Par :fred
13 décembre 2024 à 15:40

Un mémo sur comment utiliser la commande proxmox-offline-mirror pour créer un miroir local pour les distributions Debian et Ubuntu.

Pour la création d’un miroir local Pour Proxmox, voir cet article : https://memo-linux.com/proxmox-offline-mirror-creer-un-miroir-local-pour-proxmox/

Créer un miroir local Debian

Pour la création d’un miroir local pour la distribution Debian, rien de compliqué car c’est intégré à la commande proxmox-offline-mirror :

proxmox-offline-mirror setup
  • Select Action: dd new mirror entry
  • Guided Setup ([yes]): yes
  • Select distro to mirror : 4
  • Select release : 0 (pour Bookworm)
  • Select repository variant :
    • 0) Main repository
    • 1) Security
    • 2) Updates
    • 3) Backports
    • 4) Debug Information
    • Dans mon cas, j’ai éxécuté la commande proxmox-offline-mirror setup 3 fois pour avoir les 3 miroirs : Main repository, Security et Updates.

  • Enter repository components : main contrib (les dépots non-free c’est à vous de choisir)
  • Configure filters for Debian mirror bookworm / main : – (pas de filtres dans mon cas)
  • Enter mirror ID :
    • debian_bookworm_main
    • debian_bookworm_security
    • debian_bookworm_updates
  • Enter (absolute) base path where mirrored repositories will be stored : /srv/mirrors/debian/ (à adapter)
  • Should already mirrored files be re-verified when updating the mirror? : yes
  • Should newly written files be written using FSYNC to ensure crash-consistency? : yes
  • Pour finir, Select Action : Quit
  • Pour automatiser la création et la mise à jour du miroir Debian, voici le script :
nano /usr/local/bin/sync-debian.sh
#!/bin/bash
export ALL_PROXY="http://proxyx.local:PORT"

mirror_dir="/srv/mirrors/debian"
symlink_dir="/srv/mirrors/debian/latest"

proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'debian_bookworm_main'
proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'debian_bookworm_updates'
proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'debian_bookworm_security'

if [ $? -eq 0 ]; then
    for dir in "${mirror_dir}"/*; do
        if [ -d "$dir" ]; then
            dir_name=$(basename "$dir")
            if [[ "$dir_name" != "latest" && "$dir_name" != "lost+found" ]]; then
                latest_subdir=$(ls -td "$dir"/*/ | head -n 1)
                if [ -n "$latest_subdir" ]; then
                    latest_subdir_name=$(basename "$latest_subdir")
                    if [ -e "${symlink_dir}/${dir_name}" ]; then
                        rm -f "${symlink_dir}/${dir_name}"
                    fi
                    ln -s "$latest_subdir" "${symlink_dir}/${dir_name}"
                fi
            fi
        fi
    done
    echo "Done on ${symlink_dir}."
else
    echo "Error."
fi
  • Rendre le scripte éxécutable :
  • chmod +x /usr/local/bin/sync-debian.sh
  • Exécuter une première fois le script afin de créer le miroir ocal :
  • sync-debian.sh
  • Ensuite, ajouter une tache cron pour l’éxécuter péridioquement :
  • crontab -e
    0 2 * * * /usr/local/bin/sync-debian.sh

    Créer un miroir local Ubuntu

    A la date de publication de l’article, la commande proxmox-offline-mirror setup n’est pas opérationnelle pour créer un miroir local pour la distribution Ubuntu.

    Ici, je choisis la distribution Ubuntu 24.04 LTS Noble.

    • Préparation du miroir Ubuntu Noble :
      • Création des répertoires pour le miroir :
      mkdir -p /srv/mirrors/ubuntu/noble/{ubuntu_noble_main,ubuntu_noble_updates,ubuntu_noble_security,latest}
      mkdir -p /srv/mirrors/ubuntu/noble/.pool
    • Téléchargement de la clé ubuntu :
    gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys F6ECB3762474EDA9D21B7022871920D1991BC93C
    gpg --export F6ECB3762474EDA9D21B7022871920D1991BC93C | tee /usr/share/keyrings/ubuntu-archive-keyring.gpg > /dev/null
  • Ajout du miroir dans le fichier de configuration /etc/proxmox-offline-mirror.cfg à la suite des autres miroirs :
  • nano /etc/proxmox-offline-mirror.cfg
    mirror: ubuntu_noble_main
            architectures amd64
            architectures all
            base-dir /srv/mirrors/ubuntu/noble
            ignore-errors false
            key-path /usr/share/keyrings/ubuntu-archive-keyring.gpg
            repository deb https://fr.archive.ubuntu.com/ubuntu noble main restricted universe multiverse
            sync true
            verify true
    
    mirror: ubuntu_noble_updates
            architectures amd64
            architectures all
            base-dir /srv/mirrors/ubuntu/noble
            ignore-errors false
            key-path /usr/share/keyrings/ubuntu-archive-keyring.gpg
            repository deb https://fr.archive.ubuntu.com/ubuntu noble-updates main restricted universe multiverse
            sync true
            verify true
    
    mirror: ubuntu_noble_security
            architectures amd64
            architectures all
            base-dir /srv/mirrors/ubuntu/noble
            ignore-errors false
            key-path /usr/share/keyrings/ubuntu-archive-keyring.gpg
            repository deb https://fr.archive.ubuntu.com/ubuntu noble-security main restricted universe multiverse
            sync true
            verify true
    
  • Création du script d’automatisation de création et de mise à jour du miroir :
  • nano /usr/local/bin/sync-ubuntu.sh
    #!/bin/bash
    
    export ALL_PROXY="http://proxy.local:PORT"
    
    mirror_dir="/srv/mirrors/ubuntu/noble"
    symlink_dir="/srv/mirrors/ubuntu/noble/latest"
    
    proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'ubuntu_noble_main'
    proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'ubuntu_noble_updates'
    proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'ubuntu_noble_security'
    
    if [ $? -eq 0 ]; then
        for dir in "${mirror_dir}"/*; do
            if [ -d "$dir" ]; then
                dir_name=$(basename "$dir")
                if [[ "$dir_name" != "latest" && "$dir_name" != "lost+found" ]]; then
                    latest_subdir=$(ls -td "$dir"/*/ | head -n 1)
                    if [ -n "$latest_subdir" ]; then
                        latest_subdir_name=$(basename "$latest_subdir")
                        if [ -e "${symlink_dir}/${dir_name}" ]; then
                            rm -f "${symlink_dir}/${dir_name}"
                        fi
                        ln -s "$latest_subdir" "${symlink_dir}/${dir_name}"
                    fi
                fi
            fi
        done
        echo "Done on ${symlink_dir}."
    else
        echo "Error."
    fi
    
  • Rendre le script exécutable :
  • chmod +x /usr/local/bin/sync-ubuntu.sh
  • Exécuter le script pour créer le miroir local :
  • sync-ubuntu.sh
  • Changer les dépots dans le sources.list sous Ubuntu server 24.04 :
    Pour information, sous Ubuntu server 24.04 LTS les dépôts ne se renseignent plus dans le fichier : /etc/apt/sources.list.
    cat /etc/apt/sources.list
    # Ubuntu sources have moved to /etc/apt/sources.list.d/ubuntu.sources
    • Modifier les URLs des dépôts :(dans mon cas le nom de domaine de mon serveur web est mirrors.local) :
    nano /etc/apt/sources.list.d/ubuntu.sources
    Types: deb
    URIs: http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_main
    Suites: noble
    Components: main restricted universe multiverse
    Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
    
    Types: deb
    URIs: http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_security
    Suites: noble-security
    Components: main restricted universe multiverse
    Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
    
    Types: deb
    URIs: http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_updates
    Suites: noble-updates
    Components: main universe restricted multiverse
    Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
    
  • Test d’update :
  • apt update
    Hit:1 http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_main noble InRelease
    Hit:2 http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_security noble-security InRelease
    Hit:3 http://mirrors.local/ubuntu/noble/latest/ubuntu_noble_updates noble-updates InRelease
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    89 packages can be upgraded. Run 'apt list --upgradable' to see them
    
  • Pour finir, ajouter une tache cron pour l’éxécuter péridioquement :
  • crontab -e
    0 3 * * * /usr/local/bin/sync-ubuntu.sh

    Mini PC AM06 Pro Ryzen 7 et 32Go DDR4 : Le hardware parfait pour la domotique sous Proxmox

    11 décembre 2024 à 05:00
    test-mini-pc-nipogi-am06-pro-ryzen7-amd-domotique-proxmox-home-assistant

    Nous l’avons vu avec de nombreux tests de mini PC ces derniers mois à la rédaction, opter pour un NUC en vu de le transformer en hyperviseur Proxmox et y héberger l’ensemble des systèmes qui composent l’éco-système domotique de la maison est un excellent choix. Mais ce n’est pas le choix qui manque avec autant […]

    Lire l'article complet: Mini PC AM06 Pro Ryzen 7 et 32Go DDR4 : Le hardware parfait pour la domotique sous Proxmox sur le magazine de la maison connectée Domo-blog.fr.

    proxmox-offline-mirror : créer un miroir local pour Proxmox

    Par :fred
    10 décembre 2024 à 12:21

    Un mémo sur comment créer un serveur miroir local pour Proxmox avec proxmox-offline-mirror sous Debian.

    Cet article fait suite à https://memo-linux.com/creer-un-serveur-miroir-local-sous-debian.

    Installer proxmox-offline-mirror sur Debian via apt

    • Ajouter le dépôt suivant :
    echo "deb http://download.proxmox.com/debian/pbs-client bookworm main" > /etc/apt/sources.list.d/pbs-client.list
  • Ajouter la clé du dépôt :
  • wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg   -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
  • Mettre à jour les dépôts :
  • apt update
  • Installer proxmox-offline-mirror :
  • apt install proxmox-offline-mirror

    Configurer proxmox-offline-mirror pour le dépôt Proxmox

    • Exécuter la commande :
      proxmox-offline-mirror setup
      • Pour ajouter un nouveau miroir, choisir 0 :
      • Pour être guidé, répondre « yes » :
      • Choisir le dépôt Proxmox ve :
      • Choisir la version Bookworm :
      • Choisir la variante « No-Subscription repository » :
      • Pour la question suivante « Should missing Debian mirrors for the selected product be auto-added » ayant déjà mon propre miroir local Debian, je répond non :
      • Pour l’ID laisser pve_bookworm_no_subscription :
      • Entrer le chemin complet du répertoire pour le dépôt, dans mon cas /srv/mirrors/proxmox/ :
      • Revérifier ou pas les dépôts une fois mis à jour, dans mon cas je répond : yes
      • En cas de plantage, utiliser ou pas FSYNC, je répond : yes
      • Retour au menu, choisir 3 pour quitter :
      • Une fois que la configuration est terminée, éxécuter la commande :
        proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'pve_bookworm_no_subscription'
        • Si l’accès au dépôt se fait via un proxy, exporter la variable d’environnement PROXY_ALL avant l’éxécution de la synchro:
        export PROXY_ALL="http://proxy.domaine.tld:PORT/"
        

    Ajouter un nouveau dépôt

    Ici le dépôt ajouté sera celui de Ceph.

    • Exécuter la commande :
    proxmox-offline-mirror setup
  • Choisir : Add new mirror entry
  • Guided Setup ([yes]): yes
  • Select distro to mirror : Proxmox Ceph
  • Select release : Bookworm
  • Select Ceph release : Reef (18.x)
  • Select repository variant : No-Subscription repository
  • Enter mirror ID : ceph_reef_bookworm
  • Enter (absolute) base path where mirrored repositories will be stored : /srv/mirrors/proxmox/ (dans mon cas)
  • Should already mirrored files be re-verified when updating the mirror? : yes
  • Should newly written files be written using FSYNC to ensure crash-consistency? :yes
  • Config entry ‘ceph_reef_bookworm’ added
  • Pour finir :Quit
  • Une fois le dépôt ajouté, créer le snapshot du miroir :

    proxmox-offline-mirror mirror snapshot create --config '/etc/proxmox-offline-mirror.cfg' 'ceph_reef_bookworm'

    Configurer le serveur web

    Pour rappel, dans mon cas le serveur web est déjà installé. J’ajoute simplement une directive location dans mon fichiers de conf.
    Ce qui donne :

    nano /etc/nginx/sites-available/mirrors
    server {
        listen 80;
        server_name mirrors.local;
    
        root /srv/mirrors;
        index index.html;
    
        location /debian/ {
            alias /srv/mirrors/debian/;
            autoindex on;
        }
    
        location /ubuntu/ {
            alias /srv/mirrors/ubuntu/;
            autoindex on;
        }
    
       location /proxmox/ {
            alias /srv/mirrors/proxmox/;
            autoindex on;
        }
    
        }
    systemctl reload nginx

    Créer un chemin statique pour les dépôts Proxmox et Ceph

    De base, la commande proxmox-offline-mirror créé pour chaque dépôt un snapshot daté du jour.
    Un problèmes majeur :

    • Sur chaque noeud Proxmox faudra changer le dépôt comme suit :
    deb http://mirrors.local/proxmox/pve_bookworm_no_subscription/2024-12-10T10:20:21Z bookworm pve-no-subscription

    Pour obtenir qu’un seul référentiel pour le dépôt :

    • Créer le dossier :
    mkdir -p /srv/mirrors/proxmox/latest
  • Créer le script suivant :
  • nano /usr/local/bin/sync-proxmox.sh
    #!/bin/bash
    export ALL_PROXY="http://proxy.local:PORT"
    mirror_dir="/srv/mirrors/proxmox"
    symlink_dir="/srv/mirrors/proxmox/latest"
    proxmox-offline-mirror mirror snapshot create-all
    if [ $? -eq 0 ]; then
        for dir in "${mirror_dir}"/*; do
            if [ -d "$dir" ]; then
                dir_name=$(basename "$dir")
                if [[ "$dir_name" != "latest" && "$dir_name" != "lost+found" ]]; then
                    latest_subdir=$(ls -td "$dir"/*/ | head -n 1)
                    if [ -n "$latest_subdir" ]; then
                        latest_subdir_name=$(basename "$latest_subdir")
                        if [ -e "${symlink_dir}/${dir_name}" ]; then
                            rm -f "${symlink_dir}/${dir_name}"
                        fi
                        ln -s "$latest_subdir" "${symlink_dir}/${dir_name}"
                    fi
                fi
            fi
        done
        echo "Done on ${symlink_dir}."
    else
        echo "Error."
    fi
    

    Créer une tache cron pour synchroniser le miroir de Proxmox

    • Créer une tache cron :
    crontab -e
    0 4 * * * /usr/local/bin/sync-proxmox.sh
    

    Changer les dépôts sur les noeuds Proxmox

    • Editer vos fichiers sources.list et changer les url par celle de votre miroir local :
    deb http://mirrors.local/debian bookworm main contrib
    deb http://mirrors.local/debian bookworm-updates main contrib
    deb http://mirrors.local/debian bookworm-security main contrib
    
    deb http://mirrors.local/proxmox/latest/pve_bookworm_no_subscription bookworm pve-no-subscription
    deb http://mirrors.local/proxmox/latest/ceph_reef_bookworm no-subscription
    
  • Test de l’update :
  • apt update

    Nettoyage des snapshots Proxmox et Ceph

    • Créer le script :
    nano /url/local/bin/clean_proxmox_snapshots.sh
    #!/bin/bash
    
    # Variables
    MIRRORS=(
        "/srv/mirrors/proxmox/pve_bookworm_no_subscription"
        "/srv/mirrors/proxmox/ceph_reef_bookworm"
    )
    MAX_AGE=7  # Durée limite (en jours)
    
    # Nettoyage pour chaque miroir
    for MIRROR_PATH in "${MIRRORS[@]}"; do
        echo "Traitement du miroir : $MIRROR_PATH"
    
        # Nettoyage des snapshots anciens
        SNAPSHOTS=$(proxmox-offline-mirror mirror snapshot list --mirror "$MIRROR_PATH" --format json | \
        jq -r ".[] | select(.age > $MAX_AGE) | .name")
    
        if [[ -z "$SNAPSHOTS" ]]; then
            echo "Aucun snapshot à supprimer pour le miroir : $MIRROR_PATH"
        else
            echo "Suppression des snapshots suivants pour $MIRROR_PATH :"
            echo "$SNAPSHOTS"
    
            for SNAPSHOT in $SNAPSHOTS; do
                proxmox-offline-mirror mirror snapshot remove --mirror "$MIRROR_PATH" --snapshot "$SNAPSHOT"
                echo "Snapshot supprimé : $SNAPSHOT"
            done
    
            # Garbage collection
            echo "Exécution de garbage collection (GC) pour le miroir : $MIRROR_PATH"
            proxmox-offline-mirror mirror gc --mirror "$MIRROR_PATH"
            echo "Garbage collection terminée pour $MIRROR_PATH."
        fi
    
        echo "-------------------------------------------"
    done
    
    echo "Nettoyage terminé pour tous les miroirs."
    
    
  • Rendre le script exécutable :
  • chmod +x /url/local/bin/clean_proxmox_snapshots.sh
  • Créer une tâche cron :
  • crontabe -e
    0 0 * * * /usr/local/bin/clean_proxmox_snapshots.sh

    Ressources

    Comment activer l’USB Passthrough pour Home Assistant sous Proxmox ?

    9 décembre 2024 à 05:00
    guide-proxmox-activer-usb-passthrough-domotique-assigner-port

    Vous avez fait vos premiers pas dans la virtualisation avec Proxmox, mais ce monde virtuel, non moins bien réel et concret est encore un peu étranger pour vous. Pas de panique, nous avons toute une série de guides pour vous sur le thème pour vous accompagner au mieux dans la prise en main de Proxmox […]

    Lire l'article complet: Comment activer l’USB Passthrough pour Home Assistant sous Proxmox ? sur le magazine de la maison connectée Domo-blog.fr.

    Créer un serveur miroir local sous Debian

    Par :fred
    28 novembre 2024 à 15:59

    Un mémo sur comment créer un serveur miroir local sous Debian.

    Pour ce tuto, je ne vais pas utiliser apt-mirroir ni debmirror mais simplement la commande lftp et comme serveur web Nginx.

    De plus, mon miroir local sera dédié pour les distributions et en versions stables de Debian, Ubuntu.

    Alors pourquoi lftp et non rsync ? car tout simplemement le proxy local n’accepte que les ports 80, 443 et 21 en sortie.

    Préparer l’environnement

    • Mettre à jour le système :
    apt update && apt full-upgrade -y
  • Installer les outils nécessaires :
  • apt install lftp nginx -y
  • Créer des répertoires pour stocker les miroirs :
  • mkdir -p /srv/mirrors/{debian,ubuntu}
  • Définir les permissions :
  • chown -R www-data:www-data /srv/mirrors
    chmod -R 755 /srv/mirrors
    

    Synchroniser les miroirs Debian et Ubuntu

    • Miroir Debian :
      • Créer le script suivant pour synchroniser Debian :
      nano /usr/local/bin/sync-debian.sh
    • Le contenu du script :
    #!/bin/bash
    
    # Variables
    BASE_URL_DEBIAN="http://deb.debian.org/debian"
    BASE_URL_SECURITY="https://security.debian.org/debian-security"
    LOCAL_DIR="/srv/mirrors/debian"
    SECTIONS=("bookworm" "bookworm-updates" "bookworm-security")
    
    # Proxy configuration
    export http_proxy="http://monproxy.local:8080"
    export https_proxy="http://monproxy.local:8080:"
    
    # Options pour lftp
    LFTP_OPTS="mirror --parallel=4 --verbose=2 --delete"
    
    # Boucle sur les sections principales (bookworm, bookworm-updates)
    for SECTION in "${SECTIONS[@]}"; do
        if [ "$SECTION" == "bookworm-security" ]; then
            # Pour le dépôt de sécurité, utiliser une URL différente
            echo "Synchronisation de $SECTION..."
            lftp -c "$LFTP_OPTS $BASE_URL_SECURITY/dists/bookworm-security $LOCAL_DIR/dists/bookworm-security"
        else
            # Pour les autres sections, utiliser l'URL Debian principale
            echo "Synchronisation de $SECTION..."
            lftp -c "$LFTP_OPTS $BASE_URL_DEBIAN/dists/$SECTION $LOCAL_DIR/dists/$SECTION"
        fi
    done
    
    echo "Synchronisation terminée."
    
    
  • Donner les permissions d’exécution au script :
  • chmod +x /usr/local/bin/sync-debian.sh
  • Miroir Ubuntu :
    • Créer le script suivant pour synchroniser Ubuntu :
    nano /usr/local/bin/sync-ubuntu.sh
  • Le contenu du script :
  • #!/bin/bash
    
    # Variables
    BASE_URL_UBUNTU="http://archive.ubuntu.com/ubuntu"
    BASE_URL_UBUNTU_SECURITY="http://security.ubuntu.com/ubuntu"
    LOCAL_DIR="/srv/mirrors/ubuntu"
    SECTIONS=("noble" "noble-updates" "noble-security")
    
    # Proxy configuration
    export http_proxy="http://monproxy.local:8080"
    export https_proxy="http://monproxy.local:8080"
    
    # Options pour lftp
    LFTP_OPTS="mirror --parallel=4 --verbose=2 --delete"
    
    # Boucle sur les sections principales (noble, noble-updates)
    for SECTION in "${SECTIONS[@]}"; do
        if [ "$SECTION" == "noble-security" ]; then
            # Pour le dépôt de sécurité, utiliser une URL différente
            echo "Synchronisation de $SECTION..."
            lftp -c "$LFTP_OPTS $BASE_URL_UBUNTU_SECURITY/dists/noble-security $LOCAL_DIR/dists/noble-security"
        else
            # Pour les autres sections, utiliser l'URL Ubuntu principale
            echo "Synchronisation de $SECTION..."
            lftp -c "$LFTP_OPTS $BASE_URL_UBUNTU/dists/$SECTION $LOCAL_DIR/dists/$SECTION"
        fi
    done
    
    echo "Synchronisation terminée."
    
  • Donner les permissions d’exécution au script :
  • chmod +x /usr/local/bin/sync-ubuntu.sh

    Planifier la synchronisation automatique

  • Configurer les tâches avec cron pour automatiser les synchronisations :
  • crontab -e
  • Ajouter les lignes suivantes :
  • 0 2 * * * /usr/local/bin/sync-debian.sh
    0 3 * * * /usr/local/bin/sync-ubuntu.sh
    

    Configurer le serveur web

  • Créer un fichier de configuration Nginx :
  • nano /etc/nginx/sites-available/mirrors
  • Ajouter la configuration suivante :
  • server {
        listen 80;
        server_name mirrors.local;
    
        root /srv/mirrors;
        index index.html;
    
        location /debian/ {
            alias /srv/mirrors/debian/;
            autoindex on;
        }
    
        location /ubuntu/ {
            alias /srv/mirrors/ubuntu/;
            autoindex on;
        }
    
        }
    
  • Activer la configuration :
  • ln -s /etc/nginx/sites-available/mirrors /etc/nginx/sites-enabled/
  • tester la configuration :
  • nginx -t
  • Recharger la configuration de Nginx :
  • systemctl reload nginx
  • Tester l’accès au serveur web (exemple ici avec le miroir local pour Proxmox) :
  • Modification des fichiers sources.list des clients

    Il ne reste que la modification des fichiers sources.list sur l’ensemble des serveurs.
    Pour ce faire, modifier l’url par l’IP du serveur miroir local pour tous les dépôts.

    Afin de déployer les modifcations de chaque serveur, je vous propose d’utiliser Ansible :

    ansible-playbook -i inventory.yml update_sources_grouped.yml

    Les playbooks Ansible sont disponible ici -> https://github.com/freddL/playbook_add_mirror_local/

    Comment installer Proxmox sur un NAS Terramaster ? Le guide complet

    14 octobre 2024 à 04:00
    guide-proxmox-nas-terrmaster-virtualisation-transformation-nas-serveur

    Nous avons déjà vu plusieurs façons différentes de déployer la virtualisation Proxmox dans la maison connectée. Il faut dire que Proxmox est d’une grande souplesse. Basé sur Debian, Proxmox peut s’installer un peu partout. Un vieux laptop recyclé en serveur, un NUC, un Raspberry Pi 5… Et quid du NAS ? Et bien, c’est ce […]

    Lire l'article complet: Comment installer Proxmox sur un NAS Terramaster ? Le guide complet sur le magazine de la maison connectée Domo-blog.fr.

    Proxmox 8 cluster HA + Ceph

    Par :fred
    12 octobre 2024 à 10:06

    Un mémo sur la mise en place d’un cluster en haute disponibilité d’hyperviseurs Proxmox avec un stockage distribuée et redondant Ceph. Cet article traite uniquement de la mise en cluster des noeuds Proxmox ainsi que l’installation et de la configuration de Ceph.

    Configuration Réseau des noeuds Proxmox

    Chaque réseau sera cablé en topologie MESH et les interfaces réseaux créés dans Proxmox seront des aggrégations en mode Broadcast.
    Pour plus d’infos voir cet article : https://memo-linux.com/proxmox-creer-un-cluster-sur-un-reseau-prive-sans-switch/

    • Adresse IP public des noeuds Proxmox :
      • pve01 : 10.x.x.1
      • pve01 : 10.x.x.2
      • pve01 : 10.x.x.3
    • Réseau Corosync (cluster Proxmox) : 192.168.254.0/24
      • pve01 : 192.168.254.1
      • pve02 : 192.168.254.2
      • pve03 : 192.168.254.3
    • Réseau Ceph :
      • Ceph Public 192.168.252.0/24
        • pve01 : 192.168.252.1
        • pve02 : 192.168.252.2
        • pve03 : 192.168.252.3
      • Ceph Cluster 192.168.253.0/24
        • pve01 : 192.168.253.1
        • pve02 : 192.168.253.2
        • pve03 : 192.168.253.3

    Mise en cluster des noeuds Proxmox

    Avant la mise en cluster, il faut s’assurer absolument que chaque noeud soit à l’heure et synchronisé sur un serveur NTP.

    chronyc tracking

    • Initialisation du cluster sur un noeud aux choix :
    pvecm create nom_cluster --link0 192.168.254.1
  • Joindre les autres noeuds Proxmox au cluster :
    • Sur pve02 :
    pvecm add 10.x.x.1 --link0 192.168.254.2
  • Sur pve03 :
  • pvecm add 10.x.x.1 --link0 192.168.254.3
  • Via l’interface web, il est possible de voir le statut du cluster ainsi que l’ensemble des noeuds Proxmox :
  • Installation de Ceph

    L’installation et la configuration du Ceph sera réalisée via l’interface web de Proxmox.

    • Sélectionner un noeud, dans le menu cliquer sur Ceph puis cliquer sur « Install Ceph » :
    • Une nouvelle fenêtre s’ouvre, sélectionner la dernière version de Ceph (Reef) et le dépôt No-Subscription puis cliquer sur « Start reef installation » :
    • Répondre « Y » puis la touche « Enter » du clavier :
    • Une fois l’installation terminée, cliquer sur « Next » :
    • Configuration réseau du cluster de Ceph :
    • Sélectionner les adresses IP configurées pour chaque réseau Public et Cluster du Ceph :
    • Installation et configuration du Ceph terminée :

    Cependant, il faut refaire l’étape d’installation du Ceph sur les autres noeuds (sans la partie réseau).

    Mise en place du Ceph sur le cluster Proxmox

    • Sur chaque noeud, créer le Ceph Monitors :
      • Cliquer dans le menu Ceph, puis cliquer sur Monitor :
      • Cliquer cur « Create » :
      • Sélectionner le noeud :
      • Répéter l’opération sur l’autre noeud afin d’avoir l’ensemble des monitors :
    • Sur chaque noeud, créer le Ceph Manager :
      • Toujours dans le menu Monitor, au niveau de Manager cliquer sur « Create » :
      • Sélectioner le noeud :
      • Répéter l’opération sur l’autre noeud afin d’avoir tous les Managers (à savoir, un seul est actif) :
    • Création des OSD :
      • Pré-requis, il faut que les disques soient configurés en NON-RAID et visible dans le menu « Disks » :
      • Opération à réaliser sur chaque noeud, dans le menu Ceph, cliquer sur OSD puis sur « Create: OSD » :
      • Sélectionner le premier disque puis cliquer sur « Create » :
      • Répéter l’opération pour l’ensemble des disques :
    • Création du pool Ceph pour le stockage :
      • Toujours dans le menu Ceph, cliquer sur « Pools » puis sur « Create » :
      • Donner un nom au pool Ceph puis cliquer sur « Create » :
      • Une fois le pool Ceph créé, le stockage est automatiquement créé et partagé aux membres du cluster Proxmox :

    Mise en place de la HA pour les VMs

    nb: Lors de la création d’une machine virtuelle, ne pas oublier de choisir le stockage correspondant au pool Ceph:

    Encore à ce jour pour la gestion HA des machines virtuelles, j’utilise cette méthode -> https://memo-linux.com/proxmox-cluster-ha-repartition-de-charge-des-machines-virtuelles/

    Revue de presse de l’April pour la semaine 38 de l’année 2024

    Par :echarp
    25 septembre 2024 à 06:55

    Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.

    [clubic.com] La secrétaire d'État à l'IA et au Numérique est à la dernière place du gouvernement, un nouvel affront à la Tech

    ✍ Alexandre Boero, le dimanche 22 septembre 2024.

    Pour la première fois en France, l’intelligence artificielle est représentée au sein du gouvernement, avec le Numérique. Sauf qu’une fois de plus, les disciplines de la Tech n’ont pas droit à leur ministère.

    Et aussi:

    [LeMagIT] Open Source Summit: Proxmox se dévoile aux clients de VMware (€)

    ✍ Yann Serra, le jeudi 19 septembre 2024.

    Le petit éditeur autrichien a vu le nombre d’entreprises intéressées par sa solution de virtualisation exploser depuis que Broadcom a changé les conditions tarifaires de VMware, le leader du domaine.

    [Le Monde Informatique] Linus Torvalds incite les codeurs à miser sur les projets open source utiles (€)

    ✍ Sean Michael Kerner, le mercredi 18 septembre 2024.

    Lors de l’événement Open Source Summit Europe de la Fondation Linux, le créateur de Linux a fait le point sur les dernières mises à jour de Linux et sur l’open source.

    [L'Informaticien] Une initiative pour soutenir les meilleures pratiques open source

    Le mercredi 18 septembre 2024.

    Baptisée Developer Relations Foundation (DRF), cette initiative, annoncée le lundi 16 septembre lors de l’OSSummit de Vienne, vise à soutenir et à unifier les meilleures pratiques au sein de la communauté des développeurs open source.

    [L'usine Nouvelle] Comment l'Inria veut faire avancer l'open source dans l'IA… tout en monétisant ses recherches (€)

    ✍ Léna Corot, le mardi 17 septembre 2024.

    En présentant le 12 septembre le programme de recherche P16 et la start-up Probabl, l’Inria s’attaque à l’intégralité du cycle de la donnée. L’objectif est de développer et maintenir à l’état de l’art des bibliothèques de logiciels open source tout en parvenant à commercialiser ces ressources avec de nouveaux produits et services.

    [ZDNET] La documentation sur Linux et les logiciels libres est un véritable capharnaüm: voici la solution

    ✍ Steven Vaughan-Nichols, le mardi 17 septembre 2024.

    Il ne suffit pas de dire à quelqu’un de se débrouiller tout seul lorsque le manuel est obsolète, illisible ou inexistant. Nous devons améliorer la qualité de la documentation du code, et le moyen d’y parvenir est simple.

    [Le Monde Informatique] AWS place Opensearch sous les auspices de la Fondation Linux

    ✍ Jacques Cheminat, le lundi 16 septembre 2024.

    Après avoir forké le moteur de recherche et d’analyse d’Elasticsearch, AWS a décidé de transférer ce projet à la Fondation Linux avec la création d’une entité dédiée la Fondation Opensearch.

    Commentaires : voir le flux Atom ouvrir dans le navigateur

    NiPoGi AM06 Pro R7 : le meilleur choix à faire pour virtualiser sa maison connectée ?

    23 septembre 2024 à 04:00
    test-mini-pc-nipogi-am06-pro-ryzen7-amd-domotique-proxmox-home-assistant

    Nous l’avons vu avec de nombreux tests de mini PC ces derniers mois à la rédaction, opter pour un NUC en vu de le transformer en hyperviseur Proxmox et y héberger l’ensemble des systèmes qui composent l’éco-système domotique de la maison est un excellent choix. Mais ce n’est pas le choix qui manque avec autant […]

    Lire l'article complet: NiPoGi AM06 Pro R7 : le meilleur choix à faire pour virtualiser sa maison connectée ? sur le magazine de la maison connectée Domo-blog.fr.

    ❌
    ❌