In Cloud Computing et DevOps Dernière mise à jour:
Partager sur:
Cloudways propose un hébergement cloud géré aux entreprises de toutes tailles pour héberger un site Web ou des applications Web complexes.

AWS Fargate est une technologie qui peut être utilisée avec Amazon ECS et Amazon EKS. Il vous permet d'exécuter des conteneurs sans gérer de serveurs ou de clusters d'instances Amazon EC2.

fargate élimine le besoin de configurer, de mettre à l'échelle ou de provisionner des clusters de machines virtuelles pour exécuter des conteneurs. Il n'est pas nécessaire de sélectionner des types de serveurs, de planifier la mise à l'échelle du cluster ou d'optimiser l'emballage du cluster.

Nous pouvons utiliser le type de lancement Fargate ou un fournisseur de capacité Fargate pour exécuter vos tâches et services Amazon ECS. Pour utiliser Fargate, vous pouvez empaqueter votre application dans conteneurs, spécifiez les exigences en matière de système d'exploitation, de processeur et de mémoire, configurez la mise en réseau et les politiques IAM, puis lancez-le.

Il n'est pas nécessaire de maintenir une capacité CPU et RAM de base pour héberger des conteneurs. Nous pouvons indiquer à AWS la quantité de ressources dont une tâche a besoin et laisser le reste de la tâche à AWS. Chaque tâche Fargate a sa barrière d'isolation, de sorte qu'elle ne partage pas le noyau, le processeur, la mémoire ou l'interface réseau élastique sous-jacents avec d'autres tâches.

Comment fonctionne Fargate ?

Fargate works by allowing you to deploy containers without setting up or managing the infrastructure that will host them. You tell Fargate which container images you want to run and how many CPU and memory resources you wish to assign. The host servers are then automatically provisioned by Fargate. When your containers are running, you only pay for the resources used.

Fargate est un moteur informatique sans serveur, car il élimine le besoin pour les utilisateurs finaux de gérer les serveurs qui hébergent les conteneurs. Pour être clair, les serveurs sont toujours là ; AWS les gère simplement. Fargate ne doit pas être confondu avec AWS Lambda, un autre service informatique sans serveur qui n'a pas été créé avec les conteneurs à l'esprit (bien que Lamba prenne désormais en charge le déploiement d'images de conteneurs).

Comment Fargate aide-t-il?

AWS Fargate calcule la quantité exacte de calcul, de mémoire et d'autres ressources requises pour vos tâches, vous n'avez donc pas à vous soucier du choix des types d'instance ou de la mise à l'échelle de la capacité du cluster.

Il vous permet de payer les ressources dont vous avez besoin pour exploiter vos conteneurs au fur et à mesure de leur utilisation, en évitant le surprovisionnement et en payant pour des serveurs dont vous n'avez pas besoin.

Les tâches Fargate (pods) s'exécutent dans leurs propres noyaux, ce qui se traduit par un environnement de calcul sûr et isolé avec des charges de travail isolées et une sécurité accrue.

Il permet aux équipes de concevoir et d'exécuter des applications à l'aide de conteneurs ECS ou EKS sans avoir à gérer des tâches chronophages gestion des infrastructures des activités telles que la mise à l'échelle et la sécurisation des serveurs ou l'application de correctifs aux systèmes d'exploitation.

Avec des connexions intégrées avec d'autres services AWS comme Amazon CloudWatch Container Insights, AWS Fargate offre un haut niveau d'observabilité. Vous pouvez également utiliser plusieurs technologies tierces pour collecter des journaux et des métriques.

Nous pouvons également utiliser efficacement la vaste gamme de services AWS lors de l'utilisation de conteneurs avec Fargate.

Fargate will constantly launch and scale computing resources to fit the container’s requirements, preventing over-provisioning and ensuring you don’t pay for resources you don’t use. You can also calculate a savings strategy, the Fargate Spot option can save you up to 70% off ordinary costs, but it’s only optimal for interruptible applications.

Composants de Fargate

Clusters

Un regroupement logique de tâches ou de services est un cluster Amazon ECS. Les clusters peuvent être utilisés pour isoler vos applications. Lorsque vous utilisez Fargate pour effectuer vos tâches, il gère les ressources de votre cluster.

Définitions des tâches

Une définition de tâche est un fichier texte qui décrit au moins un des conteneurs de votre application. C'est un fichier JSON. Il peut être utilisé pour décrire jusqu'à dix conteneurs à la fois. La définition de tâche de votre application sert de modèle. Il spécifie les nombreux paramètres de votre application.

Par exemple, vous pouvez l'utiliser pour définir les paramètres du système d'exploitation, les conteneurs à utiliser, les ports à ouvrir pour votre application et les volumes de données à utiliser avec les conteneurs de la tâche. Les exigences de votre application déterminent les paramètres particuliers disponibles pour la définition des tâches.

Tâches

A task is a cluster-level instantiation of a task definition. Once you’ve created a task definition for your application in Amazon ECS, you can choose the number of tasks that will run on your cluster. We can run a task as part of a service or a separate process.

Service

Dans un cluster Amazon ECS, vous pouvez utiliser un service Amazon ECS pour exécuter et gérer simultanément le nombre de tâches souhaité. Le planificateur de service Amazon ECS exécute une autre instance en fonction de la définition de votre tâche si l'une de vos tâches échoue ou s'arrête pour une raison quelconque. Il le fait pour le remplacer et maintenir le nombre de tâches dans le service au niveau correct.

Système d'exploitation et architecture du processeur

Les systèmes d'exploitation pris en charge par Fargate sont Amazon Linux 2, Windows Server 2019 Full et Windows Server 2019 Core.

ARM et X86_64 sont les deux architectures disponibles pour la définition de tâche Amazon ECS. Si vous utilisez des conteneurs Windows, vous devez disposer d'une architecture CPU X86_64. En revanche, si vous utilisez des conteneurs Linux, vous pouvez utiliser l'architecture ARM64 pour vos applications basées sur ARM et l'architecture CPU X86_64.

ECS avec instances EC2 Vs. ECS avec AWS Fargate 

Dans le Modèle d'instance EC2, les conteneurs sont déployés sur les instances EC2 (VM) du cluster. ECS les gère conjointement avec les tâches qui font partie de la définition de tâche.

👍

  • Le type d'instance EC2 utilisé ici est entièrement sous votre contrôle.
  • Vous pouvez utiliser des instances ponctuelles qui réduisent les coûts jusqu'à 90 %.

Contre

  • Vous devez vous occuper des correctifs de sécurité et de la sécurité réseau des instances ; vous êtes également responsable de leur évolutivité dans le cluster.

Dans le Modèle Fargate, vous n'avez plus à vous soucier des instances ou des serveurs EC2. Sélectionnez la configuration CPU et mémoire requise, et Fargate déploiera vos conteneurs.

👍

  • Vous n'avez pas à gérer de serveurs.
  • AWS est responsable de la disponibilité et de l'évolutivité, mais il est toujours recommandé de sélectionner la mémoire et le processeur appropriés ; sinon, notre application risque de devenir indisponible.
  • Si vous décidez d'utiliser Fargate Spot, vous pouvez obtenir jusqu'à 70 % de réduction sur le prix Fargate.

Contre

  • ECS avec AWS Fargate ne prend en charge qu'un seul mode de mise en réseau -awsvpc-. Par conséquent, cela limite votre contrôle sur la couche réseau.

EKS sans Fargate Vs. EKS avec Fargate

In EKS sans le modèle Fargate, you must decide how large the cluster should be ahead of time. You can always change the nodes manually later, but it is troublesome compared to specifying the ideal size from the start.

👍

  • Ce modèle vous donne plus de contrôle de différentes manières, comme vous pouvez spécifier des variables de configuration telles que HostNetwork et HostPort.
  • Fargate n'est pas pris en charge dans toutes les régions, vous préférez donc utiliser EKS sans Fargate si vous souhaitez que votre conteneur soit disponible dans plus de régions.

Inconvénients 👎

  • EKS sans Fargate est un peu difficile à utiliser.

In EKS avec le modèle Fargate, vous n'avez pas besoin de spécifier la taille des clusters au préalable.

👍

  • EKS avec Fargate est plus sécurisé car il s'exécute dans des machines virtuelles dédiées. Le fait qu'il ne supporte pas le mode privilégié est une sorte de fonctionnalité de sécurité.
  • C'est moins cher sur le long terme.

Contre

  • Cela vous donne moins de contrôle de différentes manières

Conclusion

Fargate is an extremely powerful and mature tool. It saves you cost, time, and a lot of effort by doing all the infrastructure management for you. Fargate is especially beneficial if you are new to conteneurs et souhaitez simplement vous concentrer sur la création de votre application plutôt que sur sa maintenance.

Partager sur:
  • Naman Yach
    Auteur
    Naman Yash est un professionnel de l'ingénierie logicielle avec plus de 2 ans d'expérience en ingénierie cloud chez JP Morgan Chase. Actuellement, Naman travaille en tant qu'ingénieur logiciel indépendant et rédacteur de contenu. Il détient plusieurs certifications AWS et Terraform…

Merci à nos commanditaires

Plus de bonnes lectures sur le Cloud Computing

Alimentez votre entreprise

Some of the tools and services to help your business grow.
  • L'outil de synthèse vocale qui utilise l'IA pour générer des voix humaines réalistes.

    Essayez Murf AI
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.

    Essayez Brightdata
  • Monday.com est un système d'exploitation de travail tout-en-un pour vous aider à gérer les projets, les tâches, le travail, les ventes, le CRM, les opérations, workflowset plus encore.

    Essayez Monday
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.

    Essayez Intruder