Skip to main content

Configuration des limites de débit

Vous pouvez définir des limites de débit pour GitHub Enterprise Server à l’aide de Management Console.

Qui peut utiliser cette fonctionnalité ?

Site administrators can configure rate limits for a GitHub Enterprise Server instance.

À propos des limites de débit pour GitHub Enterprise Server

Pour éviter une utilisation excessive des ressources sur votre instance GitHub Enterprise Server susceptible d’affecter la disponibilité ou les performances de l’instance pour tous les utilisateurs, vous pouvez configurer des limites de débit. Les limites de débit sont configurables pour GitHub Enterprise Server APIs et GitHub Actions.

Implémentez des limites de débit avec soin et communiquez fréquemment avec vos utilisateurs quand vous ajustez les limites. Pour éviter d’interrompre le travail de vos utilisateurs, GitHub vous recommande de commencer par des limites de débit permissives et de les ajuster progressivement en fonction de votre environnement.

Vous pouvez aussi configurer des limites de débit pour des tentatives d’authentification auprès de la Management Console. Pour plus d’informations, consultez « Gestion de l’accès à la console de gestion ».

Activation des limites de débit pour les GitHub Enterprise Server APIs

Un nombre excessif de demandes adressées à GitHub Enterprise Server APIs peut affecter la disponibilité et les performances de votre instance. Pour plus d’informations sur la façon dont les limites de débit de l’API affectent vos utilisateurs, consultez « Limites de débit pour l'API REST ».

Vous pouvez exempter une liste d’utilisateurs des limites de débit d’API à l’aide de l’utilitaire ghe-config dans l’interpréteur de commandes d’administration. Pour plus d’informations, consultez « Utilitaires de ligne de commande ».

Note

La Management Console indique la période (par minute ou par heure) pour chaque limite de débit.

  1. À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.

  2. Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.

  3. Dans la barre latérale «  Administrateur de site », cliquez sur Management Console .

  4. Sous « Limitation de débit », sélectionnez Activer la limitation de débit pour l’API HTTP.

  5. Tapez les limites pour les demandes authentifiées et non authentifiées pour chaque API ou acceptez les limites par défaut préremplies.

  6. Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.

    Note

    L’enregistrement des paramètres dans la Management Console redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.

  7. Attendez la fin de l’exécution de la configuration.

Activation des limites de débit secondaires

La définition de limites de débit secondaires permet de protéger le niveau de service global sur votre instance GitHub Enterprise Server.

  1. À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.

  2. Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.

  3. Dans la barre latérale «  Administrateur de site », cliquez sur Management Console .

  4. Sous « Limitation de débit », sélectionnez Activer la limitation de débit secondaire.

  5. Tapez les limites pour le nombre total de demandes, la limite de processeur et la limite de processus pour les recherches ou acceptez les limites par défaut préremplies.

  6. Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.

    Note

    L’enregistrement des paramètres dans la Management Console redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.

  7. Attendez la fin de l’exécution de la configuration.

Activation des limites de taux pour Git

Si un membre du personnel de GitHub l’a recommandé, vous pouvez appliquer des limites de débit Git par réseau de dépôt ou par ID utilisateur. Les limites de débit Git sont exprimées en opérations simultanées par minute et peut s’adapter en fonction de la charge actuelle du processeur.

Warning

Nous vous encourageons à laisser ce paramètre désactivé, sauf si un membre du personnel de GitHub vous le recommande directement. Les opérations Git sont rarement l’élément principal de l’utilisation du processeur et de la RAM. L’activation de cette fonctionnalité peut augmenter les risques d’échec des opérations Git dans des conditions de charge élevée, sans pour cela remédier à la cause sous-jacente de ces conditions.

  1. À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.

  2. Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.

  3. Dans la barre latérale «  Administrateur de site », cliquez sur Management Console .

  4. Sous « Limitation de débit », sélectionnez Activer la limitation de débit Git.

  5. Sous « Limite du réseau du dépôt », tapez une limite pour chaque réseau de dépôts.

  6. Sous « Limite d’ID utilisateur », tapez une limite pour chaque ID utilisateur.

  7. Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.

    Note

    L’enregistrement des paramètres dans la Management Console redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.

  8. Attendez la fin de l’exécution de la configuration.

Configuration des limites de débit pour GitHub Actions

Vous pouvez appliquer une limite de débit aux exécutions de workflow GitHub Actions. Pour plus d’informations sur GitHub Actions, consultez « À propos de GitHub Actions pour les entreprises ».

À propos des limites de débit pour GitHub Actions

Votre instance GitHub Enterprise Server affecte chaque travail de workflow GitHub Actions à un exécuteur. Si votre instance ne peut pas affecter immédiatement un travail à un exécuteur disponible, le travail attend dans une file d’attente jusqu’à ce qu’un exécuteur soit disponible. Si GitHub Actions subit une charge élevée, la file d’attente peut s’allonger et les performances de votre instance GitHub Enterprise Server se dégrader.

Pour éviter cette dégradation des performances, vous pouvez configurer une limite de débit pour GitHub Actions. Cette limite de taux est exprimée en exécutions de travail par minute. GitHub Enterprise Server calcule et applique la limite de débit pour la somme totale de toutes les exécutions de travail sur l’instance. Si les exécutions dépassent la limite de taux, les exécutions supplémentaires échouent au lieu d’entrer dans la file d’attente. L’erreur suivante s’affiche dans les annotations de l’exécution.

Vous avez dépassé la limite de taux pour les demandes d’exécution de workflow. Veuillez patienter avant de réessayer l’exécution.

Une limite de débit appropriée protège votre instance GitHub Enterprise Server contre l’utilisation anormale de GitHub Actions sans interférer avec les opérations quotidiennes. Le seuil exact dépend des ressources disponibles de votre instance et du profil de charge global. Pour plus d’informations sur la configuration matérielle requise pour GitHub Actions, consultez « Bien démarrer avec GitHub Actions pour GitHub Enterprise Server ».

Par défaut, la limite de débit pour GitHub Actions est désactivée. Étant donné que GitHub Enterprise Server peut gérer des pics temporaires d’utilisation sans dégradation des performances, cette limite de débit est destinée à protéger contre une charge élevée soutenue. Nous vous recommandons de laisser la limite de taux désactivée, sauf si vous rencontrez des problèmes de performances. Dans certains cas, le Support GitHub peut vous recommander d’activer une limite de taux pour GitHub Actions.

Activer ou désactiver les limites de débit pour GitHub Actions

  1. 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
    
  2. Pour activer et configurer la limite de taux, exécutez les deux commandes suivantes, en remplaçant RUN-PER-MINUTE par la valeur de votre choix.

    ghe-config actions-rate-limiting.enabled true
    ghe-config actions-rate-limiting.queue-runs-per-minute RUNS-PER-MINUTE
    
  3. Pour désactiver la limite de taux après activation, exécutez la commande suivante.

    ghe-config actions-rate-limiting.enabled false
    
  4. Pour appliquer la configuration, exécutez la commande suivante.

    ghe-config-apply
    
  5. Attendez la fin de l’exécution de la configuration.