ubicloud  by ubicloud

Open-source IaaS alternative to AWS

Created 2 years ago
10,322 stars

Top 4.9% on SourcePulse

GitHubView on GitHub
Project Summary

Ubicloud offers an open-source, self-hostable alternative to proprietary cloud providers like AWS, targeting developers and organizations seeking cost savings, control, and portability. It provides core IaaS services including elastic compute, block storage, networking, firewalls, and IAM, aiming to replicate essential cloud functionalities on bare metal infrastructure.

How It Works

Ubicloud employs a control plane/data plane architecture. The control plane, a Ruby application using Roda and Postgres, manages bare metal servers via SSH. It leverages Cloud Hypervisor within Linux namespaces for isolated VM execution. Networking is secured with IPsec tunnels, supporting dual-stack IPv4/IPv6, and utilizes Linux nftables for firewalls and load balancing. Block storage is provided via SPDK, with future plans for snapshotting and replication.

Quick Start & Requirements

  • Managed Platform: Use directly via https://console.ubicloud.com.
  • Self-Hosted:
    • Clone repo: git clone git@github.com:ubicloud/ubicloud.git
    • Generate secrets: ./demo/generate_env
    • Run containers: docker-compose -f demo/docker-compose.yml up
    • Cloudify servers: docker exec -it ubicloud-app ./demo/cloudify_server (requires SSH access to bare metal, default Hetzner support).
  • Prerequisites: Docker, Ruby, Postgres. IPv6 connectivity or tunnel broker recommended for VM networking.

Highlighted Details

  • Managed service is approximately 3x cheaper than AWS.
  • Control plane written in Ruby (Roda, Sequel, Rodauth) and managed via SSH (net-ssh).
  • VMs are isolated using Cloud Hypervisor within Linux namespaces.
  • Attribute-Based Access Control (ABAC) for fine-grained permissions.

Maintenance & Community

  • Founding team has experience from Azure, Amazon, and Heroku, including co-founders of Citus Data.
  • Community support available via a Community Forum.
  • Future plans include managed Kubernetes and monitoring services.

Licensing & Compatibility

  • The README does not explicitly state the license. However, the project is presented as "open source." Further clarification on licensing is recommended for commercial use or closed-source integration.

Limitations & Caveats

  • Block storage is currently non-replicated.
  • IPv6 is required or recommended for VM networking, necessitating potential VPN/tunnel setup if not natively supported.
  • The project is described as being in "public beta," indicating potential for ongoing development and changes.
Health Check
Last Commit

13 hours ago

Responsiveness

1 week

Pull Requests (30d)
175
Issues (30d)
3
Star History
483 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Vasek Mlejnsky Vasek Mlejnsky(Cofounder of E2B), and
1 more.

pezzo by pezzolabs

0.4%
3k
Open-source LLMOps platform for streamlining AI workflows
Created 2 years ago
Updated 2 months ago
Feedback? Help us improve.