最初の質問: インスタンスを垂直方向にスケーリングするにはどうすればよいですか? 回答: インスタンスを再作成し、古いインスタンスを破棄する必要があります。既存のインスタンスを単純に小さくしたり大きくしたりすることはできません。幸いなことに、セットアップ全体をスクリプト化できます。GCE では、 というフラグを追加できます--metadata-from-file
。systemd を使用している場合は、効果のあるものをお勧めします--metadata-from-file user-data=cloud-config.yaml
。あなたは Ubuntu を使用しており、systemd に対する Ubuntu のサポートはせいぜい大雑把であるため、おそらく次のようなことをしたいと思うでしょう:--metadata-from-file startup-script=my-startup-script.sh
展開をスクリプト化すると、展開のスケーリング、再作成、文書化が可能になり、クラウド コンピューティングのベスト プラクティスになります。
2 番目の質問: インスタンス グループと負荷分散グループはどのように機能しますか? 回答: GCE のインスタンス グループは、ほとんどの場合、「管理された」種類のものです。これにより、インスタンスの動作方法を定義するテンプレートを作成できます。次に、ロード バランサーの背後でそれらを水平方向にスケーリング (つまり、追加または削除) できます。プリエンプティブル インスタンスを活用して、現金を節約することもできます。
3 番目の質問: 更新をプッシュするにはどうすればよいですか? これは、デプロイ方法によって異なります。しかし、一般的には次のように言えます。
- Docker を使用する場合は、新しいイメージを GCR にプッシュし、インスタンスにプルさせます。
- CM (Salt や Ansible など) を使用する場合は、それらのツールを通常どおり使用してください。彼らはGCEでうまく動作します
- 起動スクリプトを使用する場合は、次のようなことを行います
gcloud compute instances myinstance add-metadata metadata-from-file startup-script=newScript.sh
(その後再起動します)
- すべてがマネージド インスタンス テンプレートに含まれている場合は、テンプレートを更新します。