À mesure que le nombre d’utilisateurs rejoignant votre instance GitHub Enterprise Server augmente, vous pouvez être amené à redimensionner votre volume de stockage. Consultez la documentation de votre plateforme de virtualisation pour plus d’informations sur le redimensionnement du stockage.
Conditions requises et recommandations
Remarque
Avant de redimensionner un volume de stockage, mettez votre instance en mode maintenance. Vous pouvez valider les modifications en configurant une liste d'exceptions d'IP pour autoriser l'accès depuis des adresses IP spécifiées. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
Avertissement
La modification du paramètre de cache de disque d’un disque Azure détache et réattache le disque cible. Si le disque est en cours d'utilisation, cela peut perturber les services en cours d'exécution et peut entraîner une corruption des données. Si vous avez l'intention de modifier les paramètres de cache de disque tout en augmentant la capacité de stockage, assurez-vous d'arrêter votre appliance.
Configuration minimale recommandée
| Licences utilisateur | Processeurs virtuels x86-64 | Mémoire | Stockage racine | Stockage (de données) attaché | D’OPÉRATIONS D’E/S PAR SECONDE |
|---|---|---|---|---|---|
| Essai, démonstration ou 10 utilisateurs légers | 4 | 32 Go | 400 Go | 500 Go | 600 |
| Jusqu’à 1 000 | 8 | 48 Go | 400 Go | 500 Go | 3000 |
| 1 000 à 3 000 | 16 | 64 Go | 400 Go | 1 000 Go | 6000 |
| 3 000 à 5 000 | 32 | 128 Go | 400 Go | 1 500 Go | 9000 |
| 5 000 à 8 000 | 48 | 256 Go | 400 Go | 3 000 Go | 12 000 |
| 8 000 à 10 000+ | 64 | 512 Go | 400 Go | 5 000 Go | 15000 |
Le stockage racine fait référence à la taille totale du disque racine de votre instance. L'espace disponible sur le système de fichiers racine correspond à 50 % du stockage total disponible sur le disque racine. Pour plus d’informations, consultez « Vue d’ensemble du système ».
Augmentation de la taille de partition de données
-
Redimensionnez le disque de volume utilisateur existant à l’aide des outils de votre plateforme de virtualisation.
-
Connexion SSH à votre instance GitHub Enterprise Server. Si votre instance comprend plusieurs nœuds, par exemple si la haute disponibilité ou la géoréplication sont configurées, connectez-vous via SSH au nœud principal. Si vous utilisez un cluster, vous pouvez vous connecter via SSH à n’importe quel nœud. Remplacez HOSTNAME par le nom d’hôte de votre instance, le nom d’hôte ou l’adresse IP d’un nœud. Pour plus d’informations, consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME -
Faites passer l’appliance en mode maintenance. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
-
Redémarrez l’appliance pour détecter la nouvelle allocation de stockage :
sudo reboot -
Exécutez la commande
ghe-storage-extendpour développer le système de fichiers/data/user:ghe-storage-extend -
Vérifiez que les services système fonctionnent correctement, puis quittez le mode maintenance. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
Avertissement
Si la ghe-storage-extend commande (ou une vérification automatique antérieure) signale : ghe_user_data contains a file system with errorsvous devez réparer le système de fichiers avant de réessayer de redimensionner. Ne réexécutez ghe-storage-extend pas tant que la vérification n’est pas terminée correctement. Pour obtenir des instructions de récupération, consultez Réparation des erreurs de système de fichiers.
Réparation des erreurs de système de fichiers
Si la vérification du système de fichiers échoue pendant ghe-storage-extend, procédez comme suit pour la réparer.
Vérifiez que l’appliance est en mode maintenance et qu’aucun travail en arrière-plan n’est en cours d’exécution :
ghe-maintenance -s ghe-resque-info
ghe-maintenance -s
ghe-resque-info
-
Arrêtez et activez le volume utilisateur, puis exécutez une vérification forcée du système de fichiers (réponse automatique oui) :
Shell sudo systemctl stop ghe-user-disk VGNAME=$(sudo lvs --noheadings -o vg_name | grep ghe_storage_ | awk '{ print $1 }') sudo vgchange -ay "$VGNAME" sudo vgscan --mknodes sudo fsck -fy /dev/mapper/${VGNAME}-ghe_user_datasudo systemctl stop ghe-user-disk VGNAME=$(sudo lvs --noheadings -o vg_name | grep ghe_storage_ | awk '{ print $1 }') sudo vgchange -ay "$VGNAME" sudo vgscan --mknodes sudo fsck -fy /dev/mapper/${VGNAME}-ghe_user_data -
Réessayez le redimensionnement :
Shell ghe-storage-extend
ghe-storage-extend -
Remontez et vérifiez la nouvelle taille :
Shell sudo systemctl start ghe-user-disk df -h /data/user
sudo systemctl start ghe-user-disk df -h /data/user -
Redémarrez et vérifiez :
Shell sudo reboot df -h /data/user
sudo reboot df -h /data/user
Augmentation de la taille de partition racine en utilisant une nouvelle appliance
-
Configurez une nouvelle instance de GitHub Enterprise Server avec un disque racine plus grand utilisant la même version que votre appliance actuelle. Pour plus d’informations, consultez « Configuration d’une instance GitHub Enterprise Server ».
-
Arrêtez l’appliance actuelle :
sudo poweroff -
Détachez le disque de données de l’appliance actuelle à l’aide des outils de votre plateforme de virtualisation.
-
Attachez le disque de données à la nouvelle appliance avec le disque racine de taille supérieure.
Augmentation de la taille de partition racine en utilisant une nouvelle appliance
Avertissement
Avant d'augmenter la taille de la partition racine, vous devez mettre votre instance en mode maintenance. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
Avant de redimensionner la partition racine, déterminez si l'appliance possède une table de partition GUID.
Sur les instances créées à partir des versions GHES 3.14 et ultérieures, suivez les instructions de la section Augmenter la taille de la partition racine sur une table de partition GUID.
Sur les instances créées à partir de versions GHES antérieures à 3.14, suivez les instructions de la section Augmenter la taille de la partition racine sur une table de partition héritée.
Pour vérifier le type de table de partition, exécutez la commande suivante. Le résultat doit être soit gpt, soit msdos.
sudo lsblk -no pttype $(findmnt -no source /)
- Attachez un nouveau disque à votre appliance GitHub Enterprise Server.
- Exécutez la commande
lsblkpour identifier le nom d’appareil du nouveau disque.
Augmenter la taille de la partition racine sur une table de partition GUID
-
Sauvegardez votre partition de démarrage EFI existante :
sudo dd if=/dev/disk/by-label/EFIBOOT of=EFIBOOT.bak bs=1M -
Exécutez la commande
partedpour formater le disque, avec le nom de votre appareil par/dev/xvdg:sudo parted /dev/xvdg mklabel gpt sudo parted -a optimal /dev/xvdg mkpart bios fat32 1MiB 2MiB sudo parted /dev/xvdg set 1 bios_grub on sudo parted -a optimal /dev/xvdg mkpart efi fat32 2MiB 512MiB sudo parted /dev/xvdg set 2 esp on sudo parted -a optimal /dev/xvdg mkpart primary 512MiB 50% sudo parted /dev/xvdg set 3 boot off sudo parted /dev/xvdg set 3 esp off sudo parted -a optimal /dev/xvdg mkpart primary 50% 100% -
Si votre appliance est configurée pour la haute disponibilité ou la géoréplication, pour arrêter la réplication, exécutez la commande
ghe-repl-stopsur chaque nœud de réplica :ghe-repl-stop -
Pour installer le logiciel GitHub Enterprise Server sur le disque nouvellement partitionné, exécutez la commande
ghe-upgrade. Vous devez remplacer PACKAGE-NAME.pkg par le chemin d’accès à un package de mise à niveau spécifique à la plateforme qui correspond à la version de GitHub Enterprise Server déjà en cours d’exécution sur l’appliance. Vous ne pouvez pas utiliser un package de mise à niveau à chaud universel commegithub-enterprise-2.11.9.hpkg. Après que la commandeghe-upgradea abouti, les services d’application se terminent automatiquement.ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg3 -
Exécutez ces commandes sur les partitions secondaires du disque nouvellement ajouté :
sudo dd if=/dev/disk/by-label/EFIBOOT of=/dev/xvdg2 bs=1M sudo mkfs.ext4 -L fallback /dev/xvdg4 -
Arrêtez l’appliance :
sudo poweroff -
Dans l’hyperviseur, supprimez l’ancien disque racine et attachez le nouveau au même emplacement que l’ancien disque racine.
-
Démarrez l’appliance.
-
Vérifiez que les services système fonctionnent correctement, puis quittez le mode maintenance. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
Si votre appliance est configurée pour la haute disponibilité ou la géoréplication, pensez à lancer la réplication sur chaque nœud réplica à l’aide de ghe-repl-start après que le stockage a été mis à niveau sur tous les nœuds.
Augmenter la taille de la partition racine sur une table de partition héritée
-
Exécutez la commande
partedpour formater le disque, avec le nom de votre appareil par/dev/xvdg:sudo parted /dev/xvdg mklabel msdos sudo parted /dev/xvdg mkpart primary ext4 0% 50% sudo parted /dev/xvdg mkpart primary ext4 50% 100% -
Si votre appliance est configurée pour la haute disponibilité ou la géoréplication, pour arrêter la réplication, exécutez la commande
ghe-repl-stopsur chaque nœud de réplica :ghe-repl-stop -
Pour installer le logiciel GitHub Enterprise Server sur le disque nouvellement partitionné, exécutez la commande
ghe-upgrade. Vous devez remplacer PACKAGE-NAME.pkg par le chemin d’accès à un package de mise à niveau spécifique à la plateforme qui correspond à la version de GitHub Enterprise Server déjà en cours d’exécution sur l’appliance. Vous ne pouvez pas utiliser un package de mise à niveau à chaud universel commegithub-enterprise-2.11.9.hpkg. Après que la commandeghe-upgradea abouti, les services d’application se terminent automatiquement.ghe-upgrade PACKAGE-NAME.pkg -s -t /dev/xvdg1 -
Exécutez la commande sur la partition secondaire du disque nouvellement ajouté :
sudo mkfs.ext4 -L fallback /dev/xvdg2 -
Arrêtez l’appliance :
sudo poweroff -
Dans l’hyperviseur, supprimez l’ancien disque racine et attachez le nouveau au même emplacement que l’ancien disque racine.
-
Démarrez l’appliance.
-
Vérifiez que les services système fonctionnent correctement, puis quittez le mode maintenance. Pour plus d’informations, consultez « Activation et planification du mode de maintenance ».
Si votre appliance est configurée pour la haute disponibilité ou la géoréplication, pensez à lancer la réplication sur chaque nœud réplica à l’aide de ghe-repl-start après que le stockage a été mis à niveau sur tous les nœuds.