freeeの開発情報ポータルサイト

CloudNative Days Fukuoka 2023に参加しました!

こんにちは、SRE Platformチームのmohaと申します。

去る8/3、CloudNative Days Fukuoka 2023が開催されました。freeeからはSRE Developer eXperience (DX) チームのmiyahikaが登壇したほか、Dev brandingチームとSRE、PSIRTの有志がブース運営のため参加しました。

CNDF2023ロゴの前で撮影された現地参加メンバーの集合写真
現地参加メンバーの皆さん、大変お疲れ様でした!

登壇: ArgoCD version up を実施するメリットと注意点

event.cloudnativedays.jp

freeeからはSRE DXチームのmiyahikaが「ArgoCD version up を実施するメリットと注意点」というテーマでお話させていただきました。現地や配信で視聴してくださった皆さん、ありがとうございます。

本セッションは、優先度の兼ね合いなどでversion upを実施出来ていないチームの方向けに、version upの必要性や新機能のメリットを紹介して、Argo CD version upを実施するきっかけになるようなセッションを目指してテーマを選定し登壇資料を作成していました。

個人的には、freeeのブースで行っていた「デプロイ基盤、何使ってる?」アンケートでも、Argo CDが一番多いことを登壇前に確認できてテーマとしては良かったかなと安心して登壇に望めました笑

Argo CDの使用形態について聴衆の方々にアンケートをとるmiyahikaさん。自ら手を挙げて皆さんに手を挙げるよう促している。
Argo CDの使用形態について聴衆の方々にアンケートをとるmiyahikaさん

自分はfreeeのArgo CDの利用法には詳しいものの、社外のArgo CD活用事例については理解が浅かったため、会場の皆さんに向けて、「Argo CDを利用しているか」「Argo CDと組み合わせて使っているmanifest管理手法はな何か」という質問に挙手で回答していただけました。freeeの利用法と違う方も4割ほどいたので、その方たちにも分かりやすく話せるよう意識できてよかったです。

当日は視聴者数も多く注目度の高いイベントということで緊張していましたが、CNDFスタッフさんの説明が丁寧でサポートもしてくださり、前日準備から当日の登壇までスムーズにやりきることができました。イベントに関わって下さった皆さん、ありがとうございました。

ブース

私たちfreeeは、CNDF2023のスポンサーとしてブースを出展していました。Cloud Native技術は現在のIT業界での重要なトピックとなっており、freeeもこの分野での取り組みを強化しています。イベント参加は、新しい技術やトレンドを学ぶだけでなく、業界の仲間たちとの交流の場としても非常に価値があると考えました。

私たちのブースでは、freeeのSREチームの紹介を中心に展示していました。また、freeeのノベルティが当たるガラポン抽選やデモセッション、質疑応答の時間を設け、多くの方々にブースに立ち寄っていただきました。

ブース展示の様子

イベント期間中、私たちのブースでは「デプロイ基盤、何使ってる?」というアンケートも実施しました。ここで、その結果を発表します!

  • Argo CD: 29票
  • Flux CD: 3票
  • Jenkins: 20票
  • Spinnaker: 1票
  • クラウドプラットフォームのマネージドサービス: 25票
  • その他: 20票

Argo CDが最も多くの票を集める結果となりましたが、Jenkinsやクラウドプラットフォームのマネージドサービスも非常に人気があります。その他のカテゴリーについては、様々なツールや方法が寄せられました。今後のトレンドや業界の動向を探る一助として、非常に興味深い結果となりました。

「デプロイ基盤、何使ってる?」というアンケートの結果。Argo CD票がトップで29票を獲得。
「デプロイ基盤、何使ってる?」アンケート結果

CloudNative Days Fukuoka 2023に参加し、多くの方々と交流する機会を得られたことは、私たちにとって大きな収穫でした。次回もこのようなイベントに参加することを楽しみにしています。最後に、私たちのブースにお越しいただいた皆様、心から感謝いたします。

セッション

Cloud Native技術に関するカンファレンスとのことで、SREメンバーは交代でブースを抜け出し、各々興味のあるセッションを聴講していました。以下、各SREメンバーが最も印象に残ったセッションについて紹介します。

継続的プロファイルによる大規模アプリケーションの性能改善

event.cloudnativedays.jp

SRE DXチームのgussanです。オブザーバビリティの中でも、特に継続的プロファイルにフォーカスしたセッションについて紹介します。

マイクロサービスを運用する上でオブザーバビリティという概念は非常に重要であることはよく知られています。オブザーバビリティとは、簡単に説明すると、「追加のコードなしにシステムの状態を知ることができる状態」です。

オブザーバビリティの三本柱としては、ログ・メトリクス・分散トレーシングがよく知られていますが、それらに加えて プロファイル・ ダンプも重要であることがCNCFのホワイトペーパーでも指摘されています。本セッションではその中のプロファイルという側面を詳細に説明いただきました。

プロファイルとは、CPU・メモリなどのプログラム実行時の情報収集をするものです。関数の呼び出しレベルで、どれぐらいのリソースを消費しているか追跡することができます。可視化にはFlame Graphを用います。数%のオーバーヘッドを許容することで、コードの内容から、システムの状態の理由まで到達できるようになります。継続的プロファイルとは、このプロファイリングを定期的に行う手法です。大規模なマイクロサービスではインスタンスが数百立ち上がることもめずらしくないため、少しの改善で多くの効果が期待できます。

github.com

freeeではDatadogを用いて分散トレーシングを行っていますが、やはりエラーが起きたり、パフォーマンスが悪い場合のコードレベルでのデバッグは職人芸の側面があります。継続的プロファイルを導入することでマイクロサービスの運用をより楽にできないか検討したいです。

メルカリにおけるプラットフォーム主導のKubernetesリソース最適化とそこに生まれた🐢の可能性

event.cloudnativedays.jp

こんにちは、SRE Enablingチームのryuです。本セッションでは、殆どのサービスが同一のKubernetesクラスターに乗っているような環境でどのように安全にリソースの最適化出来るのか説明していただくとともに、そこで産まれたTortoiseについて紹介いただきました。

github.com

Kubernetesリソースの最適化にはNodeのインスタンスタイプの調整やSpotインスタンスの使用、VPAによる自動垂直スケーリング等によって行うことができます。そのリソース最適化の中にはHPAによる水平スケーリングの設定も含まれますが、HPAの設定は各種パラメータの調整とPodのリソースrequest値の設定を「上手く」行う必要があり非常に難しいという問題があります。そこでHPAとVPAを同時に動けるようにし、自動で水平にも垂直にもスケールするようにするTortoiseというKubernetes Controllerをメルカリさんの中で開発しています。

freeeでも多くのKubernetesリソースがありそのリソース最適化は個人的に課題感を持っているポイントです。今回説明いただいたポイントをもとにHPA含め各種設定を改めて見直すとともに、Tortoiseを使うことでリソース最適化に悩むことのない世界が来ることを期待しています。

オンプレミス回帰の動きに備えよ~クラウドの手法をオンプレミスでも実現するには

event.cloudnativedays.jp

最後は私mohaが聴講したセッションです。本セッションでは、既存のオンプレミス環境のクラウドシフト&リフトで思ったよりメリットを感じられなかった方々の間で徐々に広がっている、オンプレミス回帰の動きについて紹介いただくとともに、クラウドの便利な部分をうまく取り入れたオンプレミスを導入する方法について説明いただきました。

クラウドにもオンプレミスにも、それらの特徴がもたらすメリット・デメリットがあります。クラウドに着想を得た便利な機能を持つオンプレミス、いわゆるハイブリッドクラウドを構築することが、オンプレミス回帰に伴うハレーションを弱めることに繋がるかもしれません。ここではハイブリッドクラウドを実現するために必要なものとしてGitOpsを取り上げ、これをオンプレミスでも利用できるような基盤を構築するために必要な作業および工数について検討されていました。しかし、これには途方も無い工数がかかります。

オンプレミスでGitOpsを実現するためには、オンプレミス環境用IaCツールをスクラッチで開発した上、チケット管理ツールやGitリポジトリ、CIツール、IaCツールを相互に連動させる必要があります。やり遂げるためには段階を踏んで着実に進めること、そしてステークホルダーの理解がとても重要とのことでした。

freeeはファーストリリースから現在に至るまでオンプレミス環境を使った経験がなく、一貫してクラウドを前提とした開発体制をとってきました。しかし、もしサービス運用コストの関係でオンプレミス環境の利用が検討された際は、こちらのセッションで学んだことを活かして作業量やコスト、移行前後で得られる開発者体験の差を分析する必要があると感じました。

おわりに

全体を通して非常に学びある会となりました!Kubernetesからフェードアウトしていく話が冒頭のキーノートから出ていたり、クラウド技術を取り入れたオンプレミス回帰というテーマのセッションがあったりと、まさにクラウドの技術を活かしてどのように課題を解決するかという点に主眼の置かれたカンファレンスだったと感じました。またブース展示についても、アンケートやノベルティくじをきっかけにたくさんの方にお越しいただき、さまざまな観点から意見交換をすることができました。

本記事公開時点ではCNDF公式によるアーカイブ動画が配信されておりますので、発表の詳細や会場の雰囲気に興味を持たれた方は是非そちらもあわせてご視聴ください。

event.cloudnativedays.jp

またSREではメンバーを積極的に募集しています。もし興味を持っていただけましたら、まずはお気軽にカジュアル面談へお越しください。

jobs.freee.co.jp