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.9k
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
Fundamentals of Memory Management in Go: Learning Through the History
logica0419
0
59
GopherCon Tourのつくりかた
logica0419
1
57
Go言語はstack overflowの夢を見るか?
logica0419
0
570
あなたの言葉に力を与える、演繹的なアプローチ
logica0419
1
200
GC25 Recap+: Advancing Go Garbage Collection with Green Tea
logica0419
1
650
GopherCon Tour 概略
logica0419
2
330
言葉の壁を越えて ~Gophers EXと歩む海外登壇への道~
logica0419
1
53
Maintainer Meetupで「生の声」を聞く ~講演だけじゃないKubeCon
logica0419
1
530
理想の英語力に一直線!最高効率な英語学習のすゝめ
logica0419
6
440
Other Decks in Technology
See All in Technology
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
330
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
140
知覚とデザイン
rinchoku
1
570
Zephyr(RTOS)にEdge AIを組み込んでみた話
iotengineer22
1
340
From Natural Language to K8s Operations: The MCP Architecture and Practice of kubectl-ai
appleboy
0
200
GraphRAG グラフDBを使ったLLM生成(自作漫画DBを用いた具体例を用いて)
seaturt1e
1
140
RemoteFunctionを使ったコロケーション
mkazutaka
1
100
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
170
Biz職でもDifyでできる! 「触らないAIワークフロー」を実現する方法
igarashikana
7
3.3k
オブザーバビリティが育むシステム理解と好奇心
maruloop
2
1k
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.8k
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
470
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.8k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
BBQ
matthewcrist
89
9.9k
Embracing the Ebb and Flow
colly
88
4.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
What's in a price? How to price your products and services
michaelherold
246
12k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
A designer walks into a library…
pauljervisheath
209
24k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Thoughts on Productivity
jonyablonski
70
4.9k
Agile that works and the tools we love
rasmusluckow
331
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
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チーム