一飛開源,介紹創意、新奇、有趣、實用的免費開源應用、系統、軟體、硬體及技術,一個探索、發現、分享、使用與互動交流的開源技術社群平台。緻力于打造活力開源社群,共建開源新生态!
一、開源項目簡介
Cloudpods是一個開源的Golang實作的雲原生的融合多雲/混合雲的雲平台,也就是一個“雲上之雲”。Cloudpods不僅可以管理本地的虛拟機和實體機資源,還可以管理多個雲平台和雲賬号。Cloudpods隐藏了這些異構基礎設施資源的資料模型和API的差異,對外暴露了一套統一的API,允許使用者就像用一個雲一樣地通路多雲。進而大大降低了通路多雲的複雜度,提升了管理多雲的效率。
二、開源協定
使用Apache-2.0開源協定
三、界面展示
四、功能概述
誰需要Cloudpods?
- 将幾台實體伺服器虛拟化成一個私有雲平台
- 需要一個緊湊而且功能相對完整的實體機全生命周期管理工具
- 将VMware vSphere虛拟化叢集轉換為一個可以自服務的私有雲平台
- 在混合雲的場景,能夠在一個界面通路私有雲和公有雲
- 通過一個集中的入口通路分布在多個公有雲平台上的多個賬号
- 目前隻使用一個雲公有雲賬号但希望将來使用多雲的使用者
管理多雲資源的功能,可以管理大多數的主流雲,包括私有雲,例如OpenStack,以及公有雲,例如AWS,Azure,GCP,阿裡雲,華為雲和騰訊雲等
一個可以管理海量KVM虛拟機的輕量級私有雲
一個能進行實體機全生命周期管理的裸機雲
一套完整的多租戶認證和通路控制體系
實作了VMware vSphere虛拟化叢集的自助服務和自動化
允許以統一的聯邦身份通路各個雲平台的原生控制台的SSO
一套功能豐富、統一一緻的RESTAPI和模型通路以上的雲資源和功能
自動将鏡像轉換為不同雲平台需要的格式的多雲鏡像服務
支援的雲平台
- 公有雲:AWSAzureGoogle Cloud Platform阿裡雲華為雲騰訊雲UCloud天翼雲移動雲京東雲
- 私有雲:OpenStackZStackAlibaba Cloud Aspara (阿裡飛天)Huawei HCSO (華為HCSO)Nutanix
- 本地基礎設施資源:KVMVMWare vSphere vCenter/ESXiBaremetals (IPMI, Redfish API)Object storages (Minio, Ceph, XSky)NAS (Ceph)
支援的雲資源
- 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
五、技術選型
快速開始
我們可以通過以下簡單三步将Cloudpods安裝在一台至少8GiB記憶體和100GB硬碟的Linux主機上(目前CentOS 7和Debian 10經過充分測試)
(下面假設該主機的IP為 10.168.26.216)
1. 準備SSH免密登入
# 生成ssh密鑰對
# (如果已經有~/.ssh/id_rsa和~/.ssh/id_rsa.pub,請跳過此步。請確定ssh密鑰私鑰未設定密碼)
$ ssh-keygen -t rsa -N ''
# 将生成的ssh公鑰~/.ssh/id_rsa.pub拷貝到待部署的目标主機
$ ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]
# 測試SSH免密登入是否生效。免密登入到待部署主機執行hostname指令
# 如果設定成功,執行下面指令能夠回顯待部署主機的主機名
# 不需要輸入待部署主機的密碼
$ ssh [email protected] "hostname"
2. 安裝git和相關工具
CentOS 7安裝git和epel源
yum install -y git epel-release ansible
Debian 10安裝git
apt install -y git ansible
3. 安裝Cloudpods
通過以下指令開始安裝Cloudpods:
詳見 README.md 文檔
六、源碼位址
通路一飛開源:https://code.exmay.com/