Google Cloud Platform を無料で始めてみた。第3回 GCEの動作確認
はじめに
今回は前回立ち上げたVMでアプリケーションを動かします。
サンプルコード入手
アプリケーションと言っても、hello worldという、プログラミングを学ぶと一番最初にhello worldを表示させるということとやる、アレのようなもの。
とはいえ、いきなりアプリ作れ、って言語は何で?ってことになるので、Pythonのサンプルコードで試します。GitHubから持ってきます。
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
gitをインストールしていない場合は、インストールをします。Macならbrewを使って入れることができます。
brew install git
brewもまだならこちらを参照
GCP側にリポジトリを作成する
GCPコンソールの左側のメニューから「Souuce Repositories」を選ぶ。
新しいリポジトリを作成します。リポジトリ名は「hello-world」。ベタですが。
ローカルからコードをpushを選択する。
ご丁寧に実行コマンドを教えてくれる。素敵。
前回、SDKをインストールしたからか、1つ目のコマンドは意味なかった模様。
ローカルからリポジトリのクローン作成〜アプリ実行
リポジトリのクローンを試みます。 なんと、このインスタンスにはgitが入ってないとのこと。
sudo apt install git
でインストールします。10秒くらいで終わった。
cd hello-world
sudo apt install python-pip gunicorn
pip install --upgrade pip
sudo pip install Flask
sudo gunicorn -b 0.0.0.0:80 main:app
最後のgunicornコマンド打ったところで、「Hello World」が出るとあるが出ません。ただ待ち受けている感じ。なので、GCPコンソールからもう一つ、このVMのコンソールを立ち上げて以下実行
curl http://0.0.0.0:80
見事、「Hello World!」が表示されました。
結構、手間がかかるという印象でした。でも、初回だからね。
Google Cloud Platform を無料で始めてみた。第2回 GCE(Google Compute Engine)
はじめに
前回、アカウントを作って$300ドルの無料体験を始めただけだった。それから早1カ月、、、。いよいよ始動します!
実施手順などは基本これに沿っていきます。
【GCP入門編・第3回】難しくない! Google Compute Engine (GCE) でのインスタンス起動方法! | 株式会社トップゲート
再びログイン
ということで、まずはログイン。最初$300から増えてる?って思ったけど、なんてことはないドル換算だから、¥30,000ではないだけのこと。
インスタンスの作成〜立ち上げ
左上のメニューからGCEを選択すると、「仮想マシン作りますか?」的なメッセージが出てくるので、迷わずYes!
すると、AWSでも見たようなインスタンスのスペックを決めるような画面が表示される。細かい設定内容の話は省略するけど、気になったのは「シリーズ」。これは説明を見るとCPUプラットフォームの違いのようだが、第2世代・第1世代とあって、第1世代の方がだいぶ高い。逆かなと思って選択してみたけどそうではなかった。
第2世代 $8.37/月
第1世代 $31.69/月
ま、古いプラットフォームを維持する方がお金がかかるってことか。メインフレームなんていうレガシー中のレガシーがそれの代表格。
ログインしてみる
インスタンスを「作成」すると1分くらいで緑のチェックが表示されて、無事に完成。
「SSH」というボタンからログインしてみる。クリックしてみると、別のブラウザが開いて、SSHでログインした状態になる。
Cloud SDKをインストール
ローカルマシンからgcloudコマンドで操作できるように、SDKをインストールする。
https://cloud.google.com/sdk/docs/quickstart
tarファイル形式なので、こんな感じで解凍してインストール。参照しているリンクではホームディレクトリ推奨とのことです。
>|tar xvf google-cloud-sdk-319.0.0-darwin-x86_64.tar.gz cd ~ sudo ./google-cloud-sdk/install.sh source .bash_profile sudo gcloud init --console-only|<
はじめは「--console-only」を付けずに実行すると、認証でエラーになっていた。具体的にはデフォルトブラウザをChromeにしているにもかかわらず、Safariが立ち上がり、Googleアカウントでのログインが表示される。正しいパスワードを入力しているはずなのに、ERROR。
そこで、このオプションをつけると、「Go to the following link in your browser」と指示されるので、Chromeでその表示されたリンク先へアクセス。なにやら50桁くらいのキーが表示されるので、それをコピペしてなんとかインストール成功!
ずいぶん時間かかったよ。
ターミナルからのログイン
インスタンス一覧の「接続」の列の「▼」をクリックすると、「gcloudコマンドを表示」とあるので、それを表示して、そのコマンドをPCのターミナルへ貼り付け!
すると、初回なのでキー作成処理が走り、パスフレーズを入力して、無事にログイン。rootでログインしている。
gcloud beta compute ssh --zone "リージョン名" "インスタンス名" --project "プロジェクト名"
なお、このコマンドも実は一回エラーとなる。というのも、インストールをsudoで実行してしまったので、通常アカウントだとログを書けない等でエラーになる。ので、いこうはずっとsudoを付けて実行している。(これが正しくはなさそう)
nginxのインストール
sudo apt-get install nginx
インスタンス作って、nginx立ち上げるのは超簡単。でもSDKのインストールに苦戦してしまいました。次からは大丈夫でしょう。
課金が続いてしまうので、一旦、インスタンスは落としておく。
追伸
brew(正確にはbrew cask)を使って、SDKをインストールできたので、アンインストールしてbrewからインストールした。コマンド一発だったね。
ただ、再インストール後は以下の4点が必要となった。
早起きすればなんでもできる、と思ってる
結論
早起きすればなんでもできるよ。
コロナ禍からの在宅勤務
2020年春、コロナ禍に突入以降、ほぼ毎日在宅勤務してます。
在宅勤務生活が始まってから1か月ほど経ってから、毎朝3時に起きることにしました。
何故か
在宅勤務してると、仕事終わった瞬間、子守や家事の時間がスタートします。なので、自分のまとまった時間が取りにくい。
そして、21時に寝室で子供の寝かしつけをすると、一緒に落ちてしまい、23時とか0時に目を覚まし、やっちまった感がハンパないです。
そこから起きるのもダルいし、しんどい。なのでら朝まで長い睡眠となるわけです。
マインドチェンジ
そんなやっちまった感が嫌になってきたので、思い切って、寝かしつけではなく21時に子供と一緒に寝ることにして、そこから自分のベスト睡眠時間6時間後の3時に起きよう、としたわけです。
その結果、何をしてるか
夜、食後やビール飲んだ後ではやらない、できない、色んなことできるようになります。
- 資格試験の勉強(CISMは落ちたが、違うのを狙ってる)
- Splunkのオンデマンドトレーニングを受ける
- GCPを始める
- YouTube 動画やudemyでプログラミング(python)を学ぶ
- 本を読む
- ランニング をする(8月は2日に1回のペース)
- この週末は、とあるCTFの問題を解くのに時間使った
- そして、ブログを書くようになった(私なとってブログはアウトプット活動という位置付け)
とまあ、この朝の3時間はすごい充実してる。
早起きに勝るライフハック無し、と思う。
最後に
でも、在宅勤務でも仕事で遅くなったりするし、3時にパッと起きれない時は、身体の反応に従って無理して起きないようにもしてる。睡眠時間削ったり、無理すると仕事に支障をきたすし。
Google検索に改竄された?サイトが混じっている件
経緯
SplunkのIOD(オンライン学習コンテンツ)というものがあり、過去に「Fundamentals1」を無料で受講した話を書いたが、
会社がSplunkを使っていることから、「Fundamentals2」「Fundamentals3」を無料で受講できて、
いま「3」を受講している。
これは動画を見て、Labでいじってみて、Quizに答えると言う形式で、
「2」までは動画やLab資料は日本語ありだったのだが、「3」からは英語のみ、、。
SPLのrandom関数を調べてみる
Statistical eval functions - Splunk Documentation
そんなこんなで学習を進めていたとき、random関数ってのが出てきて、
ランダムな数値を返すってことは当然理解できるんだけど、いつつかうの?というのがピンとこず、
Google先生に聞いてみよう!と「splunk random 使い方」ってワードで検索!
その結果に、、
結果がこれで、この赤丸のリンクへ。これを狙ったと言うわけではなく、上から順々にアクセスしただけ。
このリンクは上から5番目だった。
まずはここに飛ぶ。読みづらいなと思っていると、、、
勝手にここに飛ぶ。iPhone11貰えるってよ!いや、iPhone12買ったしwww
そしてこんなポップアップが出てくる。
コメント欄もあるけど、嘘クサ!!
ポップアップにリダイレクトされてたURL書いてあるけど、何回か試すとリダイレクト先は複数あるみたい。
あ!これでrandom関数使っているかもって、まさか。
最終的にはESETがブロックするようになりました。学習してくれてありがとう。
宣伝しとくかww
ESET インターネット セキュリティ(最新)|1台1年|オンラインコード版|ウイルス対策|Win/Mac/Android対応
- 発売日: 2019/02/14
- メディア: Software Download
怪しいSMSには要注意。誰?って思ったら、削除すべし。
怪しいSMS着信
SNSではないです、ショートメッセージサービスです。
これが届いた怪しいメッセージ。
なんか、amazonヘビーユーザの私としては、置き配の話かなと思わせるメッセージ。
過去のメールを見てみると、おぉ、ショートメッセージで連絡が来ることもあるとのこと。
でも、このメッセージのほうにあるURLってなんだろう?
怪しさ満点なんだけど。
怪しいサイトの調査
いくつかあるんだけど、このURLはどんなサイトなの?って思ったときにここで調べたりします。
https://www.aguse.jp/
apkファイルって
なんとかかんとか.apkってなってるね。
apkファイルってのは、アンドロイドアプリケーションパッケージってことで、アンドロイドで動くアプリケーションってことね。
ja.wikipedia.org
なので、メッセージのURLへアクセスすると、このアプリケーションが実行される事になります。インストールかもしれない。
どんなアプリケーションなのかは想像がつくけど、いいものではないはず。
ということで、削除!
したのでありました。
Google Cloud Platformを無料で始めてみた
はじめに
トライアルの手続き
さて、90日&$300分無料というのがあると知っていたので、それを使ってみる。
AWSでは無料アカウント作って、udemy動画見ながら触ってきた。GCPはどんな感じかなー。
ブラウザはChromeを使っていて、Googleアカウントでログインしたままになっているので、そのままGCPのアカウントと紐づけられる。
まずは国を選んで続行。
住所とクレカ情報を入力して続行。自動で課金されないという注意書きを信じて入力。
そして、「無料トライアルを開始」!
すると、こんなポップアップが出てきた。
そして、メールが届く。全部英語です。
GCPのコンソールのダッシュボードはとりあえず、日本語。何もしてないけど、プロジェクトが作られている。
いくつかのリンク先を見てみたけど、場合によって英語のみだったりします。Chromeの翻訳機能を使おう。
セキュリティだけでもこんなにメニューがある。今後一つ一つ見ていく事にする。
無料枠の留意事項
リソース面での制限事項があるみたい。触ってみるのが目的なので、それほど大きなリソースは必要ない。
今後、ぶつかったときに考える事にする。
注意するのはここ!
無料トライアルが終了したら、
リソース全停止
Compute Engine(仮想サーバ)に保存したデータは削除される
とのことです。なるほど、大したデータは残らないと思うけど、せっかく学習したことが失われないように注意が必要かな。
とりあえず、課金アラートを設定してみた。でも$300の無料枠消化分についてはアラート出るんだろうか。
コンソールの一番上にこんなバナーが出ている。(字が小さい、、)
無料枠を使っているけど、「アップグレードすると無制限にアクセス」と言っている。どういうこと?
有効化をクリックするとこんなポップアップが。
これは前述した、無料枠が終わると停止というものがアップグレードしておいくと、停止せずにシームレスに課金となるよ、
という意味だと理解した。とりあえずは学習用で、止まったら困るというものでもないので 一旦このままにしておく。
でも、アップグレードしないと触ってみたいサービスが触れないならちょっと先行してアップグレードするかもね。
今日はここまで。次回以降はこれを参考に触れてみる。
【GCP入門編・第3回】難しくない! Google Compute Engine (GCE) でのインスタンス起動方法! | 株式会社トップゲート
ISACAの資格試験、CISMを在宅で受験してみた
CISM試験について
ISACAのCISMって、ご存知ですか。
ISACAは米国の団体で、システム監査やシステムリスクなど専門家向けの団体です。
資格試験を主宰していて、
・CISA(公認情報システム監査人)
・CISM(公認情報セキュリティマネージャ)
などがあります。たぶん、この2つがメジャーな資格です。
今回受験したのがCISMで、その資格試験の詳細はISACのサイトをみるのが良いです。
簡単にいうと、
内容 :セキュリティマネージャ業務に関するもの(ガバナンス、リスク管理など)
試験時間:4時間
問題数 :150問(4社択一)
試験料 :$575(会員価格)
といったものです。
受験のモチベーション
CISMを受験するために、試験料や問題集を安く買うために会員になります。これも$135。
これでも受験しようと思ったのは、やっぱり箔がつくからというものです。
セキュリティといっても、テクノロジーよりもリスク管理やセキュリティマネジメントが中心です。
仕事的にはその領域が多いので、今後の転職も見据えて受験することにしました。
オンラインでの試験がある
会場試験と比べてオンラインの試験は、いつでも、何時でも設定ができます。
いつでも何時でもは言い過ぎかもしれませんが、選択肢は圧倒的に多いです。
ということで、自宅で受けたかったが、子供がいたりと静かに受験するのは難しかったので、
自宅近くのビジネスホテルで受験することに。
デイユースで3,000円と安かったのでこちらで決定。
ちゃんとWifiも飛んでるので、PCのセッティングして、あとは試験時刻を待つことに。
本人確認の失敗
本人確認のマテリアルは「政府が発行したもの」ということで、
当然、運転免許証でOKと思って、財布に入っているそれを持参。
しかし!
オンライン試験が始まると、ネットの向こうでは試験官がカメラに移した身分証をチェックする。
また、PCのカメラを使って、部屋に誰かいないか、机の下に何か忍ばせて無いかも撮影して確認してもらう。
チャットが英語で行われたので、試験官は外国人だと判断。
すると、免許証に書いてある、漢字の氏名は彼らには読めず、試験申し込みしたFirst Name/Family Nameとも一致しない。
他に無いかと問われたが、クレジットカードを出しても、「対象外」の一点張り。
海外の団体の資格試験(マイクロソフトやオラクルなどなど)は試験センターで受けるものだけど、
そこは日本人が運営しているから、免許証で本人確認が可能です。
でも、インターネット越しで海外から本人確認されるとは、考慮ができていなかったです。
ということで、その日は試験は受けられず終了となりました、、、。
これが自宅だったら、すぐにパスポートを提示することができたんですが、考慮不足でした。
しかし、オンライン試験ツールを提供するPSI社とやりとりし、無償で試験をさせていただくことになりました。
試験センターだったら免許証で本人確認できますよね、という主張で。
再試験
また、ホテル借りてというのももったいないので、子供が寝てからの21時からという時間帯をチョイス。
もちろん懲りずに在宅試験です。本人確認資料はパスポートを準備。
今回はクリア。
しかし、結果は、、、不合格でした。
普段、21〜22時に寝て、3〜4時に起きる生活をしているからか、
試験中眠くて、というかたぶん寝てしまいました。その影響が大きい(と思いたい)。
試験終了時点で、「不合格」と表示され、2週間後くらいに何点だったか、メールで通知されます。
点数はもう一息という感じでした。
勉強法
合格してないので参考にならないかもですが、勉強法は、ISACA公式の問題集をひたすら解くというもの。
セキュリティ業務は6年程度なので、ISACA公式のマニュアルの購入は見送りました。問題集も$120+Shipping $43もするので。
ちなみに、公式問題集やマニュアルはISACA公式サイトでのみ購入可能です。
なお、価格は前述の通りで、アメリカから来るので時間かかるし、英文を機械翻訳した感じでだいぶ読みにくいです。
試験を受けてみての結論は、問題集は有意義ではあるが、この問題集だけでは合格できません。
問題集では問われない内容が複数ありました。
本当の再試験?
試験料が高いし、仕事の状況から別のことを学ばなくてはならず、モチベーション急降下。
たぶん、トライはせずに、次年度の会費は払わずに会員資格消滅する見通しです。
以上、色々と残念な話でした。