CloudpodsGolang 实现的多云/混合云的云平台
Cloudpods是一个开源的Golang实现的云原生的融合多云/混合云的云平台,也就是一个“云上之云”。Cloudpods不仅可以管理本地的虚拟机和物理机资源,还可以管理多个云平台和云账号。Cloudpods隐藏了这些异构基础设施资源的数据模型和API的差异,对外暴露了一套统一的API,允许用户就像用一个云一样地访问多云。从而大大降低了访问多云的复杂度,提升了管理多云的效率。
谁需要Cloudpods?
- 将几台物理服务器虚拟化成一个私有云平台
- 需要一个紧凑而且功能相对完整的物理机全生命周期管理工具
- 将VMware vSphere虚拟化集群转换为一个可以自服务的私有云平台
- 在混合云的场景,能够在一个界面访问私有云和公有云
- 通过一个集中的入口访问分布在多个公有云平台上的多个账号
- 当前只使用一个云公有云账号但希望将来使用多云的用户
功能
Cloudpods提供了如下的功能:
- 管理多云资源的功能,可以管理大多数的主流云,包括私有云,例如OpenStack,以及公有云,例如AWS,Azure,GCP,阿里云,华为云和腾讯云等
- 允许以统一的联邦身份访问各个云平台的原生控制台的SSO
- 一个可以管理海量KVM虚拟机的轻量级私有云
- 一个能进行物理机全生命周期管理的裸机云
- 实现了VMware vSphere虚拟化集群的自助服务和自动化
- 一套功能丰富、统一一致的RESTAPI和模型访问以上的云资源和功能
- 一套完整的多租户认证和访问控制体系
- 自动将镜像转换为不同云平台需要的格式的多云镜像服务
支持的云平台
- 公有云:
- AWS
- Azure
- Google Cloud Platform
- 阿里云
- 华为云
- 腾讯云
- UCloud
- 中国电信云
- 中国移动云
- 京东云
- 私有云:
- OpenStack
- ZStack
- AlibabaCloud Aspara (阿里飞天)
- 本地基础设施资源:
- KVM
- VMWare vSphere vCenter/ESXi
- Baremetals (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免密登录
# Generate the local ssh keypair # (SKIP this stekp if you already have ~/.ssh/id_rsa.pub locally) $ ssh-keygen # Copy the generated ~/.ssh/id_rsa.pub public key to the machine to be deployed $ ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.168.26.216 # Try to login to the machine to be deployed without password, # should be able to get the hostname of the deployed machine # without entering the login password $ ssh root@10.168.26.216 "hostname"
2. 安装git和相关工具
CentOS 7安装git和epel源
yum install -y git epel-release
Debian 10安装git
apt install -y git
3. 安装Cloudpods
通过以下命令开始安装Cloudpods:
# Git clone the ocboot installation tool locally $ git clone https://github.com/yunionio/ocboot && cd ./ocboot && ./run.py 10.168.26.216
大概10-30分钟后,安装完成。访问 https://10.168.26.216 登入Cloudpods的Web控制台。初始的账号为 admin ,密码为 admin@123
请参考文档 快速开始 获得更详细的安装指导。
评论