Skip to main content

Informations sur l’utilisation des exécuteurs hébergés par GitHub dans votre réseau virtuel Azure

Vous pouvez créer des exécuteurs hébergés par GitHub dans votre réseau virtuel ou vos réseaux virtuels Azure (VNet).

Informations sur l’utilisation des exécuteurs hébergés par GitHub dans votre réseau virtuel Azure (VNet).

Remarques :

  • L'utilisation d'exécuteurs hébergés par GitHub Azure (VNET) correspond à une version bêta susceptible d'être modifiée.
  • Seuls les exécuteurs Ubuntu et Windows avec UC 4-64 sont pris en charge par Azure VNET. Pour plus d'informations sur les types d'exécuteurs, consultez « À propos des exécuteurs de plus grande taille ».
  • Les régions prises en charge sont les suivantes :East US, East US 2, et West US 2. Pour demander la prise en charge d'une région qui n'est pas dans cette liste, remplissez le formulaire de demande par région.
  • Le réseau privé des GitHub hébergés par les exécuteurs ne prend pas en charge les adresses IP statiques des exécuteurs de plus grandes tailles. Vous devez utiliser des adresses IP dynamiques, configuration par défaut des exécuteurs de plus grande taille. Pour plus d'informations sur la mise en réseau des exécuteurs de plus grande taille, consultez « À propos des exécuteurs de plus grande taille ».

Si vous utilisez Azure et GitHub Enterprise Cloud, vous pouvez créer exécuteurs hébergés sur GitHub dans vos VNET Azure. Cela vous permet de tirer parti de GitHub pour votre CI/CD tout en vous fournissant un contrôle total sur les stratégies de mise en réseau de vos exécuteurs. Pour plus d'informations sur Azure VNET, consultez la section Qu'est-ce que le réseau virtuel Azure ? dans la documentation Azure.

Vous pouvez connecter plusieurs paires de sous-réseaux VNET à GitHub.com et gérer l'accès aux ressources privées pour vos exécutants via des groupes d'exécuteurs. Pour plus d’informations sur les groupes d’exécuteurs, consultez « Contrôle de l’accès aux exécuteurs plus grands ».

L’utilisation d’exécuteurs hébergés par GitHub dans le réseau virtuel Azure vous permet d’effectuer les actions suivantes.

  • Connectez un exécuteur en privé à des ressources à l’intérieur d’un VNet Azure sans ouvrir de ports Internet, y compris les ressources locales accessibles à partir du VNet Azure.
  • Limitez l’accès et la connexion des exécuteurs hébergés par GitHub avec un contrôle total sur les stratégies réseau sortantes.
  • Analyser les journaux réseau pour les exécuteurs hébergés par GitHub et afficher toute la connectivité vers et depuis un exécuteur.

Informations sur la communication réseau

Pour faciliter la communication entre les réseaux GitHub et votre VNET, la carte d'interface réseau (NIC) d'un GitHub hébergé se déploie dans votre VNET Azure.

Étant donné que le NIC se trouve dans votre VNET, GitHub ne peut bloquer les connexions entrantes. Par défaut, les machines virtuelles Azure acceptent les connexions entrantes provenant du même VNET. Pour plus d’informations, consultez AllowVNetInBound sur Microsoft Learn. Il est recommandé de bloquer explicitement toutes les connexions entrantes sur les exécuteurs. GitHub ne nécessitera jamais de connexions entrantes sur ces machines.

Une carte d'interface réseau (NIC) permet à un ordinateur virtuel Azure (VM) de communiquer avec des ressources Internet, Azure sur site. Toutes les communications restent ainsi privées à l’intérieur des limites du réseau et les stratégies de mise en réseau appliquées au VNet s’appliquent également à l’exécuteur. Pour plus d’informations sur la gestion d'une interface réseau, consultez Modifier les paramètres de l'interface réseau sur Microsoft Learn.

Diagramme de l’architecture de communication réseau entre les réseaux GitHub et vos réseaux privés. Le diagramme décrit chaque étape de la connexion des exécuteurs hébergés par GitHub à un VNet Azure. Chaque étape est numérotée et les nombres correspondent aux descriptions numérotées des étapes répertoriées sous le diagramme.

  1. Un workflow GitHub Actions est déclenché.
  2. Le service GitHub Actions crée un exécuteur.
  3. Le service de l’exécuteur déploie la carte d’interface réseau (NIC) de l’exécuteur hébergé par GitHub dans votre VNet Azure.
  4. L’agent de l’exécuteur prélève la tâche de workflow. Le service GitHub Actions place la tâche en file d’attente.
  5. L’exécuteur renvoie les journaux d’activité au service GitHub Actions.
  6. La carte d’interface réseau accède aux ressources locales.

À propos des autorisations de service de GitHub Actions

Afin de déployer correctement une carte réseau (NIC) et joindre une NIC à un sous-réseau, le service GitHub Actions gère les autorisations suivantes dans votre abonnement Azure.

  • Créer des déploiements
  • Lecture/Écriture/suppression de NIC
  • Joindre/Lire les groupes de sécurité réseau (NSG)
  • Joindre/Lecture/Écriture d’IP publiques
  • Lire les réseaux virtuels
  • Joindre/Lecture/Écriture de sous-réseau

Utilisation des stratégies réseau de votre VNet

Étant donné que la carte d’interface réseau de l’exécuteur hébergé par GitHub est déployée dans votre VNet Azure, les stratégies de mise en réseau appliquées au VNet s’appliquent également à l’exécuteur.

Par exemple, si votre VNet est configuré avec Azure ExpressRoute pour fournir l’accès aux ressources locales (par exemple, Artifactory) ou connecté à un tunnel VPN pour fournir l’accès à d’autres ressources cloud, ces stratégies d’accès s’appliquent également à vos exécuteurs. En outre, toutes les règles de trafic sortant appliquées au groupe de sécurité réseau (NSG) de votre VNet s’appliquent également, ce qui vous permet de contrôler l’accès sortant pour vos exécuteurs.

Si vous avez activé la supervision des journaux réseau pour votre VNet, vous pouvez également surveiller le trafic réseau pour vos exécuteurs.

Utilisation des exécuteurs hébergés par GitHub avec un VNet Azure

To use GitHub-hosted runners with Azure VNET, you will need to configure your Azure resources then create an Azure private network configuration in GitHub. Pour plus d'informations, consultez « Configuration d’un réseau privé pour les exécuteurs hébergé sur GitHub ».