À propos des limites de débit pour GitHub Enterprise Server
Les limites de débit permettent d’éviter une utilisation excessive des ressources sur votre instance GitHub Enterprise Server ce qui peut affecter la disponibilité ou les performances de tous les utilisateurs. Vous pouvez configurer des limites de débit pour le GitHub Enterprise Server APIs et GitHub Actions.
Implémentez des limites de débit soigneusement et communiquez avec vos utilisateurs au fur et à mesure que vous les paramétrez. Commencez par des limites de taux permissives et ajustez-les progressivement en fonction de votre environnement.
Vous pouvez également configurer des limites de débit pour les tentatives d’authentification vers le Console de gestion. Pour plus d’informations, consultez « Gestion de l’accès à la console de gestion ».
Activer les limites de débit pour le GitHub Enterprise Server APIs
Un trop grand nombre de requêtes adressées à GitHub Enterprise Server APIs peut ralentir votre instance ou la rendre indisponible. Pour plus d’informations sur la façon dont les limites de débit d’API affectent vos utilisateurs, consultez Limites de débit pour l'API REST.
Vous pouvez exempter des utilisateurs spécifiques 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 ».
Remarque
Le Console de gestion indique la période (par minute ou par heure) pour chaque limite de débit.
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
-
Dans la barre latérale « Site admin », cliquez sur Console de gestion.
-
Sous « Limitation de débit », sélectionnez Activer la limitation de débit pour l’API HTTP.
-
Entrez des limites pour les demandes authentifiées et non authentifiées pour chaque API, ou acceptez les limites par défaut préremplies.
-
Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.
Remarque
L’enregistrement des paramètres dans la Console de gestion redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.
-
Attendez la fin de l’exécution de la configuration.
Activation des limites de débit secondaires
Les limites de taux secondaires permettent de maintenir votre instance GitHub Enterprise Server la stabilité pour tous les utilisateurs.
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
-
Dans la barre latérale « Site admin », cliquez sur Console de gestion.
-
Sous « Limitation de débit », sélectionnez Activer la limitation de débit secondaire.
-
Entrez des limites pour les demandes totales, la limite du processeur et la limite du processeur pour la recherche, ou acceptez les limites par défaut préremplies.
-
Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.
Remarque
L’enregistrement des paramètres dans la Console de gestion redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.
-
Attendez la fin de l’exécution de la configuration.
Activation des limites de taux pour Git
Si un membre du GitHubpersonnel l’a recommandé, vous pouvez appliquer des limites de débit Git par réseau de référentiel ou par ID d’utilisateur. Les limites de débit Git sont mesurées en opérations simultanées par minute et s’adaptent à la charge actuelle du processeur.
Avertissement
Laissez ce paramètre désactivé, sauf s’il est directement recommandé par GitHuble personnel. 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 rendre les opérations Git plus susceptibles d’échouer sous une charge élevée, mais ne traite pas de la cause sous-jacente.
-
À partir d’un compte d’administration sur GitHub Enterprise Server, cliquez sur en haut à droite de n’importe quelle page.
-
Si vous ne figurez pas déjà sur la page « Administrateur du site », dans le coin supérieur gauche, cliquez sur Administrateur du site.
-
Dans la barre latérale « Site admin », cliquez sur Console de gestion.
-
Sous « Limitation de débit », sélectionnez Activer la limitation de débit Git.
-
Sous « Limite du réseau du dépôt », tapez une limite pour chaque réseau de dépôts.
-
Sous « Limite d’ID utilisateur », tapez une limite pour chaque ID utilisateur.
-
Sous la barre latérale « Paramètres », cliquez sur Enregistrer les paramètres.
Remarque
L’enregistrement des paramètres dans la Console de gestion redémarre les services système, ce qui peut entraîner un temps d’arrêt visible pour l’utilisateur.
-
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 GitHub Actions exécutions de flux de travail. 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 attribue chaque tâche de workflow GitHub Actions à un runner. Si votre instance ne peut pas affecter immédiatement un travail à un exécuteur disponible, le travail est placé en file d’attente. Si GitHub Actions subit une charge élevée prolongée, la file d’attente peut s’engorger et les performances de votre instance GitHub Enterprise Server risquent de se dégrader.
Pour éviter cela, vous pouvez configurer une limite de débit pour GitHub Actions. Cette limite de taux est mesurée en nombre d'exécutions de travaux par minute. GitHub Enterprise Server applique la limite de débit pour toutes les exécutions de travaux sur l’instance. Si les exécutions dépassent la limite de débit, les exécutions supplémentaires échouent au lieu d’entrer dans la file d’attente. L'erreur suivante apparaît dans les annotations du processus d'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 bonne limite de débit protège contre les votre instance GitHub Enterprise Server pics inhabituels d’utilisation GitHub Actions sans interférer avec les opérations quotidiennes. Le seuil approprié dépend des ressources disponibles de votre instance et de la charge de travail classique. Pour plus d’informations sur la configuration matérielle requise pour GitHub Actions, consultez Prise en main de GitHub Actions pour GitHub Enterprise Server.
Par défaut, la limitation de débit pour GitHub Actions est désactivée. GitHub Enterprise Server peut gérer des pics d’utilisation temporaires sans problème, de sorte que cette limite de débit protège contre une charge élevée soutenue. Laissez-le désactivé, sauf si vous rencontrez des problèmes de performances. Dans certains cas, Support GitHub peut recommander d’activer une limitation de débit pour GitHub Actions.
Activation ou désactivation des limites de débit pour GitHub Actions
-
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 -
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 -
Pour désactiver la limite de débit, exécutez la commande suivante.
ghe-config actions-rate-limiting.enabled false -
Pour appliquer la configuration, exécutez la commande suivante.
ghe-config-apply -
Attendez la fin de l’exécution de la configuration.
Contrôle du débit du service de mise à jour en direct
Si le nombre de requêtes AJAX adressées à votre GitHub Enterprise Server instance provoque des problèmes, vous devrez peut-être ajuster la limite de débit pour le contrôleur WebSockets utilisé par ces mises à jour actives. Pour plus d’informations sur la façon d’afficher les requêtes Alive, consultez À propos des tableaux de bord de surveillance.
Avec les limites de débit primaire activées, la limite par défaut est de 100 requêtes par minute par adresse IP. Utilisez l’utilitaire ghe-config dans l’interpréteur de commandes d’administration pour définir app.github.web-sockets-rate-limit le nombre de requêtes autorisées par minute par adresse IP ou pour désactiver cette limite de débit. La définition de la limite sur n’importe quelle valeur entière non positive (par exemple, 0, -1, disabled) désactive la limitation de débit sur le contrôleur WebSockets.
Après avoir modifié ces paramètres, exécutez ghe-config-apply pour les appliquer.