Skip to content
/ pbnj Public
forked from tinkerbell/pbnj

Microservice that communicates with our bmcs, ipmi to control power, boot etc

License

Notifications You must be signed in to change notification settings

gpl/pbnj

 
 

Repository files navigation

PBNJ

For each commit and PR stability

This repository is Experimental meaning that it's based on untested ideas or techniques and not yet established or finalized or involves a radically new and innovative style! This means that support is best effort (at best!) and we strongly encourage you to NOT use this in production.

Description

This service handles BMC interactions.

  • machine and BMC power on/off/reset
  • setting next boot device
  • user management
  • setting BMC network source

PBnJ started out as an HTTP server, listening by default on port 9090. This server is scheduled for deprecation and not enabled by default. To enable the HTTP server, you must run PBnJ with pbnj server --enableHTTP or PBNJ_ENABLEHTTP=true pbnj server. The gRPC PBnJ server listens by default on port 50051. This can be started with pbnj server. Use pbnj server --help for more runtime details.

This dual-stack functionality is intended to ease the upgrade path and provide existing HTTP server users with user management functionality. Please note that the HTTP server is deprecated and will shortly be removed. If just getting starting with PBnJ, please use the gRPC server.

Usage

Container

Build

make image

Run

# default gRPC port is 50051, default HTTP port is 9090
make run-image

Local

Build

# builds the binary and puts it in ./bin/
make build

Run

# default gRPC port is 50051, default HTTP port is 9090; does a `go run` of the code base
make run-server

Authorization

Documentation on enabling authorization can be found here.

Contributing

See the contributors guide here.

Website

For complete documentation, please visit the Tinkerbell project hosted at tinkerbell.org.

About

Microservice that communicates with our bmcs, ipmi to control power, boot etc

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 95.9%
  • Shell 1.9%
  • Makefile 1.5%
  • Dockerfile 0.7%