すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:EphemeralStorage の追加

最終更新日:Feb 08, 2025

デフォルトでは、各 ACS ポッドには 30 GiB の無料のエフェメラルストレージ空間(EphemeralStorage)が提供されます。デフォルトサイズがビジネス要件を満たしていない場合は、ストレージ空間を拡張できます。

背景情報

デフォルトでは、各 ACS ポッドには、次の図に示すように、30 GiB の無料のエフェメラルストレージ空間が提供されます。

临时存储1

重要

ACS ポッドで使用されるコンテナイメージは、エフェメラルストレージ空間に保存されます。コンテナイメージによって占有されるエフェメラルストレージ空間は、コンテナイメージのサイズの少なくとも 2 倍です。実際の空間使用量は、コンテナイメージの圧縮率によって異なります。

課金

EphemeralStorage が 30 GiB を超えると、超過分はディスクの課金ルールに基づいて課金されます。

料金 = ディスクの単価 × Ephemeral ストレージ超過分 × 期間。

  • ディスクの単価:PL1 ESSD の従量課金価格。さまざまなリージョンにおけるディスクの単価の詳細については、「EBS の料金」をご参照ください。

  • Ephemeral ストレージ超過分:宣言した追加のストレージ空間。

  • 期間:秒単位で測定される期間。EphemeralStorage は ACS ポッドと共に作成および解放され、その稼働時間は ACS ポッドの稼働時間と同じです。

設定方法

ACS では、次の 2 つの方法を使用して ACS ポッドに EphemeralStorage を追加できます。

  • 方法 1(推奨):アノテーションを追加する

    ACS ポッドの作成時に alibabacloud.com/extra-ephemeral-storage アノテーションを追加して、EphemeralStorage のサイズを宣言できます。

  • 方法 2:コンテナーリソースを設定する

    ポッドの作成時に、ACS ポッドの .resources.requests.ephemeral-storage で EphemeralStorage のサイズを宣言できます。EphemeralStorage のサイズが 30 GiB より小さい場合、実際の EphemeralStorage は自動的に 30 GiB に拡張されます。EphemeralStorage のサイズが 30 GiB を超える場合、超過分は追加のストレージ空間です。

たとえば、ACS ポッドに 20 GiB のエフェメラルストレージ空間を追加するとします。この場合、EphemeralStorage = デフォルト 30 GiB + 追加 20 GiB = 50 GiB です。

  1. 次の内容に基づいて、extra-storage.yaml という名前の YAML ファイルを作成します。

    方法 1:アノテーションを追加する

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: test
      labels:
        app: nginx
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
          annotations:
            alibabacloud.com/extra-ephemeral-storage: "20Gi"  # 追加のストレージ空間を宣言します。
        spec:
          containers:
          - name: nginx
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
            ports:
            - containerPort: 80

    方法 2:コンテナーリソースを設定する

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: test
      labels:
        app: nginx
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
            ports:
            - containerPort: 80
            resources: 
              requests: 
                ephemeral-storage: 50Gi   #  EphemeralStorage のサイズを宣言します。
  2. ワークロードを作成します。

    kubectl apply -f extra-storage.yaml
  3. ポッドのデプロイメントを表示します。

    kubectl get pod

    予想される出力:

    NAME                  READY   STATUS    RESTARTS   AGE
    test-ff8767b7b-****   1/1     Running   0          54s
  4. EphemeralStorage が有効になっているかどうかを確認します。

    1. ポッドアノテーションを表示して、EphemeralStorage のサイズを確認します。

      alibabacloud.com/pod-ephemeral-storage の値は、ACS ポッドのエフェメラルストレージ空間を GiB 単位で示します。

      kubectl describe pod test-ff8767b7b-**** | grep alibabacloud.com/pod-ephemeral-storage

      出力は、EphemeralStorage のサイズが 50 GiB であることを示しています。

      alibabacloud.com/pod-ephemeral-storage: 50Gi
    2. exec コマンドを実行してコンテナーにログインし、df -h コマンドを実行して、ファイルシステムパーティションが拡張されているかどうかを確認します。

      kubectl exec -it test-ff8767b7b-**** -- sh
      df -h

      出力は、実際に使用可能なストレージ空間(overlay)が 50 GiB であることを示しています。

      Filesystem      Size  Used Avail Use% Mounted on
      overlay          50G  2.7G   45G   6% /
      tmpfs            64M     0   64M   0% /dev
      tmpfs           2.8G     0  2.8G   0% /sys/fs/cgroup
      /dev/vda5        50G  2.7G   45G   6% /etc/hosts
      shm              64M     0   64M   0% /dev/shm
      tmpfs           4.0G   12K  4.0G   1% /run/secrets/kubernetes.io/serviceaccount
      tmpfs           2.8G     0  2.8G   0% /proc/acpi
      tmpfs           2.8G     0  2.8G   0% /proc/scsi
      tmpfs           2.8G     0  2.8G   0% /sys/firmware