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
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
Search
Takuto Nagami
February 13, 2025
Technology
2
4.7k
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
2024/2/13 Developers Summit 2025にて登壇した際の資料です。
Nekko Cloudを共に作っている、いるまる / ちょこざい と3人で登壇しました。
Takuto Nagami
February 13, 2025
Tweet
Share
More Decks by Takuto Nagami
See All by Takuto Nagami
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
370
GopherCon Tour 概略
logica0419
2
170
言葉の壁を越えて ~Gophers EXと歩む海外登壇への道~
logica0419
1
47
Maintainer Meetupで「生の声」を聞く ~講演だけじゃないKubeCon
logica0419
1
490
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
420
Gophers EX: What We’ve Been Up To in Feb–May 2025 / 2025年2~5月 Gophers EX活動報告書
logica0419
0
82
Gophers EX プロジェクト説明
logica0419
2
55
HA K8s Clusterのスタンダードが覆る!? Cilium 1.18の🔥激アツ🔥新機能
logica0419
0
290
External SecretsのさくらProvider初期実装を担当しています
logica0419
0
310
Other Decks in Technology
See All in Technology
about #74462 go/token#FileSet
tomtwinkle
1
280
「技術負債にならない・間違えない」 権限管理の設計と実装
naro143
35
11k
許しとアジャイル
jnuank
1
110
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
110
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
330
組織観点からIAM Identity CenterとIAMの設計を考える
nrinetcom
PRO
1
160
自作LLM Native GORM Pluginで実現する AI Agentバックテスト基盤構築
po3rin
2
240
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
1
860
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
VCC 2025 Write-up
bata_24
0
180
SOC2取得の全体像
shonansurvivors
1
360
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
1.8k
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Why Our Code Smells
bkeepers
PRO
339
57k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
The Cost Of JavaScript in 2023
addyosmani
53
9k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
The Language of Interfaces
destraynor
162
25k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド ネットワークコンテンツ研究会 Nekko Cloudチーム
Nekko Cloudチーム
「メンバーの自宅サーバーをVPN で繋いで、プライベートクラウド 作ろう!」っていうチーム 自称「マルチリージョンプライベートクラウド」
Nekko Cloudチーム • 学生サークルのプライベートクラウド開発チーム • 現在約10人 • 千葉工大所属の学生が多い クラウドを 作る・使う・得た知見を共有する!
過去 始めたきっかけ, 立ち上げ 菊池 兼矢 𝕏: @6ftAS GitHub: @irumaru
きっかけ クラウド開発に興味があり,個人でプライベートクラウドを 自宅で作っていた 目的: 1. クラウド開発の勉強 2. 個人で使うアプリケーション (ファイルサーバーなど) の
実行環境や開発環境 Proxmox VE 仮想化基盤 Ceph ストレージ基盤 mariadb データベース Kubernetes コンテナ基盤
きっかけ 個人開発(1人)では,できることに限りがあった 1. 冗長化 2. サービスを増やす 3. システムの保守(アップデート・物理マシンの清掃) → 大変
(ほしい機能だけど興味の薄い部分はある) → 人手が欲しい&みんなでやったらなんか楽しそう!
きっかけ/需要調査 クラウド作っているサークルを大学内で調査 → 2023年3月時点ではなし サークル作ってみよう! サークル立ち上げのアンケート→
きっかけ/サークルを作る! • 所属している技術系サークル ”ネットワークコンテンツ研究会”に新部門を設立 • プライベートクラウドを開発するチームを作る
方針 • 物理サーバをメンバーの自宅(リージョン)に分散して配置 • VPNでリージョン間オーバーレイネットワークを構築 • 上記のリソース上でプライベートクラウドを開発! ◦ k8s ◦
Ceph ◦ Proxmox VE など... クラウドを 作る・使う・得た知見を共有する!
現在 今のNekko Cloudの姿 井上 裕介 𝕏: @cyokozai0 GitHub: @cyokozai
我々のプライベートクラウドの要件 dev環境: メンバーが自由に開発・検証に使える • 部員が自由にVMを 作って・使って・壊せる 開発環境 prod環境: サークル内で利用するサービスを動かす •
外部からのアクセス可能 • 自動デプロイ 現在稼働中のサービス: NextCloud, Growi, Keycloak, Kubernetes, …
Nekko Cloudの構成 マルチリージョン プライベートクラウド 3拠点間をVPNで繋ぎクラスタを構築 • コアネットワーク • IaaS基盤 (Proxmox
VE) • コンテナ基盤 (Kubernetes) • ストレージ基盤 (Ceph)
Nekko Cloudの構成 コアネットワーク • 地理的に離れた3拠点を繋ぐVPN • ソフトウェアルータVyOSを使用 • NTT NGN網内折り返しによる
高速通信 → 拠点間RTT 約5ms で通信可能
Nekko Cloudの構成 IaaS基盤 (Proxmox VE) • Nekko CloudのVM基盤 • Proxmox
VE 8.2.7 • 自由にVMを使える
Nekko Cloudの構成 コンテナ基盤 (Kubernetes) • IaaS基盤上に作成したクラスタ • コンテナのデプロイ • サービスの外部公開
Nekko Cloudの構成 ストレージ基盤 (Ceph) • 現在開発中 • データの冗長性を担保 (リージョンが落ちてもアクセス可能に) •
大容量・高パフォーマンス (予定)
Ansible • ソフトウェアルータVyOSの 設定を自動化 • 最適化(Cloud-init対応, etc…) されたVMテンプレート構築 インフラ構築の最適化 手作業による人的ミスを減らし
操作内容の冪等性を確保する
VMを手軽に作る・壊す Service Discovery • VMに一意にアクセスするため固有のドメインを割り振る Terrakko • Discordからチャット感覚でVMを作成・変更・削除
未来 Kubernetesを地盤とする 「逆転した」クラウド 永見 拓人 𝕏: @logica0419 GitHub: @logica0419
今の構成をおさらい • Proxmox VE(IaaS)の 上にKubernetes(PaaS) が乗っている • VMとコンテナによる 「二重の仮想化」が 行われている
「二重の仮想化」がもたらす弊害 • 大規模な環境では基本的に便利 • 我々のような小規模な環境では面倒ごとが増える ◦ Proxmox VEとKubernetes、どちらにも詳しくないと 管理ができない ▪
管理人数が圧倒的に足りない ◦ 認証認可・監視など、欲しい要素を別々に用意 しないといけない
IaaSとPaaSの立場を逆転させる • Kubernetesの管理下でVMを動かす! ◦ 「KubeVirt」というOSSを使えば、VMをPodのように 扱うことが可能 • これを使えば、ベアメタルKubernetesを中心に全てを 構築することが可能
何より、こんなことが 出来たら面白い! Linux開発者の名言、「Just for Fun」の精神で 開発を進めています
さらにその先へ: 共通認証認可基盤 • 共通認証認可基盤プロジェクト: Kikkoff ◦ メンバーポータル 兼 OIDC Provider
• メンバーポータルとして ◦ Discordのみで認証する ◦ ロール付け等、独立したメンバー管理機構 • OIDC Providerとして ◦ 部内アプリケーションの認証手法を統一する
認証の「プロキシ」イメージ • これによって、 ◦ Discordの認証でありながら ◦ OIDCを使った認証情報の伝播ができる!
まとめ
まとめ • Nekko Cloudは、「複数人でクラウドを使う・作る」と いう楽しさを共有するために始まった • より便利なクラウド環境を目指し、今までに様々な施策 を行ってきた • これからは、単純なOSSの組み合わせではない、我々
だけの強みを探求していきたい
ありがとうございました
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド ネットワークコンテンツ研究会 Nekko Cloudチーム