Kinstaのアプリケーションホスティングで、仮想ディスク容量を追加できるようになりました。永続データストレージという選択肢のご紹介です。
この永続ストレージは、データベースやサードパーティファイルストア内の永続コンテンツへのアプリケーションの接続を補完する役割を果たします。「永続」という言葉が示すとおり、永続ストレージに保存されたデータは、アプリケーション自体のビルドやデプロイメントの枠を超えて存続します。
この種のストレージは、実行中にディスクに保存されたデータを蓄積していく性質のアプリケーションには不可欠です。
例えば、Kinstaのアプリケーションホスティングプラットフォームを支える開発チームの技術リーダーであるEvelin Szabadosは、「アプリケーション内で維持・共有されるデータを作成する消費税計算機能や、複数のプロセスで同時に保存・アクセスする必要がある大規模なデータセットを持つ機械学習アプリケーションを想像してみてください」と語ります。
永続ストレージとコンテナ化アプリケーション
Szabadosによると、Kinstaで採用されているようなコンテナベースの環境では、コードとデータの両方がエフェメラルな存在であることが、アプリケーションのデフォルトの仕様となっています。
「コンテナ化されたアプリケーションのデプロイメントの重要な特性の1つが、デプロイメント中に作成されたコンテナが破棄され、その後のデプロイメントごとに再び作成されることです。つまり、アプリケーションによって生成されたデータも破棄されることを意味します」
KinstaはコンテナオーケストレーションプラットフォームのKubernetesを使用しており、エフェメラルストレージの代替として永続ボリューム(PV)を提供しています。
「PVはアプリケーションのポッド(Kubernetesのデプロイ可能な最小単位)に付加することができます。ポッドは基本的に、アプリケーションホスティングの顧客が定義したプロセスと等しい」と彼女は続けます。
永続ストレージは、Kinstaのアプリケーションで利用可能な3つのプロセスタイプのうち、ウェブサービスと バックグラウンドプロセスの2つに紐づけることができます。
Szabadosは「各プロセスはポッドを表し、それぞれが独自の永続ストレージを持つことができます」と説明します。
アプリケーションへの永続ストレージの追加
アプリケーションホスティングでは、アプリケーションの作成、編集、監視に使用するのと同じMyKinstaを通じて永続ストレージを管理できます。
MyKinstaでアプリケーションを作成する際、「リソース」タブにウェブサービスとバックグラウンドプロセスの「ディスク」オプションが表示されます(ディスクはcronジョブでは使用できません)。
アプリケーションのウェブサービスプロセスは1つですが、複数のバックグラウンドプロセスを作成し、任意でそのいずれかにディスク容量を追加できます。
各「ディスク」はKubernetesの永続ボリュームを指します。
「リソース」タブで「ディスク」をクリックして説明を展開します。
「ディスク」の項目から、新しいディスクのマウントパスを指定できます。
以下を除き、アプリケーションの構成に合ったマウントパスを選択可能です。
- /etc/
- /var/
- /lib/
- /usr/local/
- /mnt/
- /app/
- /workspace/
- /layers/
- /root/
- /
マウントパスを入力したら、アプリのストレージ容量を選択します。
注)ディスクのサイズはいつでも増やすことができますが、減らすことはできません(同じプロジェクトをより少ないディスク容量でデプロイするには、希望の仕様で新たにアプリケーションを作成する必要があります)。
アプリケーションのディスク設定の編集
ストレージの設定を変更するには、MyKinstaの「アプリケーション」に移動してアプリケーションを見つけ、左側のメニューで「ディスク」をクリックします。次に、「操作」にある鉛筆アイコンをクリックします。
以下では、ディスクのマウントパス(以前は/var/lib/data
)を/var/lib/content
に変更しています。
「変更を保存」ボタンをクリックした後、Kinstaのウェブターミナルを使用してマウントパスの変更が直ちに行われたことを確認できます。
永続データを安全に保管
Kinstaでは、永続データのバックアップを毎日生成し、各バックアップを7日間保持しています。カスタマーサポートにより、随時リクエストに応じてバックアップを復元することも可能です。
バックアップを復元すると、その時点で永続ストレージにあるコンテンツが上書きされますのでご注意ください。また、アプリケーション自体を削除すると、それに関連するすべてのバックアップが自動で削除されます。
永続ストレージでアプリを展開
永続ストレージを使用したアプリケーションのアイデアをお持ちなら、早速Kinstaのアプリケーションホスティングプラットフォームをお試しください。
- GitHub、GitLab、BitbucketなどのGitサービスからのデプロイ方法についてはクイックスタートの説明をチェック
- 永続ストレージドキュメントを確認
- MyKinstaアカウントを作成して楽々ビルドを開始
デプロイすると、お客様のコードと永続ストレージサービスは、C2仮想マシンを用い、Google Cloud Platformの最上位インフラストラクチャ上で実行されます。
アプリケーションとそのデータを支える堅牢なソリューションです。