How Community Infrastructure Helped Grow Taiwan's Open Source Contributors SPEAKERS Ching Kuo · ChengHao Yang COMMUNITY CNTUG · Cloud Native Taiwan User Group PROJECT Infra Labs · openstack.cloudnative.tw CNTUG · Infra Labs · KubeCon Japan 2026 01
and runs the infrastructure Started as an Infra Labs user DAY JOB Technical Support at Mirantis UPSTREAM Kubespray maintainer & approver COMMUNITY CNTUG · Infra Labs operator COMMUNITY CNCF Ambassador · KCD Taipei organizer BASED IN Tokyo SINCE Applied to Infra Labs in 2022 to learn Kubernetes TELLS Part 1: building the community cloud TELLS Part 2: the contributor journey @iGeneKuo CNTUG / Speakers @tico88612 02
1 · CHING 01 The barrier 02 Infra Labs 03 Who shows up why real infra is hard to reach a free community cloud, with one condition students, first-time contributors PART 2 · CHENGHAO 04 From user to maintainer CNTUG / Agenda ChengHao's story · Kubespray 03
Everyone wants real infrastructure. Almost nobody can run it. LAPTOPS PUBLIC CLOUD CONTRIBUTING Simulated nodes, one machine. Pay-as-you-go punishes learning. Upstream work needs real clusters. kind and minikube simulate multi-node, but every node shares one physical disk, one NIC, Multi-node is easy to rent, but costs far more than any free tier. One misconfigured Testing a Kubespray PR takes multi-node clusters with real networks. Less and (on the default driver) one kernel. Crash the kernel on one node and you crash them autoscaler creating instances overnight is a bill a student can't afford. infrastructure, slower contribution. The barrier stops new contributors before they start. all. Real failures need real, separate machines. CNTUG / 01 · The barrier 06
DID ABOUT IT A personal rack became a community cloud. I built a private OpenStack cloud to teach myself infrastructure. Most of its capacity sat idle. So under CNTUG we opened it up: free resources for students, developers, and open source communities in Taiwan. That's Infra Labs. CNTUG / 01 · The barrier 07
Half a rack. Own ASN. All open source. Five EPYC servers in a Tokyo colo, BGP-peered over 2×100G as AS147035. OpenStack for IaaS, Ceph for storage, OVN for networking, Kubernetes for orchestration: the same production shape you'd meet at a real job. /23 public IPv4 + /48 IPv6, dual-stack from day one. GPU passthrough on request. CNTUG / 01 · The barrier 08
PIPELINE Three steps from a Google Form to a running VM. STEP 01 STEP 02 STEP 03 Apply. Approve. Provision. A short form: who, what you're building, how long, what you'll give back. Two weeks to six months, renewable. A human reads the intent and the quota. Vague intent gets a follow-up question, not a rejection. A daily cron picks up approved rows: OpenStack project, quotas, welcome letter. Thirty seconds of admin work per user. CNTUG / 02 · How it works 10
USERS GET CEPH CLUSTER · LIVE A real cloud, not a sandbox. Virtual machines Nova Block + object storage Ceph RBD + RGW OPENSTACK · TENANT USAGE Tenant networks + floating IPs OVN Load balancers Octavia Public DNS Designate IPv4 + IPv6 dual stack from day one CNTUG / 02 · How it works 11
CONDITION We don't charge money. We charge contribution. Every applicant promises how they'll give back: code, a talk, or docs. The promise is part of the application, and every kept promise is logged publicly at docs.cloudnative.tw. CNTUG / 02 · How it works 12
USERS People who can't buy a homelab yet. Students who want to run multi-node Kubernetes but don't have the resources for it. Speakers who need a stable environment to demo in talks. Contributors who want to test their PRs before sending them for review. Workshops that give every participant a Kubernetes cluster to play with. CNTUG / 03 · Who shows up 14
THE NUMBERS Half a rack, this many people. 20+ 13 224 1.5+ Accounts issued since launch Active OpenStack projects today Physical CPU cores serving them TB of ECC RAM serving them CNTUG / 03 · Who shows up 15
WORKLOADS What people actually build on it. PATTERN 01 PATTERN 02 PATTERN 03 Their first real cluster. Contribution environments. Demos, workshops, writing. Test clusters for upstream PRs: Kubespray, Kafka CI, Ray build servers. Multi-node, real Live demo environments for talks, hands-on workshop clusters, and 30-day blog series networks. What upstream review actually requires. written end-to-end on the cluster. kubeadm or Kubespray on OpenStack VMs. Three nodes, ingress or Gateway API, certmanager, a real public hostname: the stack you can't run on a laptop. CNTUG / 03 · Who shows up 16
LOOP CLOSES In 2022, one application said: “I want to learn Kubernetes.” 2022 2024 2025 NOW Learned Kubernetes on Infra Labs · wrote 30 articles First Kubespray contribution · became a reviewer Added as Kubespray approver, a maintainer ChengHao tells the rest of the story CNTUG · Infra Labs · Part 2 17
ITHOME IRONMAN CHALLENGE Thirty tutorials in thirty days, and nowhere to run them. I wanted to write tutorials readers could follow and reproduce, not concept overviews. One problem: every environment I had access to was the wrong one. COMPANY ENV PUBLIC CLOUD LAPTOP Real, but unpublishable. The meter, again. kind couldn't fake it. The clusters at work were production-grade, Thirty days of deploy-break-rebuild on The scenarios worth writing about (multi-node and confidential. No screenshots, no configs, no public endpoints a reader could follow. metered infrastructure: a bill no student side project survives. networking, node failures, persistent storage) don't exist on a single node. CNTUG / 04 · The opportunity 19
CHANGED Infra Labs didn't teach me Kubernetes. It gave me a place to keep practicing. WHAT PRACTICING LOOKED LIKE · THE 30-DAY SERIES My first cluster that didn't vanish: real VMs, real networks, a public IP, and time. Not a course. Not a sandbox that resets. A lab that was still there every morning, ready for the next experiment. CNTUG / 04 · The opportunity 20
DAYS · 30 ARTICLES Every article was a deployment, not a summary. REAL DEPLOYS Every post started from an actual deployment on Infra Labs: configuration that ran, not configuration that should run. REAL PITFALLS Every error a reader would hit had already happened to me the night before, with the way out written down. REAL VERIFICAT I ON Nothing published until it worked end to end on the cluster, from empty project to working demo. CNTUG / 04 · Build in public 21
2023 · ON STAGE WHAT THE CHALLENGE LEFT BEHIND The merit award wasn't the prize. The habit was. The thirty days ended. The sharing didn't, and it hasn't stopped since. CNCF BLOG · AMBASSADOR POST · JULY 2026 Kubernetes Monitoring COSCUP Sonobuoy Conformance Testing blog Understanding DRA in Kubernetes CNCF blog Every talk brought new friends from the community. CNTUG / 04 · Build in public 22
Nobody told me to contribute. I wanted to try. KUBESPRAY · PR #11084 · FIRST CONTRIBUTION · APR 2024 After a year of building and writing in public, giving something back felt like the natural next step. So I started with something simple that helped the maintainers: a dependabot config for Kubespray, keeping dependencies up to date. CNTUG / 04 · Upstream 23
ACCEPTED · 2024 THE LOOP Solve your own problem. Send the answer upstream. LFX Mentorship 2024 · Term 2 LFX MENTORSHIP · COMPLETED · THE PROGRAM ENDS Accepted as a CNCF mentee on Kubespray: bug fixes & enhanced Helm support for add-ons. A catalyst, with a start date and an end date. Kubespray maintainer · 2025 The mentorship ended. The contributing didn't: docs fixes, small bugs, reviews, approver. The same loop, for another year. CNTUG / 04 · Upstream 24
#11453 · REVIEWER · 2024 THE PART I WANT YOU TO HEAR I never planned to become a maintainer. It accumulated. KUBESPRAY · PR #12281 · APPROVER · 2025 I just kept solving problems I actually had and sending the answers back. Contributor, then reviewer, then maintainer. Each title was a side effect of work that was already there. CNTUG / 04 · Upstream 25
This February, I came back to LFX. As a mentor. The program that once handed me my first structured work in Kubespray now lists a project idea I proposed. LFX 2026 Term 1: same project, other side of the table. CNCF/MENTORING · PR #1576 · MERGED JAN 2026 CNTUG / 04 · Give back 26
back KAFKA E2E TESTING · JENKINS ON INFRA LABS From user, to maintainer, to bridge. MAINTAIN I keep the lab running now. After the challenge, I joined the team behind Infra Labs, maintaining the platform I once applied to as a student. Without it, none of this happens. ONBOARD I bring communities in. Helped ALC Taipei stand up their Kafka end-to-end testing platform on Infra Labs: the Jenkins on the right, running live. CONNECT I wire projects to resources. As a CNCF Ambassador, connecting open source communities with the infrastructure they need to build and test. CNTUG / 04 · Give back 27
WHOLE LOOP Infrastructure doesn't create maintainers. It lets more people start. Infra Labs → Learning → Sharing → Open Source → Maintainer → Giving Back → Next Contributor I'm just one example. @tico88612 CNTUG · Infra Labs · Thank you 28