https://github.com/electrocucaracha/bmaas
Bare-Metal as a Service didactic project
https://github.com/electrocucaracha/bmaas
bifrost pxe-server self-runner tinkerbell
Last synced: 3 months ago
JSON representation
Bare-Metal as a Service didactic project
- Host: GitHub
- URL: https://github.com/electrocucaracha/bmaas
- Owner: electrocucaracha
- Created: 2021-01-08T16:12:54.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-02-08T18:56:30.000Z (over 1 year ago)
- Last Synced: 2025-03-21T08:21:39.916Z (about 1 year ago)
- Topics: bifrost, pxe-server, self-runner, tinkerbell
- Language: Shell
- Homepage:
- Size: 173 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bare Metal as a Service
[](https://opensource.org/licenses/Apache-2.0)
[](https://github.com/marketplace/actions/super-linter)
[](https://github.com/rubocop/rubocop)

## Summary
This project was created to understand the Bare-Metal provisioning
process. It supports three different projects to perform it.
- _Manual process_: The [PXE server folder](pxe_server) contains
instructions to deploy services required by a dedicated
Provisioning server.
- _Bifrost tool_: The [Bifrost folder](bifrost) contains instructions
to deploy the [OpenStack Bare Metal as a Service(BMaaS)][3] project.
- _Tinkerbell_: The [Tinkerbell folder](tinkerbell) contains
instructions to deploy the [CNCF Tinkerbell][4] project.
## Virtual Machines
The [Vagrant tool][1] can be used for provisioning an Ubuntu Bionic
Virtual Machine. It's highly recommended to use the _setup.sh_ script
of the [bootstrap-vagrant project][2] for installing Vagrant
dependencies and plugins required for this project. That script
supports two Virtualization providers (Libvirt and VirtualBox) which
are determine by the **PROVIDER** environment variable.
```bash
curl -fsSL http://bit.ly/initVagrant | PROVIDER=libvirt bash
```
Once Vagrant is installed, it's possible to provision a Virtual
Machine using the following instructions:
```bash
vagrant up
```
The `node` VM is used to test target machines. This machine use
network booting provided by the PXE Server.
```bash
vagrant up node
```
[1]: https://www.vagrantup.com/
[2]: https://github.com/electrocucaracha/bootstrap-vagrant
[3]: https://docs.openstack.org/bifrost/latest/
[4]: https://tinkerbell.org/