View a markdown version of this page

Exemple de données de répartition des coûts fractionnés - Exportations de données AWS

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.

Exemple de données de répartition des coûts fractionnés

L'objectif de l'exemple suivant est de vous montrer comment les données de répartition des coûts partagés sont calculées en calculant le coût des services Amazon ECS individuels, des tâches dans les clusters Amazon ECS, ainsi que de l'espace de noms et des pods Kubernetes dans les clusters Amazon EKS. Les taux utilisés dans cet exemple sont fournis à titre indicatif uniquement.

Note

L'exemple montre l'espace de noms et les pods Kubernetes exécutés dans des clusters Amazon EKS. Nous pouvons ensuite appliquer le même modèle de coût au service Amazon ECS et aux tâches exécutées dans un cluster Amazon ECS.

Vous pouvez utiliser les produits suivants en une heure :

  • Cluster partagé à instance unique (m5.xlarge) avec deux espaces de noms et quatre pods, fonctionnant pendant une heure complète.

  • La configuration de l'instance est de 4 vCPU et 16 Go de mémoire.

  • Le coût amorti de l'instance est de 1 dollar de l'heure.

Les données de répartition des coûts divisés utilisent des poids unitaires relatifs pour le processeur et la mémoire sur la base d'un ratio de 9:1. Ceci est dérivé des prix par vCPU par heure et par Go par heure en. AWS Fargate

Étape 1 : Calculez le coût unitaire du processeur et de la mémoire

Unit-cost-per-resource = Hourly-instance-cost/((Memory-weight * Memory-available) + (CPU-weight * CPU-available))

= 1$ (1 * 16 Go) + (9* 4 vCPU)) = 0,02$

Cost-per-vCPU-hour = CPU-weight * Unit-cost-per-resource

= 9* 0,02$ = 0,17$

Cost-per-GB-hour = Memory-weight * Unit-cost-per-resource

= 1* 0,02$ = 0,02$

Instance Instance type vCPU-available Memory-available Amortized-cost-per-hour Cost-per-vCPU-hour Cost-per-GB-hour
Instance1 m5.xlarge 4 16 1$ 0,17$ 0,02$

Étape 2 : Calculez la capacité allouée et la capacité inutilisée de l'instance

  • Capacité allouée : mémoire et vCPU alloués au pod Kubernetes depuis l'instance EC2 parent, définis comme le maximum de capacité utilisée et réservée.

    Note

    Si les données d'utilisation de la mémoire ou du vCPU ne sont pas disponibles, les données de réservation seront utilisées à la place. Pour plus d'informations, consultez les rapports d'utilisation d'Amazon ECS ou la surveillance des coûts Amazon EKS.

  • Capacité inutilisée de l'instance : capacité inutilisée du vCPU et de la mémoire.

Pod1-Allocated-vCPU = Max (1 vCPU, 0.1 vCPU)= 1 vCPU

Pod1-Allocated-memory = Max (4 GB, 3 GB)= 4 Go

Instance-Unused-vCPU = Max (CPU-available - SUM(Allocated-vCPU), 0)= Maximum (4 — 4,9, 0) = 0

Instance-Unused-memory = Max (Memory-available - SUM(Allocated-memory), 0)= Maximum (16 — 14, 0) = 2 Go

Dans cet exemple, le processeur de l'instance est dépassé par abonnement, attribué à Pod2 qui a utilisé plus de vCPU que ce qui était réservé.

Pod name Namespace Reserved-vCPU Used-vCPU Allocated-vCPU Reserved-memory Used-memory Allocated-memory
Pod1 Namespace1 1 0.1 1 4 3 4
Pod2 Namespace2 1 1.9 1.9 4 6 6
Pod3 Namespace1 1 0.5 1 2 2 2
Pod4 Namespace2 1 0.5 1 2 2 2
Unused Unused 0 2
4,9 16

Étape 3 : Calculez les ratios d'utilisation fractionnés

  • Taux d'utilisation fractionné : pourcentage du processeur ou de la mémoire utilisé par le pod Kubernetes par rapport à l'ensemble du processeur ou de la mémoire disponible sur l'instance EC2.

  • Taux d'utilisation : pourcentage de processeur ou de mémoire utilisé par le pod Kubernetes par rapport à l'ensemble du processeur ou de la mémoire utilisé sur l'instance EC2 (c'est-à-dire sans tenir compte du processeur ou de la mémoire inutilisés de l'instance).

Pod1-vCPU-split-usage-ratio = Allocated-vCPU / Total-vCPU

= 1 vCPU/4,9 vCPU = 0,204

Pod1-Memory-split-usage-ratio = Allocated-GB / Total-GB

= 4 GO/16 GO = 0,250

Pod1-vCPU-unused-ratio = Pod1-vCPU-split-usage-ratio / (Total-CPU-split-usage-ratio – Instance-unused-CPU)(défini sur 0 si Instance-unused-CPU c'est 0)

= 0 (puisque Instance-unused-CPU c'est 0)

Pod1-Memory-unused-ratio = Pod1-Memory-split-usage-ratio / (Total-Memory-split-usage-ratio – Instance-unused-memory)(défini sur 0 si Instance-unused-memory c'est 0)

= 0,250/(1-0,125) = 0,286

Pod name Namespace vCPU-split-usage-ratio vCPU-unused-ratio Memory-split-usage-ratio Memory-unused-ratio
Pod1 Namespace1 0,204 0 0,250 0,286
Pod2 Namespace2 0,388 0 0,375 0,429
Pod3 Namespace1 0,204 0 0.125 0.143
Pod4 Namespace2 0,204 0 0.125 0.143
Unused Unused 0 0.125
1 1

Étape 4 : Calculez le coût partagé et les coûts non utilisés

  • Coût partagé : allocation du coût par utilisation du coût de l'instance EC2 en fonction du processeur alloué et de l'utilisation de la mémoire par le pod Kubernetes.

  • Coût d'instance non utilisé : coût des ressources de processeur ou de mémoire non utilisées sur l'instance.

Pod1-Split-cost = (Pod1-vCPU-split-usage-ratio * vCPU-available * Cost-per-vCPU-hour) + (Pod1-Memory-split-usage-ratio * Memory-available * Cost-per-GB-hour)

= (0,204 * 4 vCPU * 0,17$) + (0,25 * 16 Go* 0,02$) = 0,22$

Pod1-Unused-cost = (Pod1-vCPU-unused-ratio * Instance-vCPU-unused-ratio * vCPU-available * Cost-per-VCPU-hour) + (Pod1-Memory-unused-ratio * Instance-Memory-unused ratio * Memory-available * Cost-per-GB-hour)

= (0 * 0 * 4 * 0,17$) + (0,286 * 0,125 * 16 * 0,02$) = 0,01$

Pod1-Total-split-cost = Pod1-Split-cost + Pod1-Unused-cost

= 0,23$

Pod name Namespace Split-cost Unused-cost Total-split-cost
Pod1 Namespace1 0,22$ 0,01$ 0,23$
Pod2 Namespace2 0,38$ 0,02$ 0,40$
Pod3 Namespace1 0,18$ 0,01$ 0,19$
Pod4 Namespace2 0,18$ 0,01$ 0,19$
Unused Unused 0,04$
1$ 0,04$ 1$

Le coût du service est la somme du coût des pods associés à chaque espace de noms.

Coût total de Namespace1 = 0,23$ + 0,19$ = 0,42$

Coût total de Namespace2 = 0,40$ + 0,19$ = 0,59$

Exemple de AWS CUR

Si vous avez un Savings Plans couvrant l'utilisation complète de l'instance EC2 au cours de la période de facturation, les coûts amortis sont calculés à l'aide de. savingsPlan/SavingsPlanEffectiveCost

Table showing EC2 instance usage details with Savings Plans and cost breakdown.

Si vous disposez d'un plan Savings couvrant l'utilisation partielle de l'instance EC2 au cours de la période de facturation et que le reste de l'utilisation de l'instance EC2 est facturé aux tarifs à la demande, les coûts amortis de l'instance EC2 sont calculés en utilisant savingsPlan/SavingsPlanEffectiveCost (pour SavingsPlanCoveredUsage) + lineItem/UnblendedCost (pour une utilisation à la demande).

Table showing EC2 instance usage details, costs, and savings plan information.