コンテンツにスキップ
Dashboard

ストレージとライフサイクル

SnapVM のマシンは、ファイルシステムを永続化しながらコンピュートを停止またはハイバネーションできる点が重要です。

永続ファイルシステムには次のものが残ります。

  • ソースコードと Git リポジトリ
  • インストール済みパッケージと言語ランタイム
  • 生成ファイル
  • ローカル設定
  • ディスク上のデータベース
  • サービス定義

これにより、コンピュートがセッション間でスリープしても、長く使う開発用コンピュータのように扱えます。

次のものは一時的なものとして扱います。

  • サービスではない実行中プロセス
  • インメモリキャッシュ
  • 保存していないエディタバッファ
  • 一時ソケット
  • ランタイム内のネットワーク接続

復帰後に必要なプロセスはサービスとして定義してください。必要なデータはディスクまたはリモートの永続ストアに書き込みます。

停止またはハイバネーション中のマシンは、次の操作で復帰できます。

  • ユーザーがコンソールでターミナルを開く
  • ブラウザがマシンの HTTPS URL にリクエストする
  • API が start リクエストを受け取る
  • デプロイ固有のスケジューラやワーカーがマシンを起動する

復帰時間はランタイム種別、リージョン、イメージサイズ、サービス起動コストによって変わります。

次のパターンを基本にします。

  1. プロジェクトファイルは予測可能なワークスペースディレクトリに置きます。
  2. マシン削除前にソースコードを Git にコミットします。
  3. 長時間動かすプロセスはサービスにします。
  4. アイドル時は停止またはハイバネーションを使います。
  5. 削除は取り消せないものとして扱います。
症状確認すること
ファイルはあるがサーバーが落ちている

サーバーが対話プロセスだった可能性があります。サービス化してください

マシン URL は復帰するがエラーになるサービスポートとログを確認します
ターミナルに接続できないマシン状態、エージェントヘルス、ゲートウェイログを確認します
復帰が遅いサービス起動コストとイメージまたはランタイムサイズを確認します