デプロイスケーリング

スケーリング

lizard scale を使って、サービスのレプリカを追加したり、CPU やメモリを増やしたり、アドオンストレージを拡張したりできます。サービスをゼロまでスケールするには、アイドル時にスリープ させるか、一時停止 します。

サービスをスケールする

lizard scale --service api --replicas 3
lizard scale --service api --cpu 2 --memory 2048
フラグ適用対象許可値
--replicas <n>apps1 からプランの上限まで。トライアル中は 1、すべての有料プランと Enterprise では 5
--cpu <cores>apps と addonswhole cores: 1, 2, 3, 4
--memory <mb>apps と addons128〜8192 MB (1 MB 刻み)
--storage <mb>addons only, grow-only512, 1024, 2048, 4096, 8192, 16384

フラグは 1 つのコマンドで組み合わせて指定できます。レプリカの変更はリビルドなしでロールアウトされます。CPU とメモリの変更では、新しい上限でサービスが再起動されます。

水平スケーリング

ロードバランサーの背後で、アプリの複数レプリカを実行します:

lizard scale --service api --replicas 5

各レプリカはそれぞれ独立した pod です。レプリカを相互に置き換え可能にするため、アプリはステートレスにしてください(状態は Managed Postgres、Managed Redis、または Managed Object Storage に保存します)。

垂直スケーリング

単一レプリカにより多くのリソースを割り当てます:

lizard scale --service api --cpu 4 --memory 8192

アドオンストレージの拡張

アドオンのデータボリュームは 拡張のみ可能 です。ストレージは増やせますが、縮小はできません:

lizard scale --service postgres --storage 8192

アイドル時にスリープする

lizard sleep --on を使うと、Web サービスはトラフィックがないときにスリープし、次のリクエストで約 1 秒で起動します。デフォルトでは、トラフィックのない状態が 10 分続くとスリープします。--idle で 5〜1440 分に設定できます。オンにすると、サービスが 1 回再起動します。使えるのは、ポートがありレプリカが 1 つのサービスだけです。そのためワーカーには使えません。Managed Postgres と Managed Redis もスリープできます。

lizard sleep --on --idle 30 --service api
lizard sleep --off --service api    # always on

lizard sleep を参照してください。

サービスを一時停止する

lizard pause は、サービスやデータベースを削除せずに停止します。ゼロまでスケールし、URL、パスワード、設定、データは残ります。lizard resume で再び起動します。一時停止した GitHub サービスは、再開するまで push を無視します。

lizard pause api
lizard resume api

プロジェクトやワークスペースのすべてのサービスを一時停止するには、lizard project pause または lizard workspace pause を使います。lizard pause を参照してください。

確認

lizard ps                 # replica status + URL
lizard events             # deploy history + current replicas
lizard metrics            # live CPU / memory / network / disk
lizard metrics --cost     # cost instead of metrics

レプリカの変更ではデプロイが作られないため、lizard events には表示されません。代わりに Replicas テーブルを確認してください。

関連項目

更新日