Getting started with Amazon EKS (2) とコスト計算

前回 に引き続き、EKS でサンプルの nginx pod を外部公開するまでを実施しました。 docs.aws.amazon.com

Service の外部公開

Getting Started with Amazon EKS で紹介されているデプロイだと Type:ClusterIP でクラスタ内部への公開なので、これを type: LoadBalancer にして外部へ公開する YAML を作成しました。チュートリアルで紹介されている YAML との差分は以下になります。

$ diff -Nurp eks-sample-service.yaml eks-sample-service-loadbalancer.yaml
--- eks-sample-service.yaml 2022-02-20 20:16:54.000000000 +0900
+++ eks-sample-service-loadbalancer.yaml    2022-02-20 22:54:35.000000000 +0900
@@ -1,11 +1,12 @@
 apiVersion: v1
 kind: Service
 metadata:
-  name: eks-sample-linux-service
+  name: eks-sample-linux-service-loadbalancer
   namespace: eks-sample-app
   labels:
     app: eks-sample-linux-app
 spec:
+  type: LoadBalancer
   selector:
     app: eks-sample-linux-app
   ports:

Amazon EKS クラスターで実行されている Kubernetes Services を公開する

こちらを適用すると LoadBalancer として AWS 内部で ELB が作成されて外部からアクセスすることが可能になります。

f:id:kyagi:20220220230353p:plain f:id:kyagi:20220220230557p:plain

ダッシュボード設定

ダッシュボードの設定は以下 2 つを実施することになります。

docs.aws.amazon.com

docs.aws.amazon.com

f:id:kyagi:20220220225811p:plain

eks 固有の pod

kube-system namespace に aws-node という pod が 2 つあがっています。これは eks 固有の pod のようです。

f:id:kyagi:20220220234720p:plain

コスト計算

N.Virginia で試算すると

EC2(t3.medium * 2): 199.68 円= 0.0416USD * 100 * 24 * 2 EKS: 240 円= 0.1USD * 100 * 24

で合計 440円/日になります。月換算だと 1.3万円。これは EC2(t3.nano) を 1 ヶ月立てっぱなしにした 374円/月より高いです(374.4 = 0.0052 * 100 * 24 * 30)。さらにここに ELB が載ってきます。EKS での個人利用はちょっときついですね。