Giter Site home page Giter Site logo

atmillertime / mr-provisioner Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mr-provisioner/mr-provisioner

0.0 0.0 0.0 3.01 MB

Bare metal provisioning tool

License: Apache License 2.0

Makefile 0.15% Python 39.25% Mako 0.06% HTML 8.02% CSS 7.49% JavaScript 44.78% Shell 0.23%

mr-provisioner's Introduction

Documentation Status CI Status

mr-provisioner

mr-provisioner is a tool to provision and manage servers. It supports users and machine reservation. mr-provisioner is designed to allow install of upstream images without any modification or any customization to enable testing on bare metal. It is not opinionated about how images are built, other than needing a bootloader, a kernel and an initrd to netboot, preseeds are optional since manual installs can happen by connecting to the console and manually going through the installation process. Machines are controlled via IPMI, so they are assumed to have BMCs.

mr-provisioner has been designed to support multiple architectures defined by the administrator of the machines. The administrators are also responsible for providing the bootloader compiled for the architecture.

UI

There is a UI to manage the machines, network configuration, reservations and for users manual testing in general. Users have access to whichever machines they have been assigned and they can install a new kernel/initrd of their choosing without requiring admin access on any infrastructure. Users are owners of the hardware they borrow and can netboot with an image of their choosing, preseed their installs, look at the console, power on/off the machine, change the subarchitecture for testing reasons.

Some screenshots of the UI:

mr provisioner

API

There is an API that can be used to automatically upload new images and provision machines. This has been created for test automation purposes. Users can generate tokens to be able to authenticate and use the API.

The API can be manually tried on:

http://mr-provisioner-url/api/v1/docs

API documentation available at https://mr-provisioner.github.io/mr-provisioner/v1/

BMC

There is support for two different types of BMCs, plain and moonshot.

Networking

The network is managed outside mr-provisioner, either by using dnsmasq or KEA.

mr-provisioner can be integrated with KEA via a plugin. This configuration gives visibility of the dhcp requests/assignments to the provisioner.

Documentation

The documentation is work in progress and growing organically as questions are raised by users. Feel free to add issues to the project asking for new documentation items or clarifications:

https://mr-provisioner.readthedocs.io/

Contributions

Contributions are welcome in the form of issues, feature requests, pull requests, code reviews, etc.

mr-provisioner's People

Contributors

gemagomez avatar bwalex avatar danrue avatar baptistegerondeau avatar chase-qi avatar niedbalski avatar hrw avatar ggardet avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.