Google Cloud Next ’18 in Tokyo レポート(2)各セッション編

今回基調講演以外では、

  • D1-2-S04
    不便の日常をディスラプト With GCP AI/Voice UI/APIs
  • D1-3-S09
    GCP で実現する、ハイブリッドクラウド環境でのデータ連携パターン
  • D1-4-S04
    Kubernetes を使った継続的デリバリー ~GCP におけるベストプラクティス & AbemaTV における取り組み ~
  • D2-2-S03
    マルチクラウドに取り組むべき理由とその実現方法 ~クラウド (GCP) とエッジ (Fastly) とメルカリでの実現事例 ~
  • D2-4-S01
    Google Cloud におけるセキュリティおよびコンプライアンス最新状況

に参加してきました。

Kubernetes を使った継続的デリバリー

この中でもはD1-4-S04が発表内容、会場の熱量ともに圧倒的でした。まぁ今流行りのKubernetesをネタのベースに、GCPでのCI/CDについてあのAbemaTVでの実際の運用例で説明されるわけですから胸熱ですよね。会場は空席なし息苦しいくらいに満員。参加している方々はほとんどのスライドを撮影し発表内容を一言も逃さずタイピングしようと鬼気迫る情熱を感じました。
こんな雰囲気のセッションは自分が参加した中ではここだけでした。

熱気溢れる会場

前半はGoogleCloudのカスタマエンジニア岩成氏によるGCP上でのコンテナを使った継続的デリバリーの概要説明。

CI/CDの段階定義

CI/CDの段階定義

主にCloudBuildの説明ですね。

GCPでの展開すると

GCPでの展開

GCPで行うメリット

メリット

ビルドしたコンテナの脆弱性を診断してくれる(しかもそれを自動化プロセスの中に組み入れられる)のはすごくいいんじゃないでしょうか(基調講演でもこの話はあちましたが、これが新機能かどうかどう使われるものかわかりませんでした、この記事を書いている時点ではベータとして発表されたものと知りました)。
公式な発表

Spinnakerの説明

spinnaker

ちょっと使ってみたいと思いました(名前がかっこいいから)

後半はAbemaTVリードエンジニア福永氏によるAbemaTVによる継続的デリバリーへの取り組みの説明。

ユースケースとなったシステム

今回GCPで構築されたAbemaTV広告システムの全体像

特に面白かったのはSlackを使ったchatopsによるdeploy。対話式でbotでdeploy。オペレーションもログもすごくわかりやすい。

(画像ありません、ごめんなさい・・・普通にSlackの画面です)

 

このセッション及びこのイベント全体の感想など

すべての開発の場でCI/CDが必要というわけではないと思います。今でも1発もののSIはそれなりにあるはずなので(悲しいことですが)。ただ自社でITサービスを運営している場合、あるいは常に社内の要求に応じて改善を続ける各企業の情報システム部門等では、このようにソース管理から実装までを一貫して管理できる仕組みは「品質」「スピード」を両立する上で重要なんじゃないかなと思います。
開発の各フェーズでそのフェーズに適したツールを適宜使うのも悪くはないのでしょうが、フェーズごとにぶった切れてドキュメンテーションも統一されず、実装仕様について必要なときに参照できないような状況になりがちです。(開発の)外から見て「今どこでなにが行われていて、どこに問題があるのか」がまったくわからないのです。そのための開発部門に企画推進担当者を置くとかいろいろ本末転倒になってしまいます(正直無駄リソースだと思います)。
「速さ」「信頼性」「安全性」などの観点を重視するなら多少はロックインされてしまってもこういう仕組みで回ってくれたほうが精神衛生上いいのだけれど、と企画担当者的には思いました。
実際、開発の現場より外(あるいは上位レイヤー)からの方がCI/CDに対する意欲は強いんですね。
ZDnetの記事

最近はkebernetesがあちこちで使われkubernetesのマネージドサービスが各社から出ていますが、AWSやAlibabaCloudのkubernetesサービスは「とりあえずラインナップしてるので好きに使ってね」という数多あるサービス群の1つであるのに対して、GCPのkubernetesサービス(GKE)はオンプレミスのkubernetesまで管理可能で「あらゆる開発プロセス(CloudBuild)においてkubernetesをこうやって使えば便利ですよ」という提案が感じられました。

CloudBuildやGKE(GoogleKubernetesEngine)を使ってこそのGCPであるのかもしれません。

今回は今流行りのKubernetes切り口でGoogleCloudを見ていましたが、GoogleCloudは他の大規模なクラウドサービス(AWS/Azure/AlibabaCloud)と比べて特徴的なことが多いです。
特に「ネットワーク」についてはご飯が何杯でも食べられるくらいに。
GoogleCloudのネットワークについては下記のスライドが参考になります。

SDNはこうやって使うのか・・・と目からウロコでした(昔、思いつきで「次のホスティングサービスのネットワーク周りはSDNにしよう!」と言ったらネットワーク屋さんにすごく白い目で見られたことが・・・)。

最後に

2回にわたってGoogle Cloud Next ’18 in Tokyoのレポートをお送りいたしました。
正直なところ以前から「GCPは当社のサービスにはあまりマッチしてない」と思っていましたが今でもその思いはあまり変わりません。けれどサービス提供用の基盤ではなく、当社がサービスを運営するバックエンドの基盤としてはものすごく魅力を感じました。CI/CD、サービスのデータ分析、G Suite等。
とりあえずパッケージのMS-Office使うのやめてGSuiteかOffice365使ってどこでも仕事できるようにしていただけませんかね>情シスの皆様