Google CloudのArchitecture Diagramming Tool使ってみた

こんにちは、GMOアドマーケティングのM.H.と申します。 2022年2月、Google社が新たにGoogle CloudのツールであるArchitecture Diagramming Toolを発表し、GCPのサービスを用いたアーキテクチャの図を作成できるようになりました。本記事では、このArchitecture Diagramming Toolについて色々試した結果についてまとめていきたいと思います。

はじめに

何かプロダクトや機能の実装をしたいとなった時の最初のステップは、まず実装する構図の全体像を決め、仕様を固めていくことが殆どかと思います。この時にアーキテクチャの図を作成しておくことで、チーム内でプロダクトや機能のビジョンを共有でき、開発をスムーズに進めることができます。 Google Cloud Platformの各種サービスにはその内容を視覚的に表したようなアイコンが用意されています。今までではこれらのサービスを多く使ってアーキテクチャ図を作成しようとすると、いちいち画像を取得して貼り付けなければなりませんでした。これまででもGoogle Slides上で使える画像プリセットは用意されていましたが、スライド機能が主体なのでサイズ的制約が存在するなど使い勝手はあまり良くありませんでした。 今回発表されたArchitecture Diagramming Toolはこういった問題をクリアしています。さらに作成した図の共有や各用途に合わせたアーキテクチャ図のプリセットの用意、さらに一部のプリセットにはワンクリックデプロイの機能まであります。今回はこれらの機能の簡単な使い方の説明と、使ってみての感想について書いていきたいと思います。

Architecture Diagramming Toolでできること

まずはArchitecture Diagramming Toolを開いてみましょう。UIは以下のようになっています。それぞれのメニューについて簡単に説明文を加えてみました。
基板にあるのはExclaidrawのプロジェクトです。これは、手描きの感覚を持つ図を簡単にスケッチできる仮想のコラボレーションホワイトボードツールで、かなり直感的に図を描くことができます。この上にGoogle Cloud独自の機能が乗っかっているイメージになります。

アーキテクチャ図の作成

ボードの左下にあるメニューから、好みのアイコンをドラッグ&ドロップでボード上に配置することができます。アイコンにはカテゴリが設定されており、何のサービスであるかが一目で判るようになっています。このカテゴリ情報はArchitecture Diagramming Toolと統合されているGoogle Cloud Developer Cheat Sheetが元になっています。このチートシートでは各コンポーネントの単語4語以内の簡潔な説明を見ることができ、クリックでGoogle公式のドキュメントを確認することができます。
独自の図や画像も入れることができます。線や矢印、ペンを使ったフリー描画も可能で、スタイルの設定で好みの図を作成することができます。
設定の中にはダークモードへの切り替えもありますが、これを押してもホワイトボードから黒板になるわけではなく、メニューやアイコンの背景色が黒くなるだけです。黒板っぽくしたい時はボード全体の背景色を変更しましょう。

図の保存

アーキテクチャ図は共有可能です。図の保存や読み込みなどはボードの左上にあるメニューから行います。 ドキュメントから矢印が出ているアイコンをクリックするとExportの画面が出てくるので「Save to file」ボタンを押して保存できます。 excalidraw形式で保存され、これを他の人に渡せば保存時の図から作業できます。 また、隣のイメージから矢印が出ているアイコンをクリックすると現在のアーキテクチャ図を画像として保存することができます。保存形式は png, svgのどちらかか、クリップボードにコピーすることが可能です。また、背景を透明か不透明か選択でき、画像のスケールも1, 2, 3倍のいずれかから選ぶことができます。

アーキテクチャのプリセット

1からアーキテクチャ図を毎回作成するのは大変かと思います。Architecture Diagramming Toolには、機械学習、CI / CD、マイクロサービスなど色々な用途に沿ったプリセットのアーキテクチャ図が用意されているため、ジャンルが決まっているのであればこのプリセットの図から手を加えて修正していく方策を採ることもできます。 執筆した2022/04/15時点では、全部で16個分の用途に合わせたDiagramプリセットが登録されていました。

ワンクリックデプロイ

前述のアーキテクチャのプリセットの中には、Githubと連携しておりワンクリックでアーキテクチャ図と同様の環境をGCP上にデプロイできる機能を備えているものが存在します。執筆した2022/04/15現在ではこの機能は自分が作成したアーキテクチャ図には対応しておらず以下2つのみが対応しているようでした。
  • Simple Compute App – ロードバランサを通した複数台の計算リソースインスタンスの構築
  • Three Tier App – CI/CD環境であるCloud Runを使った簡単なToDo管理アプリのデプロイ
今回はこのうち「Three Tier App」について実際にデプロイを試して動くか確認してみました。なおここからの操作ではGoogle Cloud Platformの利用料金が掛かります。 まずは左下のメニューから「Diagrams」カテゴリを開き、該当のDiagramをボードにドラッグ&ドロップして、「OPEN IN GOOGLE CLOUD SHELL」と書かれたボタンが出ることを確認します。これがワンクリックデプロイ用のボタンで、クリックするとGoogle Cloud Shellが起動します。
フックされたGithubのリポジトリをcloneするか訊かれるので、「確認」を押してShellを開き、 ./installを入力して実行します。これだけでプリセットのアーキテクチャ図と同様の状態がデプロイされます。 途中、作成するプロジェクトやリージョンについて訊かれます。今回は「diagramming-tool-test」プロジェクトを新規作成し、リージョンは「asia-northeast1(東京)」を選択しています。
さらに新規作成されるCloud SQLのデータベース名とパスワードについても設定します。
おそらくここまで設定すればあとは数分程度待てばデプロイは完了すると思います。ブラウザからGoogle Cloudのwebコンソールを開いてプロジェクトを「diagramming-tool-test」に変更し、Cloud Runの詳細画面からフロントURLを確認して開いてみます。
正常にToDo管理アプリがデプロイされていることが確認できました。かなり簡単ですね! 注意点として、このワンクリックデプロイに対応しているアーキテクチャ図に対して変更を加えても、デプロイ内容に変更が反映されないことに注意してください。実際のデプロイプロセスは既に作成されたGithubのリポジトリにフックしているためです。図を変更してからここから、リポジトリのクローンを作成し、インストールスクリプトを実行します。

おわりに

如何でしたでしょうか?今回は最近発表されたGoogle Cloudネイティブのアーキテクチャの図作成ツールであるArchitecture Diagramming Toolについて説明してきました。個人的な感想としてはかなり使いやすく、Google Cloudのサービスが関わっていなくてもロジックのフローチャート図の作成用途としても重宝できると感じました。 逆に残念だなと思った部分としては
  • 作成した図の大元を共有する方法がファイル譲渡しかなく、URL共有不可。
  • 個人で作成したアーキテクチャ図からデプロイはできない。
などがあります。まだローンチされてから2ヶ月程度しか経っていないため、今後どんどん改善され機能も増えていくことを期待しています。