アクセンチュア・クラウド・ダイアリーズをご覧頂きありがとうございます。クラウド推進事業本部の森本と申します。今回は、2020年1月30日にGoogle Cloud Japanにおいて開催された「Google Cloud Anthos Day」の内容を、私なりの考察を交えながら簡単なレポートとしてご紹介します。


Anthos Dayとは
 「Kubernetesを使った最新の開発アプローチを学ぶ」をスローガンに、マイクロサービス、DevOps、コンテナの利用やクラウドネイティブなアプリケーションの先進事例などが、Googleの技術者や利用企業様によるセッションによって紹介されるイベントです。会場ではスポンサー企業によるブース出展やセッションの合間にライトニングトークが開催されるなど、非常に盛況な様子でした。

<<< Start >>>

<<< End >>>

<<< Start >>>

<<< End >>>

 過去には2回、2019年の3月と9月に同様のイベントが開催されていますが、その時のイベント名称は「Google Cloud Kubernetes Day」でした。今回Anthos Dayと名前を変え、またセッション数も二倍に増えたことを鑑みると、コンテナ活用のステージがまた一つ先に進んだのだという印象を抱きます。

■Anthosとは
 一言で言うと、「アプリケーションの“Write once, run anywhere”を実現するオープン
プラットフォーム」です。すなわち、コンテナを活用して開発したアプリケーションを、GCPに限らずオンプレミスや他クラウド上のKubernetes基盤上で動作させながら、その管理を一元化しまた環境の一貫性を担保するサービスです。Kubernetesのマネージド基盤である「Anthos GKE」、環境横断での管理ポリシーの共通化を実現する「Anthos Config Management」、Istioをベースとしたサービスメッシュ環境をマネージドで提供する「Anthos Service Mesh」の三つのコアコンポーネントで構成されます。ちなみに読みは「アンソス」です。

■セッション概況
 事例を中心にKubernetes活用のベストプラクティスが様々紹介されていましたが、いずれもに共通する大きなテーマがありました。それは、「一貫性の担保」です。コンテナによるアプリケーション開発が進み、プラットフォームがそれに応じて進化していく。そうしてKubernetesのマルチクラスタやIstioによるサービスメッシュといった環境が拡張していくにつれて、構成や運用の一貫性を担保するための管理負荷は無視できないものになります。その際に考慮すべき観点は、大きく分けて二つあります。

What:何によって一貫性を担保すべきか
 一つは、一貫性を担保するために利用する仕組みやツールの観点です。これに関しては、もう今となっては新しい考え方ではなくなったInfrastructure as Code(IaC)の実現が答えであると感じました。クラウド環境とオンプレミス環境に点在するKubernetesクラスタの設定を一貫して管理する機能は、Anthosにおいては先に挙げた「Anthos Config Management」によって提供されます。これはGitリポジトリに保存したConfigを複数環境間で適用する仕組みであり、いわゆるGitOpsを体現したものです。コンテナを活用したアプリケーション開発においてはアプリケーションコードやDockerイメージをリポジトリで管理しますが、これを当然のようにKubernetesの管理に延長することで、アプリケーションからプラットフォームのレイヤまでリポジトリで構成を管理し、またその適用を自動化することによって、開発から管理運用時における環境の一貫性を担保することを可能としています。

How:どのように一貫性を担保すべきか
 もう一つは、そういった仕組みを実際の現場においてどのように活用すべきかといった観点です。例えばリポジトリと一概に言っても、どの単位で分割して管理すべきかといった問題や、どの組織が管理すべきかといった問題が残ります。これに関しては、画一的な答えは無いと感じました。「コンウェイの法則」という言葉を聞いたことがあるでしょうか。「システムを設計する組織は、その組織のコミュニケーション構造をコピーした設計を生み出してしまう」という法則です。上記のようなリポジトリを活用したCI/CDパイプラインを設計する場合においても、本番環境へのリリースを誰が承認するのかといった組織のコミュニケーション構造を必ず考慮する必要があります。
 組織をあるべき姿に変えた上で、仕組みを実装していくのがよいのか。はたまた、今の組織にあわせて仕組みを実装した上で、よりよい形に昇華させていくのがよいのか。これは企業文化とも密接に関わるものであり、解くのが非常に難しい問題です。実際の活用の現場の特性をしっかりと把握した上で、何が最適であるのかを考え抜く必要があります。

プロジェクト事例(ライトニングトークより)
 以下にAnthos Dayのライトニングトークの内容を簡単にご紹介させてください。当日はテクノロジーコンサルティング本部のシニア・マネジャーである野涯兼作よりご説明させていただいた、「100名程度のエンジニアが携わる大規模なプロジェクトにおけるKubernetesの活用事例」です。
 この事例においては、難易度の高い技術を隠蔽する『カプセル化』や、リクエストベースでアプリケーションアーキテクチャに応じたCI/CDパイプラインを自動生成する『セルフ化』のアプローチを採ることで、技術的な構成要素が多く複雑性の高いKubernetesをエンジニアに負担を強いることなく適用しています。また、コンテナやCI/CDなどの技術をプロジェクト横断で担うチームを編成し、かつKubernetes環境の構築に係る作業をテンプレ化し再利用性向上させることで、組織的な全体最適も実現しています。
 図に示す通り、このような施策は一足飛びではなく、組織やエンジニアの成熟度に応じて段階的に推進していくことが重要となります。のみならず、各アプローチの立案時においては企業におけるIT戦略の方向性や文化特性を加味する必要があります。

<<< Start >>>

<<< End >>>

 

 今回は、一つの形をご紹介させていただきました。

■アクセンチュアにおけるGCPの取り組み
 今回ご紹介したAnthosは、GCPの一つのサービスでしかありません。BigQueryやAutoMLをはじめとする、分析や機械学習に強みを持つGCPの活用シーンは非常に多岐に渡ります。
 Googleとアクセンチュアのビジネスグループである Accenture Google Business Group(AGBG)においては、そうしたGoogleのテクノロジーの導入に係るコンサルティングから、GCPのさらなる活用推進に必要な組織改革のお手伝いまで、幅広いご支援が可能です。

<<< Start >>>

<<< End >>>

 本記事をお読み頂いた方で、Googleのテクノロジーを活用したさらなるビジネス変革を期待されるお客様は、ぜひご相談ください。

森本 達也

コンサルタント

ニュースレター
Subscribe to アクセンチュア・ クラウド・ ダイアリーズ Blog Subscribe to アクセンチュア・ クラウド・ ダイアリーズ Blog