• Stars
    star
    2,568
  • Rank 17,852 (Top 0.4 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A cloud-native open-source unified multi-cloud and hybrid-cloud platform. 开源、云原生的多云管理及混合云融合平台

Cloudpods

CircleCI Build Status Go Report Card

English | 简体中文

What is Cloudpods?

Cloudpods

Cloudpods is a cloud-native open source unified multi/hybrid-cloud platform developed with Golang, i.e. Cloudpods is a cloud on clouds. Cloudpods is able to manage not only on-premise KVM/baremetals, but also resources from many cloud accounts across many cloud providers. It hides the differences of underlying cloud providers and exposes one set of APIs that allow programatically interacting with these many clouds.

Who needs Cloudpods?

  • Those who need a simple solution to virtualize a few physical servers into a private cloud
  • Those who need a compact and fully automatic baremetal lift-cycle management solution
  • Those who want to turn a VMware vSphere virtualization cluster into a private cloud
  • Those who need a cohesive view of both public and private cloud in a hybrid cloud setup
  • Those who need a centric portal to access multiple acccounts from multiple public clouds
  • Those who is currently using a single cloud account, but will not lose the possibility to adopt multicloud strategy

Features

Summary & UI

Multi-cloud management that is able to manage a wide range of cloud providers, including private cloud, such as OpenStack, and public clouds, such as AWS, Azure, Google Cloud, Alibaba Cloud, Tencent Cloud, Huawei Cloud, etc.
  • Cloud account create form

    multi cloud management
  • Cloud accounts list

    cloud account list
  • Multi public cloud VM list

A light-weight private cloud that manages KVM hypervisor in scale
  • VM instances list

  • Create VM instance form

  • VNC and SSH login page

  • Host list

  • Image template list

  • VPC list

  • Wire list (Classic Network)

  • IPsubnet list

  • Eip list (VPC Network)

  • LB list

A BareMetal cloud that automates the full life-cycle management of baremetal physical machines
  • BareMetal list

  • Baremetal Management

  • Create OS on BareMetal

  • ARM64 baremetal supported
A complete multi-tenancy RBAC-enabled IAM (identity and access management) system
  • sql, LDAP supported

  • Multi-tenancy system, include domain, project, group, user, role, policy

VMware vSphere management that enables self-service and automation
  • Add VMware account

  • VMware account list

  • Automatic creation of wire

  • Automatic creation of ipsubnet

  • Create a VMware VM instance

Cloud SSO that allows accessing native webconsole of cloud providers with unified federated identities
  • Enable the SSO login function of the cloud account (aliyun as an example)

  • create saml users

  • Cloud SSO entry

  • Cloud SSO - SSO login user

  • Sign in to the public cloud platform with SSO

One set of feature-rich APIs to access a wide range of resources from cloud providers above with consistent models and APIs
Multi-cloud image management system that automates image conversion between different cloud providers

Supported cloud providers

  • Public Clouds:
    • AWS
    • Azure
    • Google Cloud Platform
    • Alibaba Cloud
    • Huawei Cloud
    • Tencent Cloud
    • UCloud
    • Ctyun (China Telecom)
    • ECloud (China Mobile)
    • JDCloud
  • Private Clouds:
    • OpenStack
    • ZStack
    • Alibaba Cloud Aspara
    • Huawei HCSO
    • Nutanix
  • On-premise resources:
    • Lightweight private cloud built on KVM
    • VMWare vSphere vCenter/ESXi
    • Baremetals (IPMI, Redfish API)
    • Object storages (Minio, Ceph, XSky)
    • NAS (Ceph)

Supported resources

  • Servers: instances, disks, network interfaces, networks, vpcs, storages, hosts, wires, snapshots, snapshot policies, security groups, elastic IPs, SSH keypairs, images
  • Load Balancers: instances, listeners, backend groups, backends, TSL certificates, ACLs
  • Object Storage: buckets, objects
  • NAS: file_systems, access_groups, mount_targets
  • RDS: instances, accounts, backups, databases, parameters, privileges
  • Elastic Cache: instances, accounts, backups, parameters
  • DNS: DNS zones, DNS records
  • VPC: VPCs, VPC peering, inter-VPC network, NAT gateway, DNAT/SNAT rules, route tables, route entries

Getting started

  • All in One Installation:Building a full-featured Cloudpods service on linux distributions such as CentOS 7 or Debian 10 allows for a quick experience of the built-in private cloud and multi-cloud management features.
  • Kubernetes Helm Installation:Deploying the Cloudpods CMP service on an existing Kubernetes cluster using Helm and experience the multi-cloud management feature.
  • Docker Compose Installation:Deploying the Cloudpods CMP service using Docker Compose and quickly experience the multi-cloud management feature.
  • High availability installation:Deploying Cloudpods services in a highly available manner for production environments, including built-in private cloud and multi-cloud management features.

Documentations

Who is using Cloudpods?

Please check this issue for the user list of Cloudpods. If you are using Cloudpods, you are welcome to leave your information by responding the issue. Thank you for your support.

Contact

You may contact us by:

WeChat QRCode

Changelog

See Cloudpods Changelog for details.

Roadmap

See Cloudpods Roadmap for details.

Contribution

You are welcome to do any kind of contribution to the project. Please refer to CONTRIBUTING for guidelines.

License

Apache License 2.0. See LICENSE.

More Repositories

1

ocboot

Installation and setup tool of Cloudpods
Jinja
62
star
2

dashboard

Cloudpods Web UI
Vue
59
star
3

sqlchemy

A lightweight golang ORM library inspired by python sqlalchemy
Go
50
star
4

cloudmux

Accessing Hetereogenous Cloud APIs with a Unified In-process Golang Library
Go
20
star
5

docs

Documentations for Cloudpods
HTML
20
star
6

cloudpods-operator

Cloudpods kubernetes operator
Go
17
star
7

yunionos

Baremetal PXE ROM
Shell
16
star
8

sdnagent

Cloudpods SDN Agent for Network Virtualization
Go
14
star
9

dashboard-old

Web UI for YunionCloud (obsolete), move to dashboard
JavaScript
11
star
10

structarg

Golang argument parser inspired by python argument parser
Go
9
star
11

pkg

Golang common used packages.
Go
8
star
12

mcclient_python

Python 3 SDK for Cloudpods API
Python
8
star
13

service-images

Shell
8
star
14

jsonutils

Golang package to interact with JSON
Go
7
star
15

ocadm

Go
7
star
16

notify-plugins

Go
5
star
17

kubecomps

Managing Kubernetes Clusters Across Multi-cloud Based on APIs of Cloudpods
Go
5
star
18

yunion-dummy-gateway

为All-in-One部署中的子网提供网关支持,使虚拟子网中的节点能够与外界通信
Shell
5
star
19

meetup

5
star
20

web-console

Web console is the web-based UI for OneCloud
JavaScript
5
star
21

dashboard-common

Vue
4
star
22

mcclient_java

Java SDK for Cloudpods API
Java
4
star
23

dashboard-module-compute

Vue
3
star
24

executor

golang remote executor
Go
3
star
25

yunionio.github.io

HTML
3
star
26

website

New version of Cloudpods documentation built on Docusaurus!
JavaScript
3
star
27

runns

Simplified runc for centos6 or lower, only provide mountpoint namespace
Go
3
star
28

ovsdb

Go
2
star
29

cloudpods-service-operator

Go
2
star
30

yke

Go
1
star
31

code-generator

Go
1
star
32

terraform-provider-cloudpods

Terraform provider for yunion OneCloud
Go
1
star
33

log

Log package for go.
Go
1
star
34

dashboard-module-k8s

Vue
1
star
35

mcclient_nodejs

Nodejs SDK for Cloudpods API
JavaScript
1
star
36

s3cli

A generic S3 client, a fork of minio-go
Go
1
star
37

qemu

1
star