Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Référence des actions de déploiement d'Amazon Elastic Kubernetes Service EKS
Vous pouvez utiliser cette EKSDeploy action pour déployer un service Amazon EKS. Le déploiement nécessite un fichier manifeste Kubernetes CodePipeline utilisé pour déployer l'image.
Avant de créer votre pipeline, vous devez déjà avoir créé les ressources Amazon EKS et avoir stocké l'image dans votre référentiel d'images. Vous pouvez éventuellement fournir des informations VPC pour votre cluster.
Important
Cette action utilise le CodeBuild calcul CodePipeline géré pour exécuter des commandes dans un environnement de génération. L'exécution de l'action des commandes entraînera des frais distincts dans AWS CodeBuild.
Note
L'action de EKS déploiement n'est disponible que pour les pipelines de type V2.
L'action EKS soutient les clusters EKS publics et privés. Les clusters privés sont le type recommandé par EKS ; toutefois, les deux types sont pris en charge.
L'action EKS est prise en charge pour les actions entre comptes. Pour ajouter une action EKS intercomptes, ajoutez-la actionRoleArn depuis votre compte cible dans la déclaration d'action.
Rubriques
Type d'action
-
Catégorie :
Deploy -
Propriétaire :
AWS -
Fournisseur :
EKS -
Version :
1
Paramètres de configuration
- ClusterName
-
Obligatoire : oui
Le cluster Amazon EKS dans Amazon EKS.
- Options sous contrôle
-
Les options disponibles sont les suivantes lorsque Helm est l'outil de déploiement sélectionné.
- HelmReleaseName
-
Obligatoire : Oui (obligatoire uniquement pour le type de casque)
Le nom de version de votre déploiement.
- HelmChartLocation
-
Obligatoire : Oui (obligatoire uniquement pour le type de casque)
Emplacement de votre déploiement sur la carte.
- HelmValuesFiles
-
Obligatoire : Non (facultatif uniquement pour le type de casque)
Pour remplacer les fichiers de valeurs Helm, entrez les fichiers de valeurs Helm séparés par des virgules à l'emplacement du graphique Helm.
- Options sous Kubectl
-
Les options disponibles sont les suivantes lorsque Kubectl est l'outil de déploiement sélectionné.
- ManifestFiles
-
Obligatoire : Oui (obligatoire uniquement pour le type Kubectl)
Le nom de votre fichier manifeste, le fichier texte qui décrit le nom du conteneur de votre service, ainsi que l'image et la balise. Ce fichier vous permet de paramétrer l'URI de votre image et d'autres informations. Vous pouvez utiliser une variable d'environnement à cette fin.
Vous stockez ce fichier dans le référentiel source de votre pipeline.
- Namespace
-
Obligatoire : non
L'espace de noms Kubernetes à utiliser dans nos commandes.
kubectlhelm - Subnets
-
Obligatoire : non
Les sous-réseaux du VPC de votre cluster. Ils font partie du même VPC qui est attaché à votre cluster. Vous pouvez également fournir des sous-réseaux qui ne sont pas encore rattachés à votre cluster et les spécifier ici.
- SecurityGroupIds
-
Obligatoire : non
Les groupes de sécurité du VPC de votre cluster. Ils font partie du même VPC qui est attaché à votre cluster. Vous pouvez également fournir des groupes de sécurité qui ne sont pas encore attachés à votre cluster et les spécifier ici.
Artefacts d'entrée
-
Nombre d'objets :
1 -
Description : L'action recherche le fichier manifeste Kubernetes ou le graphique Helm dans le référentiel de fichiers source du pipeline. Si vous souhaitez utiliser des graphiques Helm au format .tgz stockés dans un compartiment S3, vous pouvez le faire en configurant le S3 Bucket/Key comme action source. Par exemple, la clé d'objet fournie serait
my-chart-0.1.0.tgz.
Artefacts de sortie
-
Nombre d'objets :
0 -
Description : Les artefacts de sortie ne s'appliquent pas à ce type d'action.
Variables d’environnement
Utilisé pour remplacer des variables telles que des référentiels d'images ou des balises d'image dans des fichiers manifestes ou des fichiers de valeurs de graphiques Helm.
- Clé
-
La clé d'une paire de variables d'environnement clé-valeur, telle que.
$IMAGE_TAG - Value
-
La valeur de la paire clé-valeur, telle que.
v1.0La valeur peut être paramétrée à l'aide de variables de sortie issues d'actions de pipeline ou de variables de pipeline. Par exemple, le pipeline peut avoir une ECRBuildAndPublish action qui crée une image ECR avec${codepipeline.PipelineExecutionId}, et l'action EKS peut utiliser cette image en utilisant${codepipeline.PipelineExecutionId}comme valeur de variable d'environnement.
Variables de sortie
- EKSClusterName
-
Le cluster Amazon EKS dans Amazon EKS.
Autorisations relatives aux politiques de rôle de service
Pour exécuter cette action, les autorisations suivantes doivent être disponibles dans la politique de rôle de service de votre pipeline.
-
Actions EC2 : lors de l' CodePipeline exécution de l'action, des autorisations d'instance EC2 sont requises. Notez que ce n'est pas la même chose que le rôle d'instance EC2 requis lorsque vous créez votre cluster EKS.
Si vous utilisez un rôle de service existant, pour utiliser cette action, vous devez ajouter les autorisations suivantes pour ce rôle de service.
-
EC2 : CreateNetworkInterface
-
EC2 : DescribeDhcpOptions
-
EC2 : DescribeNetworkInterfaces
-
EC2 : DeleteNetworkInterface
-
EC2 : DescribeSubnets
-
EC2 : DescribeSecurityGroups
-
EC2 : DescribeVpcs
-
-
Actions EKS : lors de l' CodePipeline exécution de l'action, les autorisations du cluster EKS sont requises. Notez que ce n'est pas la même chose que le rôle de cluster IAM EKS requis lors de la création de votre cluster EKS.
Si vous utilisez un rôle de service existant, pour utiliser cette action, vous devez ajouter l'autorisation suivante pour ce rôle de service.
-
4 semaines : DescribeCluster
-
-
Actions du flux de journalisation : lors de l' CodePipeline exécution de l'action, CodePipeline crée un groupe de journaux en utilisant le nom du pipeline comme suit. Cela vous permet de limiter les autorisations d'enregistrement des ressources à l'aide du nom du pipeline.
/aws/codepipeline/MyPipelineNameSi vous utilisez un rôle de service existant, pour utiliser cette action, vous devez ajouter les autorisations suivantes pour ce rôle de service.
-
journaux : CreateLogGroup
-
journaux : CreateLogStream
-
journaux : PutLogEvents
-
Dans la déclaration de politique relative aux rôles de service, réduisez les autorisations au niveau des ressources, comme indiqué dans l'exemple suivant.
Pour afficher les journaux dans la console à l'aide de la page de dialogue des détails des actions, l'autorisation d'affichage des journaux doit être ajoutée au rôle de console. Pour plus d'informations, consultez l'exemple de politique d'autorisations de console dansAutorisations requises pour afficher les journaux de calcul dans la console.
Ajouter le rôle de service en tant qu'entrée d'accès pour votre cluster
Une fois les autorisations disponibles dans la politique de rôle de service de votre pipeline, vous configurez les autorisations de votre cluster en ajoutant le rôle de CodePipeline service en tant qu'entrée d'accès pour votre cluster.
Vous pouvez également utiliser un rôle d'action doté des autorisations mises à jour. Pour plus d'informations, consultez l'exemple du didacticiel dansÉtape 4 : Création d'une entrée d'accès pour le rôle CodePipeline de service.
Déclaration d'action
Consultez aussi
Les ressources connexes suivantes peuvent s'avérer utiles dans le cadre de l'utilisation de cette action.
-
Consultez Tutoriel : Déploiement sur Amazon EKS avec CodePipeline un didacticiel qui montre comment créer un cluster EKS et un fichier manifeste Kubernetes pour ajouter l'action à votre pipeline.