【ハンズオン】GCPなら「設定なし」でマルチリージョン構成が組める話【GCP】

はじめに

こんにちは、とある初級インフラエンジニアです。 来月から参画するGCP案件(金融系)に向けて、設計・構築のキャッチアップを進めています。

前回の「予算アラート」に続き、今回はネットワーク(VPC)の検証を行いました。 そこで、従来のクラウドAWS等)の常識を覆す、GCP特有の「グローバルVPCという概念に衝撃を受けたので、検証結果を共有します。


クラウドエンジニアが抱く「VPCの常識」

通常、VPC(仮想ネットワーク)を作成する際、まず考えるのは「どのリージョンに作るか?」です。

  • 東京リージョンVPC-Aを作る

  • 大阪リージョンVPC-Bを作る

  • この2つを通信させるなら、VPC Peering」VPNで接続工事をする

これが一般的なクラウドのネットワーク設計です。 しかし、GCPのドキュメントにはVPC はグローバル リソースです」と書かれています。 正直、文字で読んでもピンと来なかったので、実際に環境を作って試してみました。


検証構成:東京と大阪を「同じVPC」に入れる

今回は以下の構成で検証を行いました。

  1. VPC: vpc-handson-01 を1つだけ作成(グローバル)

  2. サブネットA: 東京リージョン (10.0.1.0/24)

  3. サブネットB: 大阪リージョン (10.0.2.0/24)

  4. VM: それぞれのサブネットに1台ずつサーバーを構築

驚いたポイント VPCを作成する段階で、リージョンを選択する必要がありませんでした。 「VPC」という大きな箱の中に、「東京の部屋」と「大阪の部屋」を同居させる設定があっさりと完了しました。

 


実験:PeeringなしでPingは通るのか?

東京のVMから、大阪のVMプライベートIPに向けてPingを打ってみました。 ルーティングテーブルの設定も、Peeringの設定も一切していません。

 

Bash
 
# 東京(10.0.1.x) から 大阪(10.0.2.x) へ
ping -c 4 10.0.2.2

 

結果: 何事もなくPingが返ってきました。 まるで同じデータセンター内の隣のラックにあるサーバーと通信しているような感覚です。

 

なぜこれが可能なのか? GCPVPCは世界中のリージョンにまたがって存在できるため、リージョン間の通信もGoogleのバックボーンネットワーク(専用線)を通って、デフォルトでルーティングされる仕様になっているそうです。 マルチリージョンでDR(災害復旧)構成を組む際、この仕様は圧倒的に設計コストを下げてくれると感じました。

 

 


ハマりポイント:SSH接続が遅い…?

スムーズにいったように書きましたが、1点だけ躓いたことがありました。 VMを作成直後、SSH接続(ブラウザコンソール)を試みたところ、接続確立までに異常に時間がかかる(またはタイムアウトする) 現象が発生しました。

 

原因:ファイアウォール設定 GCPファイアウォールは「デフォルトですべて拒否(※プロジェクト作成時のdefaultネットワーク以外)」です。 「内部通信(10.0.0.0/16)」を許可するルールは入れていたのですが、SSH接続(外部からのアクセス)」を許可するルールを入れ忘れていました。

AWSのSecurity Groupのような「インスタンス単位」の設定ではなく、VPC全体に対するルール」として以下を追加することで解消しました。

また、設定画面でファイアウォール ポリシー」と「ファイアウォール ルール」という似たメニューがあり迷いましたが、今回は従来のシンプルな「ルール」の方を使用しました。


まとめ

今回の検証で分かった、GCPネットワークの強みは以下の通りです。

  1. VPCが地球規模: リージョンを跨ぐ設計が極めてシンプル。

  2. Peering不要: 異なるリージョン間でも、同じVPC内ならプライベートIPで直通。

  3. 管理が楽: ファイアウォールVPC単位で一元管理しやすい。

AWSとは作法が違う」と聞いてはいましたが、ここまで物理的な距離を感じさせないアーキテクチャだとは思いませんでした。 次回は、この環境を使ってさらに踏み込んだ設定を試してみたいと思います。


↓IT転職をお考えの方はコチラ↓

【GCP】Google Cloud アカウント作成&予算アラート設定の完全手順

はじめに

こんにちは、とある初級インフラエンジニアです。

この度、来年1月からGCPGoogle Cloud)の設計・構築案件(金融系)に参画することになりました。 これまでは運用保守の業務が中心でしたが、ついに念願の設計構築フェーズ、しかも未経験のGCPへの挑戦です。

参画までの1ヶ月間、短期集中でGCPをキャッチアップするための学習計画を立てたのですが、技術検証を始める前に「これだけは絶対にやっておくべき」と判断した設定があります。

それが、「予算アラート」の設定です。

今回は、GCPの学習を始める全てのエンジニアに向けて、アカウント作成から高額請求を防ぐための通知設定までをまとめました。

 

 


なぜ最初に「予算アラート」なのか?

クラウドの独習で最も恐ろしいリスク、それは設定ミスによる高額請求(いわゆるクラウド破産)です。

GCPには「BigQuery」などの強力なサービスがありますが、これらは従量課金制のため、うっかり巨大なデータを処理してしまったり、リソースの消し忘れがあったりすると、個人では支払いきれない額の請求が来るリスクがゼロではありません。

「学習に集中したいのに、課金が怖くてボタンが押せない…」 そんな状態を避けるために、**「1円でも課金されそうになったら即座に通知が来る」**環境を最初に構築しました。


手順①:Google Cloud アカウント作成

まずはアカウントの開設です。手順は非常にシンプルでした。

  1. Google Cloud のトップページへアクセス。

  2. 「無料で使ってみる」をクリック。

  3. Googleアカウントでログインし、本人確認(クレジットカード登録)を行う。

★ポイント クレジットカードの登録は必須ですが、Google Cloudには「90日間・$300分の無料クレジット」が付与されます。 また、コンソール画面で手動で「アップグレード」を行わない限り、無料トライアル終了後に勝手に課金されることはない仕様になっているため、安心して登録できました。


手順②:予算アラートの設定手順(最重要)

ここからが本題です。 「もしも」の時にメールが飛んでくるよう、以下の手順で設定を行いました。

  1. Google Cloud コンソールにログイン。

  2. 左上のナビゲーションメニューから 「課金 を選択。

  3. 左メニューの 「予算とアラート」 をクリック。

  4. 「予算を作成」 をクリック。

【設定した内容】

  • 期間: 月間

  • 予算タイプ: 指定額

  • 目標金額: 100円(または1,000円など少額に)

    • ※ここに入力した金額が請求されるわけではなく、あくまで「通知ライン」の閾値です。

【アクションの設定】

  • アラートのしきい値:「予算の50%」「90%」「100%」にチェック。

  • 通知の管理:「アラートのメール通知を請求先アカウント管理者に送信する」 にチェックを入れる。

最後に「保存」を押して設定完了です。 これで、もしリソースを消し忘れて課金が発生しそうになっても、すぐに気づくことができます。

 

↑設定完了したら一覧に表示されます。

(「予算を設定しても、リソースやAPIの使用量は制限されません」...そりゃそうだ笑)

 


インフラエンジニアとしての気づき

設定を進める中で、他のクラウドサービスとの設計思想の違いも少し見えてきました。

特にGCP「プロジェクト」という単位でリソースを管理するのが特徴的です。 予算アラートも「プロジェクト単位」で細かく設定することもできれば、「請求アカウント全体」で設定することも可能です。

今回は学習用なので全体に網を張りましたが、実際の現場(金融系)では、部署やシステムごとにプロジェクトを分け、それぞれの予算管理を行うことになるのだと推測できます。 この「プロジェクトの階層構造」への理解が、GCP攻略の第一歩になりそうです。


まとめ

これで「命綱」の設定は完了しました。 どんなに失敗してもアラートが鳴ると思えば、心理的なハードルが下がり、積極的にコンソールを触ることができます。

次回からは、いよいよ実践編としてGCP独自のネットワーク(VPC)構築」に進みます。 一般的なクラウドの常識が通じない部分もあるようなので、実際に手を動かして検証した内容を記事にしていきたいと思います。

これからGCPを学びたい方の参考になれば幸いです!

 

 

▼未経験からITへの転職を考えたい人にオススメです。▽

 

【実録】オンプレ運用保守エンジニアが1月から保険系GCP案件に参画!?年末年始の1ヶ月短期集中学習計画を公開します。

1.はじめに:なぜ今、GCPなのか?

こんにちは。とある初級インフラエンジニアです。

前の記事でもお知らせしましたが、来年1月から「GCPGoogle Cloud)」の設計・構築案件に参画することが決まりました!

これまではオンプレミスのサーバー運用保守や、AWSでの検証環境構築などを経験してきましたが、GCPは正直なところ「未経験」です。

しかし、今回の案件は単価アップキャリアアップ(運用保守からの脱却)の大チャンス。 「やります!」と手を挙げたものの、内心はドキドキです(笑)。

 

そこで、1月の参画初日に「ロケットスタートを決めるべく、AI(Gemini)を壁打ち相手にして「1ヶ月短期集中・GCP習得ロードマップ」を作成しました。

今回は、私と同じようにAWSからGCPへスキルチェンジしたい」「短期間でクラウドをキャッチアップしたい」というエンジニアの方に向けて、私の学習計画を公開します。

2.AWS脳からの脱却:GCP独自の「作法」を知る

まず、学習計画を立てるにあたって意識したのは、AWSの知識をどう変換するか」です。 GCPにはAWSとは決定的に違う「お作法」があるようです。

  • 階層構造: AWSは「アカウント」で分けますが、GCPは「プロジェクト」という箱で分けます。

  • ネットワーク: GCPVPCは「グローバルリソース」。リージョンを跨げるらしい…(すごい)。

  • 強み: 何と言っても「データ分析(BigQuery)」と「Kubernetes(GKE)」。

これらを踏まえ、単なる機能の暗記ではなく、「現場で使える設計思想」を体に叩き込むプランを立てました。

 

 

3.年末年始・4週間GCP学習ロードマップ

平日は現職の業務で忙しいため、「週末集中 + 年末年始のラストスパート」で仕上げる作戦です。

コンセプト: 「教科書を読む」のではなく「実際に手を動かしてハマる」こと。

  • 【第1週】AWSとの違いを体感する(12/7〜)

    • アカウント作成&予算アラート設定(←これ超重要!破産防止!)

    • プロジェクトの作成とIAM(権限)の理解

    • カスタムVPCの構築(デフォルトVPCは使わない!)

  • 【第2週】金融系レベルのセキュリティを学ぶ(12/14〜)

    • 外部IPなしのGCE(仮想マシン)構築

    • IAP(Identity-Aware Proxy)を使ったSSH接続※ここが「踏み台サーバー」を使わないモダンな接続方法らしく、現場でドヤ顔できるポイントだそうです。

  • 【第3週】Webサーバーとして動かす(12/21〜)

    • Nginx導入とWeb公開テスト

    • Cloud Storage(S3的なやつ)との連携

  • 【第4週】運用・データ分析・IaC(12/28〜1/4)

    • Cloud Loggingでのログ監視体験(2次保守スキルの応用)

    • BigQueryで大規模データ検索を体験

    • 余裕があればTerraform化に挑戦

4.今日の成果:まずは「命綱」を設定しました

計画初日の今日は、早速Google Cloudのアカウントを作成しました。 そして一番最初にやったのがこれです。

「予算アラートの設定」

クラウド学習で一番怖いのが「設定ミスによる高額請求(クラウド破産)」ですよね…。 「1円でも課金されそうになったらメールが飛んでくる」ように設定したので、これで安心して週末に実験ができそうです。

5.さいごに:1月4日には「別の自分」になる

「この技術、未経験だから…」と尻込みせず、この1ヶ月で「設計者の顔」をして現場に入れるよう、全力で駆け抜けます!

週末には「VPC構築編」の進捗を記事にします。

1月からの案件が決まりました。

表題の通り、1月から参画する案件が決まりました。

そこではGCPというクラウドの技術を使った設計・構築の作業をします。

GCP?なにそれ?は今更ないかもしれませんが少しく敷衍いたします。

 

GCPとは「Google Cloud Platformn」の略称で、いわゆる3大クラウドの一つです。

名前の通りGoogleが提供するパブリッククラウドサービスです。

 

軽く調べたところAIや機械学習、データ分析に強いサービスを持っているとの事でした。

 

3大クラウドといえば他にはAWS、Azureとありますが

先ほど挙げた点において強いサービスがあるという事で、将来性はありそうだなと個人的に思っています。(さほど詳しいわけではないのでお手柔らかに...)

現状は3番手のようですが。

 

今後ですが案件入るまで1か月くらいあるので

GCP環境に慣れるという意味で無料枠を使って構築のお勉強をしていきたいなと思います。

GCPの強みもとらえつつ、用語や使用感、個人的な構築課題を作ったりと投稿していきたいなと思います。

 

ちなみに最近まで現場でAWSも触ってたんで

将来的にはマルチクラウドエンジニア向けの記事も投稿していきたいなと思ってます。

 

以上。

【Windows】「ファイルが見つかりません」で消せない!予約語(com/con/prn)ファイルの強制削除方法

こんにちは、とある初級インフラエンジニアです。

先日、ファイルサーバーの古いバックアップデータを整理していたところ、「画面上には存在しているのに、削除しようとすると『ファイルが見つかりません』と言われる」という奇妙な現象に遭遇しました。

 

通常の操作ではどうしても消すことができず、少し調査が必要だったので、備忘録として解決手順を残しておきます。 同じように「幽霊ファイル」に悩まされている方の助けになれば幸いです。

 

■ 発生した現象

Windows Server上の特定のフォルダ内にあるバックアップファイルを整理中、特定のファイルだけ削除できませんでした。

  • 対象ファイル例: com2.jpg

  • エラー内容: エクスプローラーから削除を実行すると、「この項目は見つかりませんでした。項目の場所を確認して再実行してください」と表示される。

ファイルは間違いなくそこにあるのに、Windowsが「ない」と言い張る状態です。

 

■ 試したこと(NGだった方法)

まずは一般的なトラブルシューティングとして以下を試しましたが、すべて効果がありませんでした。

  1. ファイルのリネーム

    • 名前を変えてから消そうとしましたが、リネーム時にも同様に「項目が見つかりません」とエラーになり変更不可。

  2. コマンドプロンプトでの強制削除

    • 管理者権限のコマンドプロンプトdel /f や親フォルダごとの削除を試みましたが、やはりファイルパスを認識してくれません。

 

■ 原因:Windowsの「予約済みデバイス名」

「リネームすらできない」という点から、ファイルシステムやアクセス権の問題ではなく、「ファイル名そのもの」が原因ではないかと疑いました。

調べてみたところ、今回のファイル名に含まれていた com2 という文字列が原因であることが判明しました。

Windows(というよりMS-DOS時代からの仕様)では、以下の文字列は「システム予約語(予約済みデバイス名)」として登録されており、通常のファイル名として使用することができません。

  • CON, PRN, AUX, NUL

  • COM1COM9

  • LPT1LPT9

今回の場合、何らかのバックアップツールやLinux系OSから持ち込まれたファイルなどが原因で、本来Windowsでは作成できないはずの com2 という名前のファイルが存在してしまっていたようです。これでは通常API経由で操作できないのも納得です。

 

■ 解決策:UNCパス(\\?\)を使って削除する

解決策は、Windowsのパス制限や解析をバイパスする\\?\(Win32 File Namespaces)」という特殊なプレフィックスを付けたコマンドを実行することです。

コマンドプロンプト(cmd)を開き、以下の構文でコマンドを実行します。

 

 
del "\\?\ドライブ名:\フォルダパス\ファイル名"
例)del "\\?\D:\file\test\com2.jpg"

 

これを実行したところ、あれだけ消せなかったファイルがあっさりと削除されました。

 

■ コマンド実行時の注意点

このコマンドを使用する際は、以下の2点に注意してください。

  1. 必ず「絶対パス(フルパス)」で指定する

    • \\?\ を使う場合、相対パス.\com2.jpgなど)は使用できません。必ずドライブ文字(C:\D:\)から記述してください。

  2. パスはダブルクォーテーション " で囲む

    • パスの途中にスペースが含まれている場合(例: Program Filesなど)にエラーになるのを防ぐため、パス全体を " で囲んでおくのが確実です。

 

■ まとめ

  • 「ファイルが見つかりません」で消せないファイルは、ファイル名が予約語(CON, COM1, PRNなど)になっていないか確認する。

  • 予約語ファイルは通常操作では消せない。

  • del "\\?\絶対パス" コマンドで強制的に削除が可能。

バックアップ運用や、異なるOS間でのファイル転送を行っていると、稀にこういった「Windowsの仕様外」のファイルが紛れ込むことがあります。焦らずコマンドで対処しましょう。

近況報告

お久しぶりです。

とある初級インフラエンジニアです。

 

しばらく投稿していませんでしたが、LPICは去年末ぐらいに取得いたしました。

 

このまま資格系でやろうかなーとも思いつつ、何も手を付けていませんでした。

 

このブログの今後としては

日々の業務を通してエラーの事象解決したナレッジや

設計構築メモに使おうかなーって思ってます。

あとはAWSの知識のメモにも活用しようと考えてます。(こっちは優先度低め)

 

今後は必要があれば資格取得もしようかなと思ってますが、

一旦実務に生きるものを残していけたらいいなと思っています。

 

よろしくお願いいたします。

【初投稿】このブログの目的

初めまして。

記事を閲覧いただきありがとうございます。

 

私はインフラエンジニアの卵として某IT企業に勤めております。

この度は自己研鑽の一環として、資格を取る事にしました。

 

このブログはそんな初級エンジニアの私がアウトプットのために投稿するためのものです。

また時々キャリアパスについての投稿もするかもしれません。

 

御覧いただく中で、なにかアドバイスや感想などがありましたら、コメントをいただけたら幸いです。

 

よろしくお願いいたします。