AWS EKS on Fargete
では主にPodをホスティングしているFargateのvCPU
memory
に課金がされます。
各podが使用しているvCPU
memory
は kubectl describe pods
で取得できる、Annotations: CapacityProvisioned
にて確認することができます
$ kubectl describe pods
Name: hogehoge
Namespace: default
Priority: 2000001000
Priority Class Name: system-node-critical
Node: fargate-ip-xxxx.ap-northeast-1.compute.internal/xxxx
Start Time: Tue, 14 Sep 2021 13:00:51 +0900
Labels: app=hogehoge
eks.amazonaws.com/fargate-profile=fp-default
Annotations: CapacityProvisioned: 0.25vCPU 0.5GB
Logging: LoggingDisabled: LOGGING_CONFIGMAP_NOT_FOUND
kubernetes.io/psp: eks.privileged
またdescribe pods
以外にもkubectl get pods -o json
でJSON形式でpodごとの情報を出力することができるので、jq
と組み合わせて以下のように取得することができます
$ kubectl get pods --all-namespaces -o json \
| jq -r '.items | .[] | [.metadata.name, .metadata.annotations.CapacityProvisioned] | @tsv' \
| grep vCPU
hogehoge 0.25vCPU 0.5GB
aws-load-balancer-controller-75887bfdc9-tbl27 0.25vCPU 0.5GB
coredns-859bbbb85d-vdw97 0.25vCPU 0.5GB
coredns-859bbbb85d-wbw9p 0.25vCPU 0.5GB
kube-system
で動くようなpodにも課金されるので注意が必要です