
Security News
Astral Launches pyx: A Python-Native Package Registry
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
▄████████ ▄██████▄ ███▄▄▄▄ ▄████████ ▄██████▄ ▄█ ▄████████
███ ███ ███ ███ ███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███
███ █▀ ███ ███ ███ ███ ███ █▀ ███ ███ ███ ███ ███
███ ███ ███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀
███ ███ ███ ███ ███ ▀███████████ ███ ███ ███ ▀▀███▀▀▀▀▀
███ █▄ ███ ███ ███ ███ ███ ███ ███ ███ ▀███████████
███ ███ ███ ███ ███ ███ ▄█ ███ ███ ███ ███▌ ▄ ███ ███
████████▀ ▀██████▀ ▀█ █▀ ▄████████▀ ▀██████▀ █████▄▄██ ███ ███
▀ ███ ███
Consolr is a utility to communicate with Collins assets through ipmitool. Doing a collins lookup, it retrieves the attributes necessary to invoke an ipmitool command to the asset.
Consolr supports a subset of commonly used ipmitool actions making the life of system administrators a little easier.
Consolr is only useful when you have collins setup and a hosts fleet managed by collins with IPMI information populated for each host.
Ubuntu
# apt-get install openipmi
Redhat Flavors
# yum install ipmitool
# gem install consolr
The configuration file is where consolr looks for what runners you have enabled
and what parameters should be passed for them. To configure your runners add
them to the runners
array. For any runner you have, you can add another root
key to the config object with parameters for that runner.
If you have assets where you don't want users changing things, just add the asset in the dangerous assets list. Consolr will safeguard it.
Consolr authenticates with Collins through collins-auth. So one would want collins.yml file to be set up as well.
Configuration params are searched in these locations:
ENV['CONSOLR_CONFIG']
$HOME/.consolr.yml
/etc/consolr.yml
/var/db/consolr.yml
An example consolr.yml file
runners:
- ipmitool
- customrunner
ipmitool: /usr/bin/ipmitool
customrunner:
user: admin
password: s3cr3t
dangerous_assets:
- "007117"
dangerous_status:
- "Allocated"
Consolr will load the runners listed and pick the first runner that says it can
manage the node in question by running the can_run?
method of the runner.
$ consolr -a 006123 -c
For a full list of actions, look up the help page
$ consolr --help
Consolr ships with a runner that uses ipmitool to manage servers but there are cases where you might want to extend it. For instance to support your favorite IaaS provider or a private cloud. In this case, you need to write a custom runner and deploy it. The way we do it at Tumblr is to gather our custom runner into a gem and install that gem along with consolr.
A runner is simply a class that extends the Consolr::Runners::Runner
base
class and is located in the correct module. A very simple example could look
like:
module Consolr
module Runners
class MyRunner < Runner
def initialize
// Set up the runner
end
def can_run? node
// Should return true if this runner can manage `node`
end
def verify node
// Verify that the runner can talk to the node. For instance by pinging
// the ipmi interface.
end
def on node
// issue command to power node on
end
end
end
All the methods (on
, off
) etc. that can be implemented can be seen in the
Consolr::Runners::Runner
base class.
In order to package it up as a gem the directory structure should look like
.
└── lib
└── consolr
└── runners
└── myrunner.rb
You'll also need a gemspec file at the root.
http://groups.google.com/group/collins-sm
Please report any bugs or submit a request for a patch here : https://github.com/tumblr/collins/issues/
Copyright 2016 Tumblr Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
FAQs
Unknown package
We found that consolr demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
Security News
The Latio podcast explores how static and runtime reachability help teams prioritize exploitable vulnerabilities and streamline AppSec workflows.
Security News
The latest Opengrep releases add Apex scanning, precision rule tuning, and performance gains for open source static code analysis.