yourmystar tech blog
著者: inase17000 公開日:

Google Cloud スキル習得のため J.A.M. に参加してきました

看板

J.A.M.とは?

クラウドエース社と Google 社の主催する招待制ワークショップである J.A.M.(Join to Cloud Accelerated Meeting)に、ユアアイスターから数名参加できることになりました。

J.A.M.では、Google Cloud の各種サービスの解説や、ハンズオンを通した Google Cloud のリソース作成を中心に、以下のような全 3 回の日程で具体的に手と頭を動かして Google Cloud を学ぶことができます。

  • 第 1 回(9 月 X 日 14:30 - 17:30):Google Cloud のサーバーレスソリューション
  • 第 2 回(9 月 Y 日 14:30 - 17:30):Google Cloud のデータベースソリューション
  • 第 3 回(9 月 Z 日 13:30 - 18:00):習得チェックワークショップ、懇親会

いずれも Google 社オフィスに集合しオフラインでのワークショップ形式で、クラウドエース社のカスタマーエンジニアが講師で進行していきます。

J.A.M.参加の目的

ユアマイスターでは現在、Google Cloud の利用を推進しています。特に Cloud Run や Firebase などサーバレスなウェブアプリケーションを構築するためのサービスを使っています。また、ユアマイスターは担当領域を絞ったアサインを行なっておらず、1 人のエンジニアがフロントエンドからバックエンドまで全て通して担当するのが当たり前になっています。インフラについては Terraform を使っており、設定内容をコードレビューを通したり、リリース作業を行ったりと、アプリケーション開発と同様のフローで管理されています。

在籍しているエンジニアの全員が Google Cloud に熟達しているわけではなく、まだまだ学ばなければいけないことが多くあります。一人一人に有料のリソースも利用可能な Google Cloud の個人開発プロジェクトを付与するなど、学ぶための環境は整えてあるものの、実際のところ、手を動かして使ってみるまではなかなか使いこなせるようになったという感覚は得られません。

Google Cloud の経験が少ない場合でも、基礎的な知識を体系的に学びつつ、実際に手を動かしてその知識を実践できるスキルに近づけてもらいたいという考えがあり、ユアマイスターから 2 名参加してもらうことにしました。

学びと振り返り

実際に参加した 2 名のエンジニアから、やったことと学びをまとめてもらいました。

第 1 回

第 1 回は Cloud Run を中心に Google Cloud が提供するサーバレスプロダクトの特徴やユースケースを学び、後半では Cloud Run を使ったハンズオンを行いました。

中根「Cloud Run にコンテナをデプロイするとデプロイごとにリビジョンが作成される、くらいの理解だったのですが、リビジョンごとに受信トラフィックの割合を指定できる機能があることを知りました。この update-traffic 機能によって簡単にカナリアリリースを行うことができ、実務でも役立ちそうです。」

中根「ハンズオンでは、concurrency(最大同時リクエスト数)や max-instances(最大インスタンス数)の設定変更によって実際に実行コンテナ数がオートスケーリングする様子を確認しました。gcloud コマンドの解説が丁寧で、前半で学んだ Cloud Run の特徴を実際のどのパラメータにより実現できるか勉強になりました。」

第 2 回

Day2

第 2 回は Google Cloud に存在するデータベースサービスについての紹介、ハンズオン形式でインスタンスを立ち上げて Cloud Spanner に触れるという内容でした。

南「第 2 回のセッションを受けて学びになったのは、各種データベースサービスが得意としている用途に当てはめることで、どのサービスを使えば良いかが見えてくるという点です。例えば Cloud Spanner は複数のリージョンにもインスタンスを立てることができるため、リージョン障害にも耐える必要が出てくる場合は Cloud Spanner が選択肢に入ってくるといった具合です。」

南「また Cloud SQL と AlloyDB を比較した時、CloudSQL は垂直でマシンのスペックを上げて性能を上げていきますが、AlloyDB の場合は垂直だけではなく水平方向にも対応しています。そのためより高可用性が必要なケースの場合は、CloudSQL と AlloyDB の選択肢があった場合は AlloyDB の方が適しているといったことを学びました。」

第 3 回

Day3ワークショップ中

Day3ワークショップ結果発表

第 3 回では今まで学んだことを通して、3 チームごとに分かれてお題に沿ったアーキテクチャを考えて各チームで発表するという形式の内容でした。各お題についての解説や質問タイムが最後にあり、その中で学びになったポイントを挙げてみます。

南「まず、分析基盤のアーキテクチャを考えるお題の中で、 BigQuery で操作するデータが増えてきた場合、どのようにしてコストを抑えるかという質問に対しての解説が行われました。解説では BigQuery でも Materialized View を作ることができ、ビューを作成して上記のケースに対応するといった内容です。BigQuery のビューを詳しく知らなかったため、コストを抑える場合はまずビューの検討が有効であると知りました。」

南「質問タイムではお題の中で出てきた Cloud Run について、考慮すべきセキュリティはありますか?という質問をしてみました。回答としては Cloud Run はコンテナイメージを使用するため、コンテナイメージのセキュリティについて考慮する必要があるという回答を頂きました。Prisma Cloud for Google Cloud's Artifact Registry というサービスを使って事前にイメージをスキャンして、脆弱性があった場合はデプロイしないなどの対応が取れるといったことを知ることができました。」

中根「また、発表は Cloud Run のオートスケールや Cloud Spanner のマルチリージョン対応など可用性を重視したものでしたが、フィードバックではインフラの費用面についての理解が求められたことが印象的でした。どのリソースに対して課金が発生するかや最小構成時の月料金などの解説もあり、費用面の視点も参考になりました。」

ワークショップの後は懇親会があり、他社のエンジニアと交流することができました。懇親会では、Google Cloud のサービスについての話題や、他社のエンジニアの方々のお話を聞くことができ、とても有意義な時間を過ごすことができました。

懇親会

まとめ

以上のように、ユアマイスターでは Google Cloud の利活用を推進するために、他社の提供するワークショップなどを有効活用し、エンジニアが技術習得するための支援を行っています。他にも有料の研修も含めて基礎から応用まで、エンジニアが学びを広げる環境を整えています。

他にもエンジニア技術習得の支援があるので、ブログにまとめていきます。お楽しみに。

ツイートするはてなブックマークに追加シェアする