LoginSignup
6
2

More than 3 years have passed since last update.

GCEインスタンスの起動/停止をローカルマシンと同期する

Last updated at Posted at 2019-12-03

この記事は,マイナビ Advent Calendar 2019 3日目の記事となります.

やりたいこと

クラウド(GCP)上のマシンを作業に使っています。作業を行っていない期間にインスタンスの停止をしないと料金がかさんでしまうのですが、いちいちコンソールを開いたりコマンドを叩くのはめんどうでした。
ローカルのPCを立ち上げるとGCEインスタンスが立ち上がり、シャットダウンすると同様にシャットダウンするようにしたい!
windowsのローカルグループポリシーを使うことで、簡単に設定をすることができました。

ローカルグループポリシー

ローカルグループポリシーはその名の通り、ローカルなコンピュータに設定を行う方法です。
スタートアップ・シャットダウンスクリプトの設定や、パスワードの長さ制限などを行うことができます。

手順

Google Cloud SDKのインストール

ここを参考に。gcloudコマンドが実行できることを確認してください。

ローカルグループポリシーの設定

ここを参考に。「ファイル名を指定して実行」で「gpedit.msc」を実行し、ローカルグループポリシーエディタを起動。今回は作業用ユーザーでのみスクリプトを実行したいので、「ユーザーの構成」→「Windowsの設定」→「スクリプト(ログオン/ログオフ)」を選択。
image.png
起動の設定方法は「ログオン」→「追加」から、「スクリプト名」にgcloud.cmdのパスを「スクリプトのパラメーター」に起動用のパラメータ(compute instances start インスタンス名 --async)を設定。
image.png

ログオフのも同様に停止用スクリプト(compute instances stop oz-sample --async)を設定。
--asyncしないとインスタンスの起動/停止を確認するまでコマンドが停止しないため、2分ぐらい待つことになるので注意。

動作確認

GCEインスタンスが立ち上がっていることを確認
起動中.png
ローカルPCをシャットダウンして、スマホアプリで停止を確認
停止.png
ローカルPCを立ち上げて、スマホアプリ上で起動していることを確認
再起動.png
ちゃんと起動/停止してくれているようです!(スマホアプリ便利)

雑感

ログオン・ログオフのスクリプトを設定すれば、ほかにもいろいろはかどるかもしれません。たとえばログオフ時に自動でタイムカードに打刻したりでしょうか?いろいろできそうですね。

リンク

https://cloud.google.com/sdk/docs/quickstart-windows?hl=ja
http://pineplanter.moo.jp/non-it-salaryman/2018/07/03/win10-gpedit/

6
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
2