Skip to main content

Gestion des index de recherche pour votre instance

GitHub Enterprise Server utilise Elasticsearch pour alimenter les fonctionnalités de recherche. Il fournit des outils pour gérer le comportement de recherche et d’indexation.

Qui peut utiliser cette fonctionnalité ?

Enterprise owners can manage search indices for a GitHub Enterprise Server instance.

À propos de la recherche pour GitHub Enterprise Server

Les utilisateurs peuvent rechercher, naviguer et comprendre les problèmes, les demandes d’extraction, le code et d’autres contenus sur GitHub Enterprise Server. au sein de votre instance. Elasticsearch alimente la fonctionnalité de recherche sur votre instance. Vous pouvez afficher l’état actuel d’Elasticsearch et contrôler le comportement de recherche et d’indexation.

Pour plus d’informations à propos de la recherche pour GitHub Enterprise Server, consultez « Documentation sur Rechercher sur GitHub .» Pour plus d’informations sur Elasticsearch, consultez le site web d’Elasticsearch.

À propos de la gestion des index

GitHub Enterprise Server rapproche l’état de l’index de recherche et les données de l’instance automatiquement et régulièrement, y compris :

  • Problèmes, demandes de tirage, dépôts et utilisateurs dans la base de données
  • Dépôts Git (code source) sur disque

Dans le cadre d’une utilisation normale, propriétaire de l’entreprise n’ont pas besoin de créer de nouveaux index ni de planifier des travaux de réparation. Dans le cadre d’une assistance, Support GitHub peut vous demander d’exécuter un travail de réparation.

Affichage des index de recherche

  1. Dans le coin supérieur droit de n’importe quelle page, cliquez sur .
  2. Dans la barre latérale gauche, cliquez sur Rechercher des index.
  3. Sous « Gestion des index », cliquez sur l’index de recherche à afficher.

Création d’un nouvel index de recherche

  1. Dans le coin supérieur droit de n’importe quelle page, cliquez sur .

  2. Dans la barre latérale gauche, cliquez sur Rechercher des index.

  3. En regard de « Gestion des index », cliquez sur Créer un nouvel index.

  4. Sélectionnez la liste déroulante Sélectionner l’index à créer, puis cliquez sur l’index de recherche que vous souhaitez créer.

  5. Si vous souhaitez que l’index puisse faire l’objet d’une recherche, sélectionnez la case à cocher Rendre cet index recherchable.

  6. Si vous souhaitez que l’index soit accessible en écriture, sélectionnez la case à cocher Rendre cet index accessible en écriture.

  7. Cliquez sur Créer un index.

  8. Si votre instance utilise une configuration de haute disponibilité ou de cluster, vous devez exécuter un script pour vous assurer que le nombre d’index de recherche est correctement configuré dans l’instance.

    Accédez au shell d’administration de votre appliance principale via SSH, puis exécutez l’une des commandes suivantes.

    Pour les configurations à haute disponibilité :

    Shell
    /usr/local/share/enterprise/ghe-es-auto-expand -v 0-all
    

    Pour les configurations de cluster :

    Shell
    /usr/local/share/enterprise/ghe-es-auto-expand -v 0-1
    

    Consultez « Accès à l’interpréteur de commandes d’administration (SSH) ».

Gestion des index de recherche

Lorsque vous affichez un index de recherche existant dans le tableau de bord d’administrateur du site, vous pouvez effectuer les actions suivantes :

  • Rendre l’index recherchable.
  • Rendre l’index accessible en écriture.
  • Mettre à jour l’index.
  • Supprimer l’index.
  • Réinitialiser l’état de réparation de l’index.
  • Démarrer un nouveau travail de réparation d’index.
  • Activer ou désactiver les travaux de réparation d’index.

Vous pouvez activer ou désactiver les opérations de recherche et d’indexation dans le code source. Pour plus d’informations sur la recherche de code, consultez « Recherche de code ».

  1. Dans le coin supérieur droit de n’importe quelle page, cliquez sur .
  2. Dans la barre latérale gauche, cliquez sur Rechercher des index.
  3. Dans la section « Code search », en regard de « Recherche » ou « Indexation », cliquez sur Activer ou Désactiver.

Réparation des index de recherche

Votre instance utilise des travaux de réparation pour rapprocher les données et planifier un travail de réparation en arrière-plan lorsque les événements suivants se produisent :

  • Un index de recherche est créé.
  • Des données manquantes doivent être provisionnées.
  • D’anciennes données de recherche doivent être mises à jour.

Dans la section « Réparation » de l’index de recherche, une barre de progression affiche l’état actuel d’un travail de réparation pour l’ensemble des workers en arrière-plan. Vous pouvez ignorer la valeur affichée dans la barre de progression une fois que la tâche de réparation est terminée. La barre de progression montre la différence entre le décalage de réparation et l’ID d’enregistrement le plus élevé dans la base de données. Elle diminuera à mesure que d’autres dépôts seront ajoutés à votre instance GitHub Enterprise Server, même si ces dépôts sont réellement indexés.

Pour limiter les effets sur le niveau de performance en E/S et réduire les risques d’expiration des opérations, exécutez un travail de réparation pendant les heures creuses. Un seul processeur est utilisé pendant que le travail rapproche l’index de recherche et les données de la base de données et du dépôt Git. Monitorez les moyennes de charge et l’utilisation processeur de votre système avec un utilitaire comme top. Si vous ne remarquez aucune augmentation significative de la consommation des ressources, cela signifie que vous pouvez sans problème exécuter un travail de réparation d’index pendant les heures de pointe.

Les travaux de réparation utilisent un « décalage de réparation » pour la parallélisation. Il s’agit d’un décalage dans la table de base de données pour l’enregistrement faisant l’objet d’un rapprochement. Plusieurs travaux en arrière-plan peuvent synchroniser le travail en fonction de ce décalage.