システム基盤開発グループの永富(id:yassan0627) と 齊藤(id:saitoperf) です!
今年はCloud Nativeな年になりそうです。
理由としては、今年の5月は沖縄で CloudNative Days Summer 2025 が開催され、また、6月に東京で KubeCon + CloudNativeCon Japan 2025 が開催されます。
もう今年はCloud Nativeな年と言っても過言ではありません!
そこで、そんなビックイベントの前に、昨年の年末 11/28-29 に開催された CloudNative Days Winter 2024 の参加レポートをきっかけに思い返してみるのはいかがでしょうか。
イベントページ
event.cloudnativedays.jp
ツイートまとめ
togetter.com
togetter.com
時間がだいぶ開いてしまった言い訳ではないです。
(´-`).。oO(じゃないよ)
では以下の流れで進めてきます!
マイクロアドとCloud Native(Kubernetes)
マイクロアドでは以前から小さい規模でKubernetes管理プラットフォームのSUSE Rancherを使ってKubernetesを利用して来ました。
しかし、去年の10月から実行容量2ペタバイトのデータ基盤をKubernetesを用いた新しいデータ基盤に移行し始めています。新しいデータ基盤では、ワークロードの実行エンジンとしてApache SparkとTrinoをKubernetes上にデプロイして使っています。また、テーブルフォーマットはHiveテーブルからIcebergテーブルに変更し、いわゆる、Data Lakehouseアーキテクチャを採用しています1。
ここまで来るのには紆余曲折あったのですが、この話はどこかでしたいなと考えています(Cloud Native Daysで話せたら良いなぁ)。
それではここからは、永富と齊藤から本題のCloudNative Days Winter2024で印象に残っているセッションについていくつか挙げていきます!
印象に残っているセッションについて(永富)
スライド :LINEヤフーにおける超大規模プラットフォーム実現への挑戦と学び
このセッションはLINEヤフー社のプラットフォームとしての取り組みの紹介でした。マイクロアドではとても同じ規模感まで到達出来そうにはありませんが、プラットフォームとして提供する為の考え方や取り組みについて紹介されていて参考になりました。
特にセッション中に紹介されていた「Platform as a Product」というマインドセットとその取組みが参考になりました。 「Platform as a Product」は社内プラットフォームを顧客向けのプロダクトの様に扱うプラットフォームチームのマインドセットと定義したものでした。
私の所属するチームでは各システムのインフラを横断して提供している事から自然とプラットフォームエンジニアリングの思想を目指してきました。
ただ、これまでは、ぼやっとしたイメージで言語化されてなかったのですが、昨今のプラットフォームエンジニアリングに触れることで言語化され目指す方向性になりました。
今後は「Platform as a Product」 を参考にしながら同様な取り組みをしていきたいと考えています。
スライド :クラウドコストと使用量を最適化し、ビジネス価値の最大化へと導く「FinOps」の実践アプローチのご紹介
FinOpsは最近よく耳にしていたのですが、恥ずかしい話、「Fin+Opsだから金融業界の話かな?」くらいで誤解したままスルーしてました。しかし、コストに関する課題を解決するために出来た方法論と知って気になっていました。
このセッションでは、そのFinOpsについて「とりあえず、これ観ておけば始められる」って内容になっていて、最初の足がかりとしてとても参考になりました。また、FinOpsフレームワークと言うものがあり、どの様に取り組んでいけば良いのか考える為の良い情報でした。
また、FinOpsフレームワークに「スコープ」という要素が去年末に追加され、そこにはパブリッククラウドだけではなく、SaaS、データセンターも入っていました。マイクロアドはパブリッククラウドも利用していますが、メインはオンプレなのでとても助かります。
特にKubernetesを利用するにあたり、基本的にマルチテナントで利用することになるのでその際に、コスト按分をどうするかについて課題になっていたのでとても期待しています。
また、具体的な取り組みとしては他のセッションもあったのですが、以下のZOZO社の取り組みについては特に参考になりました。
スライド :間違いだらけのポストモーテム - ホントに役立つレビューはこうだ!
「ポストモーテム」よりも前向きに「ポストインシデントレビュー」と捉えるという言い換えはいいなと思いました。またセッションで出てきた「Blame-aware」というマインドセットも良かったです。
「Blame-aware」は「Blameless」から更に踏み込んで「Blame-aware」という考え方です。一方BlamelessはSREで重視される「非難をしない」文化・マインドセットのことで、特にポスモーテムにおいて個人を責めず、学習と改善にフォーカスすること指しています。 また、Blamelessは心理的安全性の確保や組織学習を促すために非常に有効ですが、その一方で人間の感情や組織の政治的要因をまったくなくすことは難しいという現実もあります。
そこで、Blame-awareは、そうした現実を考慮に入れながらも、最終的にはBlamelessの精神を活かしてインシデント対応や学習サイクルを継続・発展させようという考え方です。
これは地に足ついた考え方だなぁと素直に思いました。
また、ポストインシデントレビューの際の質問の仕方についても「何故これが起きたのか?」ではなく「何故これが理にかなっていたか?」って観点で質問していくってのは参考になりました。
印象に残っているセッションについて(齊藤)
スライド :乗っ取れKubernetes!! ~リスクから学ぶKubernetesセキュリティの考え方~
本セッションは、まず過去発生した攻撃事例を再現しその後にさまざまな防御手段について紹介するといった内容でした。 脆弱性を持つ設計をすると、割と簡単に重要な情報を抜き取られる可能性があることを知りました。 私齊藤はまだプロダクション環境のKubernetesクラスタを設計したことがないので、今後そのような機会があった時にセキュリティに関してはあたらめて勉強し直す必要がありそうです。
(本セッションの登壇者は「リスクから学ぶ Kubernetesコンテナセキュリティ」著者の望月さんでした)
スライド :クラウドネイティブへの小さな一歩!既存VMからコンテナまで、KubeVirtが実現する『無理しないペースの移行』とは!?
KubeVirtは、Kubernetesで仮想マシンを管理・運用する仕組みです。 本セッションはKVMの解説から始まり、どうやって仮想マシンをKubernetesで管理するのか?仮想マシンをわざわざKubernetesで管理するメリットは何か?を初心者にも分かりやすく解説していました。
KubeVirtには興味はあったものの触れられていなかったので、KubeVirtのアーキテクチャから導入方法・導入メリットまで知れてとても良かったです。 マイクロアドではアプリケーションのコンテナ化を進めていますが、まだコンテナ化されていないアプリケーションも存在するので、今後検証に取り入れられたら面白そうと感じました。
現地参加して良かったこと
会場にはディスカッションボードがあり、それをネタに雑談するなど出来る点が良かったです。また、登壇者を見つけてその場でホワイトボードを使って質問したり出来たのがとても良かったです。さらに、ディスカッションしやすいようにホワイトボードの近くにいくつかテーブルで島を作っていたのも良かったです。「ここで〇〇についてディスカッションしてる(orしたい)」ってことをブロードキャスト出来る仕組みがあれば更に良くなったなかなぁと妄想しました(永富)。
今年もクイズ企画が開催され見事5位に入賞することができ、クジラのぬいぐるみをいただくことができました!(齊藤)(※ ただのクジラです)
さいごに
今回挙げたセッション以外にも多種多様なセッションがあります。
セッション動画は以下からセッション動画とスライドが参照出来るので是非ご覧ください!
-
Trinoの話がメインにはなりますが、ざっくりとした話を過去にTrino Conference Tokyo 2023で話したので気になる方は以下のスライドを参照ください。
sd-portal.microad.co.jp↩