Google Cloud Next '22 で GAが発表されたNetwork Intelligence Center の5つの機能の紹介と所感

# はじめに
前回に引き続き、気になったサービスや機能を実際に動かしてみます。
前回記載もしていますが、こちらベースでみていきます。

https://cloud.google.com/blog/ja/topics/google-cloud-next/google-cloud-next22-wrap-up

今回はNetwork Intelligence Centerの新たな機能について見ていきます。

# Network Intelligence Centerに関するGA
上記の記事ベースでは5つの機能がGAとして紹介されています。
- Network Intelligence Center 向けネットワーク アナライザは、VPC ネットワーク構成を自動的にモニタリングし、構成ミスや最適でない構成を検出するもので、一般提供となりました。
- Network Intelligence Center は、Recommender API と統合されています。
- Network Intelligence Center 向けパフォーマンス ダッシュボードは、Google Cloud ネットワーク全体のパフォーマンスおよびプロジェクトのリソースを可視化します。
- Network Intelligence Center ネットワーク トポロジが強化され、新たに「トップトーカー」ビューが追加されました。
- Network Intelligence Center 向けのファイアウォール インサイトには IPv6 ルールのサポートやカスタム インサイトの更新サイクルなどの機能強化が含まれ、プロジェクトのシャドウルールの分析情報を生成できます。
順番に内容について見ていきます

## ネットワーク アナライザ
ネットワーク アナライザは、VPC ネットワークの構成を自動的にモニタリングし、構成ミスや最適ではない構成を検出します。
例えばどのような情報が提供されるのかというと、ファイアウォール ルール、ルート、構成の依存関係、サービスとアプリケーションへの接続に関する分析情報を提供します。

https://cloud.google.com/network-intelligence-center/docs/network-analyzer/overview

例えば現在テスト的に作っている環境で、どのような情報が出ているか確認したところ、以下のような状態でした。
※外部IP開放しないとですね
![スクリーンショット 2022-11-08 22.44.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/95d0e650-1e04-a1ab-5fca-a49bcbcc9508.png)


ドキュメントに記載がありますが、構成されてから10分後ないし、1日1回は分析処理が走るようなので、構築時や構築後は最終チェックとしてやってもいいかもしれません。

## Recommender API との統合
Recommender とはそもそも何かですが、以下にある通り、リソース使用に関する推奨事項を提供するもので、

https://cloud.google.com/recommender/docs/overview?hl=ja

それと統合され、分析情報をコマンドで出力することが可能です。

https://cloud.google.com/network-intelligence-center/docs/network-analyzer/use-cli-recommender-api?hl=ja

## パフォーマンスダッシュボード
パフォーマンス ダッシュボードは、Google Cloud ネットワーク全体のパフォーマンスと、プロジェクトのリソースのパフォーマンスを可視化します。
VMが存在するゾーン間のパケットロスの指標が表示されます

テスト環境で表示したところ以下のような状態でした。

こちらはパケットロスの状態です。
こちらは時間単位で見やすい形となっており、その例えば以下のようにロスしている当該時間に視点を合わせます。
![スクリーンショット 2022-11-08 23.13.57.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/90850ecb-d92d-5274-bd8f-976920138d92.png)

そうすると以下のようにゾーン間で明解にしたものが表示され、
この図だとasia-northeast1-aと1-c間においてパケットロスが発生しているということがわかります。
更にその紫箇所をクリックすると、、、
![スクリーンショット 2022-11-08 23.14.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/c1e8f08f-7fcb-2147-4787-91c1f7cb73ce.png)

そのゾーン間での時間単位の情報が確認できます。
![スクリーンショット 2022-11-08 23.14.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/a66578a9-df9d-fde2-f4fc-a51b75e38eeb.png)

ちなみにレイテンシの場合も以下のように表示されます。
特定の時間に視点を合わせます。
![スクリーンショット 2022-11-08 23.18.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/eeb7bd4b-6049-9216-1d9f-9d0c7f9d3d13.png)

そうすることでゾーン間でのレイテンシ状態が表示されます。
![スクリーンショット 2022-11-08 23.18.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/8780285a-9e95-512f-3ae4-acabff3d7152.png)


ここでの解析情報を元にサポートに問い合わせたり、対象VMの特定や事象の切り分けに役立つかと思います。


## ネットワークトポロジ
下り向きの通信の要因の特定が可能になるとのことで、実際に「トップトーカー」自体が何を指しているか、を明記していないのですが、
下りが多いインスタンスが表示され、どこに対してどの程度のトラフィックが流れているか表示されます。
※もし以前から表示されていて、本来ここを指している、というのがあればご指摘ください

実際は以下のように表示されます。
左ペインではインスタンス単位で下りのボリュームが確認でき、対象のインスタンスを選択すると、真ん中ペインでトポロジ図が表示され、対象との間のトラフィック情報が表示され、ノードを選択すると、右ペインのように詳細が表示されます。
![スクリーンショット 2022-11-08 23.24.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/30a26bfc-d226-b28a-6a31-b1a5d3cd31c4.png)

こちらも事象に基づき調査する切り分け方法としては、有効なケースがあると思うので覚えておきたい機能です。

## Firewall insight
制限がゆるいファイアウォールのルールを分析してくれたり、明示的に許可されていないものの、
隠れているシャドウルールの状況を分析します。
![スクリーンショット 2022-11-09 0.03.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1720034/836c93d9-2f6e-2f06-174d-42b61b4a7835.png)

画像内では有効化されていないため、表示されていませんが、こちらに気にすべきルール情報が表示されます。
※なお有効化については右上の「構成」にて、対象機能の有効化が可能です

ルール数やロギング数で金額が加算されてしまうので、新規プロジェクトではなく、
既存のプロジェクトで有効化される場合、気をつけたほうが良いかもしれません。

https://cloud.google.com/network-intelligence-center/pricing?hl=ja&_ga=2.203454486.-783207234.1658373906&_gac=1.91034344.1665625215.Cj0KCQjwy5maBhDdARIsAMxrkw2_c-XYlPym8asyGQyU-sx4lgllTQHMOhXUE2Ski8IV6k07TIgw6QkaAtJWEALw_wcB#firewall-insights-pricing-details

# 所感
Google Cloud では運用系のサービスに対してフォーカスがあたることが少ないように思いますが、
セキュリティ面やこういった分析面において、確実に機能が充実してきており、今回のGAされたものだけではなく、
過去に遡って、実際に動作させてみるなど、実施してみたいと感じました。
今回の情報は構築時や運用における設定変更時にチェックを行うだけで、重要な脆弱箇所に気付けると思うので、
運用フローに組み込むなど、構築時に試験に組み込むなど、考慮したいと感じました。