https://github.com/cloud-barista/cb-spider
CB-Spider offers a unified view and interface for multi-cloud management.
https://github.com/cloud-barista/cb-spider
alibaba aws azure cloud-agnostic gcp iac ibm kt kubernetes multi-cloud multicloud ncp nhn openstack single-api tencent unified-view
Last synced: 2 days ago
JSON representation
CB-Spider offers a unified view and interface for multi-cloud management.
- Host: GitHub
- URL: https://github.com/cloud-barista/cb-spider
- Owner: cloud-barista
- License: apache-2.0
- Created: 2019-09-24T02:50:06.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2026-03-19T13:19:53.000Z (15 days ago)
- Last Synced: 2026-03-20T01:44:38.578Z (15 days ago)
- Topics: alibaba, aws, azure, cloud-agnostic, gcp, iac, ibm, kt, kubernetes, multi-cloud, multicloud, ncp, nhn, openstack, single-api, tencent, unified-view
- Language: Go
- Homepage: https://github.com/cloud-barista/cb-spider/wiki
- Size: 102 MB
- Stars: 39
- Watchers: 6
- Forks: 50
- Open Issues: 39
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Notice: NOTICE.md
Awesome Lists containing this project
README
CB-Spider : "One-Code, Multi-Cloud"
A unified framework for multi-cloud infrastructure control
---
* CB-Spider is a sub-framework of the [Cloud-Barista](https://github.com/cloud-barista) Multi-Cloud Platform.
* CB-Spider provides a **single unified API** for multi-cloud infrastructure control.
* CB-Spider enables write once, run on any cloud.
```
[NOTE]
CB-Spider is currently under development and has not yet reached version 1.0.
We welcome suggestions, issues, feedback, and contributions!
Please be aware that the functionalities of Cloud-Barista are not yet stable or secure.
Exercise caution if you plan to use the current release in a production environment.
If you encounter any difficulties while using Cloud-Barista, please let us know.
(You can open an issue or join the Cloud-Barista Slack community.)
```
---
## Key Features
- **Unified API** — One consistent REST API for all supported CSPs
- **Multi-Cloud Abstraction** — VPC, VM, Disk, NLB, Kubernetes, Object Storage and more
- **Dynamic Plugin Drivers** — Extensible cloud driver architecture with hot-plugin
- **AdminWeb & CLI** — Built-in web console and `spctl` CLI tool
- **Swagger API Docs** — Auto-generated, always up-to-date API documentation
---
## Supported Cloud Providers
| Provider | VM Price
Info | Region/Zone
Info | Image
Info | VMSpec
Info | VPC
Subnet | Security
Group | VM KeyPair | VM | Disk | MyImage | NLB | K8S | Object
Storage |
|:-------------:|:-------------:|:-------------------:|:-------------:|:--------------:|:-------------------:|:-----------------:|:---------------:|:--------------:|:----:|:---:|:-------:|:-----------:|:-----------:|
| AWS | O | O | O | O | O | O | O | O | O | O | O | O | O |
| Azure | O | O | O | O | O | O | O | O | O | O | O | O | WIP |
| GCP | O | O | O | O | O | O | O | O | O | O | O | O | O |
| Alibaba | O | O | O | O | O | O | O | O | O | O | O | O | O |
| Tencent | O | O | O | O | O | O | O | O | O | O | O | O | O |
| IBM | O | O | O | O | O | O | O | O | O | O | O | O | O |
| OpenStack | NA | O | O | O | O | O | O | O | O | O | O | TBD | O |
| NCP | O | O | O | O | O | O | O | O | O | O | O | O | O |
| NHN | NA | O | O | O | O | O | O | O
(Note1) | O | O | O | O | O |
| KT | NA | O | O | O | O
(Type1) | O | O | O | O | O | O
(Note2)| TBD | O |
| KT Classic | NA | O | O | O | O
(Type2) | O | O | O | O | O | O | NA | - |
※ WIP: Work In Progress, NA: Not Applicable, -: Excluded (Classic Resource)
Provider-specific Notes
**VPC Notes (see each driver's README for details):**
- **Type1:** Default VPC (KT VPC)
- CSP: Provides one fixed default VPC only
- CB-Spider: Only one VPC can be created (for abstraction)
- **Type2:** VPC/Subnet Emulation
- CSP: No VPC concept provided
- CB-Spider: Provides single emulated VPC/Subnet
**VM Notes:**
- **Note1:** For Windows VMs, after creating a VM with SSH key, the password must be checked in Console.
**NLB Notes:**
- **Note2:** VMs registered to NLB must be in the same Subnet as the NLB.
---
## Quick Start
The [**Quick Start Guide**](https://github.com/cloud-barista/cb-spider/wiki/Quick-Start-Guide) walks you through the following steps:
1. **Start CB-Spider server** — Run with a single Docker command
2. **Set cloud credentials** — Register your AWS / GCP access keys
3. **Register cloud connections** — Configure driver, credential, region, and connection
4. **Create infrastructure** — Create VPC, Security Group, KeyPair, and VM with unified API calls
5. **Multi-cloud verification** — Query both clouds with the same API, only `ConnectionName` changes
6. **Cleanup** — Terminate VMs and delete resources
> **Start methods:** [Docker Guide](https://github.com/cloud-barista/cb-spider/wiki/Docker-based-Start-Guide) | [Source Guide](https://github.com/cloud-barista/cb-spider/wiki/Source-based-Start-Guide) | [Authentication Guide](https://github.com/cloud-barista/cb-spider/wiki/Authentication-Guide)
---
## Documentation
### Getting Started
| Guide | Description |
|:------|:------------|
| [Quick Start Guide](https://github.com/cloud-barista/cb-spider/wiki/Quick-Start-Guide) | Start server & create VMs on AWS + GCP in minutes |
| [Docker-based Start Guide](https://github.com/cloud-barista/cb-spider/wiki/Docker-based-Start-Guide) | Run CB-Spider using Docker |
| [Source-based Start Guide](https://github.com/cloud-barista/cb-spider/wiki/Source-based-Start-Guide) | Build and run from source |
| [How to get CSP Credentials](https://github.com/cloud-barista/cb-spider/wiki/How-to-get-CSP-Credentials) | Obtain credentials for each cloud provider |
### API & Tools
| Resource | Link |
|:---------|:-----|
| Swagger API Docs | [Swagger UI](https://cloud-barista.github.io/api/?url=https://raw.githubusercontent.com/cloud-barista/cb-spider/refs/heads/master/api/swagger.yaml) · [Swagger Guide](https://github.com/cloud-barista/cb-spider/wiki/Swagger-Guide) |
| AdminWeb | [AdminWeb Guide](https://github.com/cloud-barista/cb-spider/wiki/CB-Spider-AdminWeb-Guide) |
| CLI (`spctl`) | [CLI Tool Guide](https://github.com/cloud-barista/cb-spider/wiki/CLI-Tool-Install-Guide) |
| Driver Capability Info | [Capability Info Guide](https://github.com/cloud-barista/cb-spider/wiki/Cloud-Driver-Capability-Info-Guide) |
| Function Menu | [CB-Spider Menu](https://github.com/cloud-barista/cb-spider/wiki/CB-Spider-Menu) |
| MetaDB Auto Backup | [Backup Guide](https://github.com/cloud-barista/cb-spider/wiki/Meta-DB-Backup-Guide) |
### Resource Management Guides
| Resource | Guide |
|:---------|:------|
| Register Connection | [Register Connection Guide](https://github.com/cloud-barista/cb-spider/wiki/Register-Connection-Guide) |
| Region/Zone Info | [Region/Zone Info Guide](https://github.com/cloud-barista/cb-spider/wiki/REST-API-Region-Zone-Information-Guide) |
| Quota Info | [Quota Info Guide](https://github.com/cloud-barista/cb-spider/wiki/Quota-Info-Guide) |
| VM Price Info | [VM Price Info Guide](https://github.com/cloud-barista/cb-spider/wiki/VM-Price-Info-Guide) |
| VM Image Info | [Public Image Info Guide](https://github.com/cloud-barista/cb-spider/wiki/Public-Image-Info-Guide) |
| VM Spec Info | [VM Spec Info Guide](https://github.com/cloud-barista/cb-spider/wiki/VM-Spec-Info-Guide) |
| VPC/Subnet | [VPC/Subnet Management Guide](https://github.com/cloud-barista/cb-spider/wiki/VPC-Subnet-Management-Guide) |
| Security Group | [SecurityGroup Management Guide](https://github.com/cloud-barista/cb-spider/wiki/SecurityGroup-Management-Guide) |
| KeyPair | [KeyPair Management Guide](https://github.com/cloud-barista/cb-spider/wiki/KeyPair-Management-Guide) |
| VM | [VM Management Guide](https://github.com/cloud-barista/cb-spider/wiki/VM-Management-Guide) |
| Disk | [Disk Management Guide](https://github.com/cloud-barista/cb-spider/wiki/Disk-Management-Guide) |
| NLB | [Network Load Balancer Guide](https://github.com/cloud-barista/cb-spider/wiki/Network-Load-Balancer(NLB)-Guide) |
| Kubernetes Cluster | [K8S Cluster Management Guide](https://github.com/cloud-barista/cb-spider/wiki/Kubernetes-Cluster-Management-Guide) |
| Object Storage (S3) | [Object Storage and S3 API Guide](https://github.com/cloud-barista/cb-spider/wiki/Object-Storage-and-S3-API-Guide) |
| Tag Management | [Tag Management Guide](https://github.com/cloud-barista/cb-spider/wiki/Tag-Management-Guide) |
> **VM default accounts:** Ubuntu/Debian → `cb-user` · Windows → `Administrator`
> 📖 **Full documentation:** [CB-Spider Wiki](https://github.com/cloud-barista/cb-spider/wiki)
---
## Contributing
We welcome contributions! Please read [CONTRIBUTING.md](https://github.com/cloud-barista/cb-spider/blob/master/CONTRIBUTING.md) before submitting a pull request.
- **Issues:** [GitHub Issues](https://github.com/cloud-barista/cb-spider/issues)
- **Pull Requests:** [GitHub Pull Requests](https://github.com/cloud-barista/cb-spider/pulls)
---
## License
CB-Spider is licensed under the [Apache License 2.0](./LICENSE).