All Projects → nailgun → seedbox

nailgun / seedbox

Licence: Apache-2.0 license
Baremetal CoreOS cluster provisioner with web UI

Programming Languages

python
139335 projects - #7 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to seedbox

rackshift
RackShift 是开源的裸金属服务器管理平台,功能覆盖裸金属服务器的发现、带外管理、RAID 配置、固件更新、操作系统安装等。
Stars: ✭ 467 (+1930.43%)
Mutual labels:  provisioning, bare-metal
blacksmith
Bare-Metal CoreOS Cluster Manager
Stars: ✭ 67 (+191.3%)
Mutual labels:  coreos, bare-metal
Typhoon
Minimal and free Kubernetes distribution with Terraform
Stars: ✭ 1,397 (+5973.91%)
Mutual labels:  coreos, bare-metal
grendel
Bare Metal Provisioning system for HPC Linux clusters
Stars: ✭ 35 (+52.17%)
Mutual labels:  provisioning, bare-metal
Xcat Core
Code repo for xCAT core packages
Stars: ✭ 273 (+1086.96%)
Mutual labels:  provisioning, bare-metal
Stacki
Linux Cluster Builder - Bare Metal Red Hat & SUSE
Stars: ✭ 223 (+869.57%)
Mutual labels:  provisioning, bare-metal
Gentoo Build
shell scripts that builds systemd based gentoo box for x86_64 platform
Stars: ✭ 24 (+4.35%)
Mutual labels:  provisioning, bare-metal
Provision
Digital Rebar Provision is a simple and powerful Golang executable that provides a complete API-driven DHCP/PXE/TFTP provisioning system.
Stars: ✭ 252 (+995.65%)
Mutual labels:  provisioning, bare-metal
bare bones
Ada Bare Bones OS development tutorial source code
Stars: ✭ 74 (+221.74%)
Mutual labels:  bare-metal
partinfra-terraform
Terraform configuration for Participation Infrastructure
Stars: ✭ 46 (+100%)
Mutual labels:  provisioning
kalman-estimator
kalman-estimator - a Kalman estimator in C++
Stars: ✭ 22 (-4.35%)
Mutual labels:  bare-metal
manjaro-playbook
Manjaro/Arch Linux Ansible provision playbook
Stars: ✭ 25 (+8.7%)
Mutual labels:  provisioning
raspberry-pi
Raspberry Pi distribution of Alpha
Stars: ✭ 39 (+69.57%)
Mutual labels:  bare-metal
register-rs
Unified interface for type-safe MMIO and CPU register access in Rust
Stars: ✭ 48 (+108.7%)
Mutual labels:  bare-metal
libconfini
Yet another INI parser
Stars: ✭ 106 (+360.87%)
Mutual labels:  bare-metal
rigger
rigger is a tool to deploy Deis v1 on a variety of cloud providers.
Stars: ✭ 57 (+147.83%)
Mutual labels:  provisioning
crowbar-core
Core deployment for Crowbar
Stars: ✭ 16 (-30.43%)
Mutual labels:  bare-metal
oneview-sdk-ruby
This project is no longer being developed and has limited support. In the near future this repository will be fully deprecated. Please consider using other OneView projects, such as Golang and Python.
Stars: ✭ 13 (-43.48%)
Mutual labels:  bare-metal
luna
Provisioning tool for clusters
Stars: ✭ 58 (+152.17%)
Mutual labels:  provisioning
terraform-metal-kubernetes-bgp
Kubernetes on Equinix Metal using Calico and MetalLB
Stars: ✭ 110 (+378.26%)
Mutual labels:  bare-metal

seedbox

Baremetal CoreOS cluster provisioner with web UI. Currently its primary goal is to boot CoreOS clusters using PXE without installation. But it easily can be extended to render kubernetes assets for different deployments.

Installation

$ docker-compose up
$ docker-compose exec seedbox python -m seedbox db upgrade

Open http://localhost:5000/admin/

helm chart

If you have already running Kubernetes cluster and want to provision another one, take a took at seedbox helm chart.

Comparison with other projects

  • CoreOS matchbox. It doesn't provide complete config rendering facility. There are examples, but they are hard to read and not modularized.

  • Tectonic installer. This is missing config rendering app for matchbox. This project was open-sourced after seedbox was started. It's highly modularized and uses HCL (HashiCorp configuration language) to render config files. But it's tied to CoreOS tectonic. There is no option to render clean Kubernetes configuration.

Seedbox is all-in-one project compared to those above. You will get web UI, iPXE handler, config renderer, PKI, cluster state tracking and maybe something more in future versions.

Actually seedbox config template files are based on files rendered by closed-source tectonic installer. They are split into packages by function and rendered using Python Jinja2 template engine.

Closed-source Tectonic installer is claimed as installer for production grade clusters. So you can say this about seedbox as well. 😀 But I'm not sure of that.

Web UI

PKI

You will have PKI out of the box. It's simple but powerful enough. It provides one CA per cluster and will automatically issue certificates for nodes and users. Also it will warn you if there is something wrong with certificates (expired, changed name, etc).

Credentials are automatically transferred to nodes in most secure manner possible for automatic provision.

Node state tracking

Nodes notify seedbox after successful boot and upload active ignition config, so seedbox can track current state of a cluster.

Toubleshooting

Due to some CoreOS bug host hangs on boot without any error messages if root partition doesn't exist. If this happens to you, just set "Wipe root disk on next boot" checkbox in node admin.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].