Help us understand the problem. What is going on with this article?

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

この記事は,マイナビ 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/

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away