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
2.1k
クラウドサービス事業者におけるOSS
Open Source Conference 2025 Tokyo/Spring
Satoshi Tagomori
February 21, 2025
Tweet
Share
More Decks by Satoshi Tagomori
See All by Satoshi Tagomori
Unboxing Ruby Box
tagomoris
4
130
Namespace and Its Future
tagomoris
6
790
さくらのクラウドにおけるCloudNativeのいまとこれから
tagomoris
5
1.1k
State of Namespace
tagomoris
5
8.6k
パブリッククラウドのプロダクトマネジメントとアーキテクト
tagomoris
4
1.3k
2000年てづくりキーボードの旅
tagomoris
1
280
Namespace, Now and Then
tagomoris
0
400
Namespace on read
tagomoris
2
570
ソフトウェアエンジニアの入力と出力
tagomoris
1
110
Other Decks in Technology
See All in Technology
2025年 山梨の技術コミュニティを振り返る
yuukis
0
150
田舎で20年スクラム(後編):一個人が企業で長期戦アジャイルに挑む意味
chinmo
1
1.2k
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
580
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
1.4k
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
21k
形式手法特論:コンパイラの「正しさ」は証明できるか? #burikaigi / BuriKaigi 2026
ytaka23
16
4.5k
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
1
1.7k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
270
AIと融ける人間の冒険
pujisi
0
110
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
710
First-Principles-of-Scrum
hiranabe
3
1.5k
Java 25に至る道
skrb
3
170
Featured
See All Featured
Getting science done with accelerated Python computing platforms
jacobtomlinson
0
89
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
86
The Art of Programming - Codeland 2020
erikaheidi
56
14k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
54
49k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
410
ラッコキーワード サービス紹介資料
rakko
0
1.9M
Making Projects Easy
brettharned
120
6.5k
Typedesign – Prime Four
hannesfritz
42
2.9k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
51
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/