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
logica / Takuto Nagami
February 13, 2025
Technology
2
880
Nekko Cloud、 これまでとこれから ~学生サークルが作る、 小さなクラウド
2024/2/13 Developers Summit 2025にて登壇した際の資料です。
Nekko Cloudを共に作っている、いるまる / ちょこざい と3人で登壇しました。
logica / Takuto Nagami
February 13, 2025
Tweet
Share
More Decks by logica / Takuto Nagami
See All by logica / Takuto Nagami
プロポーザル一次〆切に向けて
logica0419
0
28
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
640
Proposal Challengers 2025 募集説明会
logica0419
1
21
Kubernetesを知る
logica0419
19
6.3k
Resizing Animated GIFs Without CGO or Third-Party Libraries
logica0419
2
42
徹底比較!HA Kubernetes ClusterにおけるControl Plane LoadBalancerの選択肢
logica0419
2
380
外部カンファレンスで登壇しよう! 〜「強い」エンジニアへの一歩を踏み出す〜
logica0419
4
220
kube-vipとkube-proxy置き換えCiliumを積んだ究極のK3sクラスタを建てる
logica0419
4
630
ITエンジニアとして知っておいてほしい、電子メールという大きな穴
logica0419
10
1.5k
Other Decks in Technology
See All in Technology
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
6.8k
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
1
180
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
120
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
2.4k
君も受託系GISエンジニアにならないか
sudataka
2
410
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
540
プロセス改善による品質向上事例
tomasagi
2
2.2k
『AWS Distinguished Engineerに学ぶ リトライの技術』 #ARC403/Marc Brooker on Try again: The tools and techniques behind resilient systems
quiver
0
140
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
24
6.6k
Postman Flowsの基本 / Postman Flows Basics
yokawasa
1
100
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
320
運用しているアプリケーションのDBのリプレイスをやってみた
miura55
1
490
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Fireside Chat
paigeccino
34
3.2k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
A Modern Web Designer's Workflow
chriscoyier
693
190k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Thoughts on Productivity
jonyablonski
69
4.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
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チーム