Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
クラウドサービス事業者におけるOSS
Search
Satoshi Tagomori
February 21, 2025
Technology
4
1.9k
クラウドサービス事業者におけるOSS
Open Source Conference 2025 Tokyo/Spring
Satoshi Tagomori
February 21, 2025
Tweet
Share
More Decks by Satoshi Tagomori
See All by Satoshi Tagomori
さくらのクラウドにおけるCloudNativeのいまとこれから
tagomoris
5
920
State of Namespace
tagomoris
5
6.2k
パブリッククラウドのプロダクトマネジメントとアーキテクト
tagomoris
4
1.2k
2000年てづくりキーボードの旅
tagomoris
1
240
Namespace, Now and Then
tagomoris
0
360
Namespace on read
tagomoris
2
550
ソフトウェアエンジニアの入力と出力
tagomoris
1
92
RubyKaigi Effect 2023, and ...
tagomoris
1
1.1k
Namespace, What and Why
tagomoris
9
20k
Other Decks in Technology
See All in Technology
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
8
630
LIFF CLIとngrokを使ったLIFF/LINEミニアプリのお手軽実機確認
diggymo
0
170
AI時代の知識創造 ─GeminiとSECIモデルで読み解く “暗黙知”と創造の境界線
nyagasan
0
190
Tableau API連携の罠!?脱スプシを夢見たはずが、逆に依存を深めた話
cuebic9bic
2
190
Claude CodeでKiroの仕様駆動開発を実現させるには...
gotalab555
3
660
反脆弱性(アンチフラジャイル)とデータ基盤構築
cuebic9bic
2
140
【CEDEC2025】『ウマ娘 プリティーダービー』における映像制作のさらなる高品質化へ!~ 豊富な素材出力と制作フローの改善を実現するツールについて~
cygames
PRO
0
190
[TechNight #91] Oracle Database 最新パフォーマンス分析手法
oracle4engineer
PRO
4
340
ファインディにおける Dataform ブランチ戦略
hiracky16
0
250
【CEDEC2025】『Shadowverse: Worlds Beyond』二度目のDCG開発でゲームをリデザインする~遊びやすさと競技性の両立~
cygames
PRO
1
240
Rubyの国のPerlMonger
anatofuz
3
700
2025-07-25 NOT A HOTEL TECH TALK ━ スマートホーム開発の最前線 ━ SOFTWARE
wakinchan
0
200
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
44
7.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Mobile First: as difficult as doing things right
swwweet
223
9.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Bash Introduction
62gerente
613
210k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
A Modern Web Designer's Workflow
chriscoyier
695
190k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Transcript
マネージドサービスとオープンソースSDK クラウドサービス事業者における OSS Open Source Conference 2025 Tokyo/Spring, 2025-02-21 Satoshi
Tagomori (@tagomoris)
@tagomoris Satoshi Tagomori Sakura Internet from 2024.08 Maintainer/Founder: OSS: Fluentd,
MessagePack, Norikra, Woothee, … Event: ISUCON Service: Pathtraq
None
本 日 のストーリー マネージドサービスとオープンソースSDK • さくらのクラウドというパブリッククラウド • パブリッククラウドにおけるサービス、プロダクト • クラウドの実装、マネージドサービスとOSS
• クラウドのオープンソースSDK • OSS、SDK、そしてマネージドサービス
さくらのクラウドという パブリッククラウド
None
さくらのクラウド IaaS型クラウドからフルスペックのクラウドサービスへ • IaaS型クラウドサービスとして2011年にサービス開始 • サーバ(VM)、ストレージ、ネットワーク • 高火力 (GPU)プランの追加など •
2023年、ガバメントクラウドの条件付き認定 • 〜2026年3 月 :認証や統制、PaaS含むマネージドサービス等を順次提供
ガバメントクラウド • デジタル庁が整備する、政府全体で共通利 用 するクラウドサービス基盤 • 既存の「パブリッククラウド」を活かし、柔軟迅速にセキュアなシステム基盤の 調達を可能とする • 政府や
自 治体アプリケーション開発を現代的なものとし、国 民 に利便性の 高 い サービスをいち早く提供することにつなげる • ガバメントクラウド対象クラウドサービスはデジタル庁にて認定 • デジタル庁から出ている技術要件を満たす必要がある
ガバメントクラウド技術要件 • 令和5年度募集の技術要件 • 17項 目 /約300件の技術要件を「全て」満たす必要がある • 基本事項、(1)コンピュート(サーバ)機能、(2)ストレージ、(3)データベース、 (4)サーバレス・コンテナ関連機能、(5)API関連機能、(6)アプリケーション連携機能、
(7)データ分析機能、(8)コードリリース機能、(9)ネットワークとCDN、 (10)システム運 用 管理機能、(11)ユーザ管理、(12)バックアップ、 (13)データポータビリティ・移 行支 援機能、(14)セキュリティ機能、 (15)暗号 管理とデータ保管セキュリティ、(16)機械学習関連機能 • 要件のリストは以下のURLから参照可能 https://www.digital.go.jp/procurement/3058bc41-ee8f-49bb-8f22-8def725f6f3f
ガバメントクラウド技術要件 基本事項からいくつか抜粋 大 項 目 項 目 項番 要件 基本事項
サービス全般 1 外部からネットワーク経由で提供される情報処理サービスであり、コンピュータや通信ネ ットワーク等の情報処理基盤を意識することなく、情報通信技術の便益やアプリケーショ ンを享受可能にし、サービスの利 用 結果が契約主体及び利 用 主体に定量的に明 示 できるこ と。 基本事項 サービス全般 3 災害時等において、公的に必要なサービスを優先する機能を有すること。 基本事項 サービス全般 4 いわゆるCOTS(commercial off-the-shelf)として広く提供されているサービスであ り、個別に開発されたものではないこと。 基本事項 サービス全般 7 技術的および物理的に共有されたところがなく完全に分離された複数のデータセンター 区画で「ゾーン」を構成し、冗 長 化を確保すること。 基本事項 サービス全般 10 情報資産はユーザが指 示 しない限り 日 本国内に保管されること。 基本事項 実績 15 日 本国内のデータセンターで当該クラウドサービスを 自 らが3年以上運営しているこ と。 基本事項 マネージドサービス 25 全てのマネージドサービスは、監視やログ管理等の運 用 系マネージドサービスと最初か ら連携しており、設定の詳細な操作ログや監視メトリクスが取得可能であること。
ガバメントクラウド技術要件 抜粋 大 項 目 項 目 項番 要件 コンピュート
(サーバ)機能 機密コンピューティ ング環境 4 クラウド利 用 者からは完全に分離し暗号化された仮想マシンでデータの暗号化/復号が 行 えるサービスまたはサポートが提供されていること。 ストレージ オブジェクト ストレージ 5 オブジェクトストレージは、99.999999999%以上のデータ耐久性を持ち、ファイルの 永続的な保管ができること。そのための仕組みを備えること。かつ 大 規模災害対策の観 点で複数リージョン間でのレプリケーションが利 用 可能であること。 アプリケーショ ン連携機能 メッセージングサー ビス 4 ユーザが構築するソフトウェア同 士 の連携を抽象化し 非 同期に 行 うためのメッセージング サービスが利 用 可能であること。(以下省略) アプリケーショ ン連携機能 メッセージングサー ビス 5 ユーザが意識せずとも 自 動的に、概ね無制限にスケーリングすること。ただし意図せぬ利 用 によって発 生 する 高 額請求を防ぐための制限は例外とする。 ネットワーク CDN 18 CDNサービスはグローバル10拠点以上で利 用 できること。
パブリッククラウドにおける サービス、プロダクト
サービス、あるいはプロダクト パブリッククラウドのサービス的特徴 • マルチテナント • オンデマンド • システム・オペレーションの構成部品 • フルスタック
マルチテナント あらゆる業種・業界の顧客が同居 • クラウド 自 体は業種・業界を選ばず、顧客層も広く分布 • クラウドの1サービスに多種多様なものが同居 • ユースケース
• ワークロード • それぞれに異なる要求をもつ顧客群 • 可 用 性、信頼性、性能、セキュリティ
オンデマンド 24時間いつでも、リクエストされたら即座に • IaaS • VM、ストレージ、ネットワークなどを要求に対して即座に提供 • PaaS、SaaS • 24時間常にオンライン、稼動のピークが読めない
システム・オペレーションの構成部品 あらゆるものの 一 部分となる • 顧客のシステムの動作基盤となる • VM、ストレージ、ネットワーク、ロードバランサ、CDN • 顧客のアプリケーションの
一 部となる • DB、キュー、ワークフロー、API Gateway、シークレットマネージャ • 顧客のオペレーションの実 行 基盤となる • 認証認可、バックアップ、コンテナリポジトリ、KMS
フルスタック データセンタから、PaaS、SaaSまで • SaaS:セキュリティ、認証、…… • PaaS:コンテナ実 行 、DB、キュー、ワークフロー、データ分析基盤、…… • IaaS:仮想化基盤(仮想マシン、仮想ストレージ、仮想ネットワーク)
• 機器:サーバ、ストレージ、スイッチやルータ、…… • 回線:拠点間接続、インターネット接続 • 拠点: データセンタ、エッジロケーション
クラウドの実装 マネージドサービスとOSS
さくらのクラウドで使われるOSS クラウドサービス基盤で使われているOSSなど • Linux KVM, QEMU, Open vSwitch, VyOS, Kubernetes,
Knative, … • PHP, Perl, Python, Go, Java, TypeScript, … • MySQL, TiDB, PostgreSQL, Elasticsearch, RabbitMQ, … • Nginx, Apache HTTPd, Django, Apache Iceburg, Trino, … • React, Vue.js, … • Terraform, Ansible, …
マネージドサービスの実装 ソフトウェアと動作環境をサービスとして提供する • RDB/NoSQLサービス • MariaDB, PostgreSQL, Cassandra • モニタリングサービス
• VictoriaMetrics, OpenTelemetry Logging • 開発・運 用 系ツール • Git, Container Registry, Terraform, …
OSSの体験をクラウドへ 現代のソフトウェアエンジニアはOSSの上で 生 きている • OSSの体験とは? • 分かりやすいドキュメント • 必要
十 分な機能 (多過ぎない機能?) • 納得感のあるAPI • 既存のOSSとの親和性 • “なんとなく期待したように動く”
技術主権とOSS 我々が、我々の責任で選び、開発し、運 用 する • クラウドの 文 脈で最近聞かれるのが「ソブリンクラウド」 • “sovereignty”:
主権 • 技術主権 • OSSを中 心 にした技術スタック、我々 自身 が責任をもって選び、使う • 他社の決定に我々のクラウドの未来を左右されない • 安定したサービスを顧客に提供するための選択
クラウドのオープンソースSDK
フルスタッククラウドと顧客システム クラウドと顧客システムは密接に絡みあう )8 ,7. -JOVY "QQ "QQ %# 0CKFDU "1*(BUFXBZ
$%/ -# 6*$MJFOU -# $MJFOU %$ /8 )8 ,7. -JOVY %$ /8 )8 ,7. -JOVY %$ /8 $POUBJOFS3VOUJNF "QQ 2VFVF 8PSL fl PX "QQ "QQ $POUBJOFS $POUBJOFS .BOBHFE *OGSB
フルスタッククラウドと顧客システム あらゆるところに顧客システムとクラウドの接点がある )8 ,7. -JOVY "QQ "QQ %# 0CKFDU4UPSBHF "1*(BUFXBZ
$%/ -# 6*$MJFOU -# $MJFOU %$ /8 )8 ,7. -JOVY %$ /8 )8 ,7. -JOVY %$ /8 $POUBJOFS3VOUJNF "QQ 2VFVF 8PSL fl PX "QQ "QQ $POUBJOFS $POUBJOFS 0CKFDU "1*(BUFXBZ $%/ -# -# $POUBJOFS3VOUJNF 2VFVF 8PSL fl PX $POUBJOFS $POUBJOFS %# .BOBHFE *OGSB
クライアントライブラリとSDK Software Development Kit includes Client Libraries • クライアントライブラリ:アプリとマネージドサービスの接点 •
特定の(クラウド)サービスを呼び出すためのライブラリ • 各 言 語の実装 (JVM, Go, Python, Ruby, .NET, JavaScript, …) • SDK • (クラウド)環境を整えるツールキット (クライアントライブラリを含む) • CLI Tools, Terraform Provider, CI/CD関連ツール, …
OSSとしてのSDK 顧客アプリケーション・システムの 一 部として動く • 顧客アプリケーションの 一 部となる • 顧客のコードとリンクされることに抵抗感を抱かれないライセンス
• 顧客のコードのふるまいを邪魔しない挙動 (メモリ、負荷、副作 用 ) • 顧客の運 用 の 一 部となる • 環境のデプロイやCI/CDパイプラインの 一 部となる • バックアップ、モニタリング、アラート、バッチ処理などを制御する
OSSとしてのSDK “これはOSSだからissue/pull-requestを送れるのでは?” • OSSとしてGitHub等で公開されるものが多い • 不満は出る • バグがある、挙動に不満がある、オプションが 足 りない、……
• クラウド側で実装された機能がサポートされない • 提供側の視点: issueやpull-requestを送られたときにどう対応すべきか? • クラウド側の事情もある、完全にフラットなOSSではありえない
OSS、クラウドSDK そしてマネージドサービス
間家具OSS by @fujiwaraさん 間を埋めるツールやミドルウェア IUUQTTQFBLFSEFDLDPNGVKJXBSBYJKJBOKJBKVPTTGBMTFTVTVNF
間家具OSS by @fujiwaraさん 間を埋めるツールやミドルウェア IUUQTTQFBLFSEFDLDPNGVKJXBSBYJKJBOKJBKVPTTGBMTFTVTVNF
OSSとSDK、マネージドサービス クラウドサービスの周りにOSSが 生 まれるパターン "QQ Ϛωʔδυ αʔϏε # Ϛωʔδυ αʔϏε
$ Ϛωʔδυ αʔϏε " "QQ Ϛωʔδυ αʔϏε ' "QQ Ϛωʔδυ αʔϏε % Ϛωʔδυ αʔϏε & "QQ ͦͦαʔϏεʹ ػೳΓͯͳ͍ͷͰ ผαʔϏεͱ߹ͤΔͱ ยํͷػೳʹΪϟοϓ͕ ࿈ܞͯ͠ಈ͍ͯ΄͍͠ͷʹ ͳ͔ͥ࿈ܞͯ͘͠Εͳ͍ʜʜ ΞϓϦଆʹ͋Γ͕ͪͳ ཁٻʹԠ͑ͯͳ͍
間家具OSSとクラウド開発 直近のfujiwaraさんの話から • 不満があって使いづらいようなところは、そもそも無いほうがいい • (他社クラウドでは)要望を上げることはできるが、直すことはできない • クラウドの中の 人 になったし、本来直すべきなら直せばいい
• とはいえ100%全員に使いやすいということはない • 好みやユースケースの違いはある • それぞれにとっての 間があって、そこを 小 さいツールで埋める
OSS、SDK、マネージドサービス 何を、どこで、どうやって直す? • ソフトウェアエンジニアのセンスと経験の 見 せどころ • サービスで直す? → それはユーザ全員にとって有益か?
• SDKで直す? → それはOSSとしてのライブラリにとって有益か? • OSSとして別に作る? → それは運 用 性を本当に改善するか? • そもそも、それは直せるのか? • クラウドから作っていれば、どこで直すこともできる
OSSとの関わりかたの ひとつとしての パブリッククラウド開発
SAKURA internet ࣾձΛࢧ͑Δ ύϒϦοΫΫϥυɾେنܭࢉࢿݯΠϯϑϥΛ Ұॹʹ࡞Γ·ͤΜ͔ʁ ソフトウェア開発、 インフラ基盤から フロントエンドまで 採 用
強化中! さくらインターネットではエン ジ ニア採 用 を強化しています さくらインターネットは新たなアイ デ アの創出に強い熱意と情熱を持って挑戦するお客様を は じ め、私たちとつな が りのあるす べ ての 人 たちのために、未来のある べ き姿を想い描きな が ら ―「やりたいこと」を「 で きる」に変える ― あらゆるア プ ローチを “インターネッ ト”を通 じ て提供します。 詳しくはWebサイトにて、カジュアル 面 談もやってます 👉 www.sakura.ad.jp/lp/recruit-engineer/