Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
cluster-api-autoscaler
Advanced tools
This projecf is an experiment around the NodeJS Cluster API.
The goal is to bring a solution allowing a hybrid usage. you can either instantiate the autoscaler in your code or use it as a cli.
The motivation behind it is related to the usage of NodeJS and its Cluster API in Kubernetes. Instead of defining a static amount of workers, the module takes care of increasing or decreasing the amount of workers based on CPU usage and memory available for each of them.
Such as the Horizontal Pod Autoscaler of Kubernetes, the module aims to provide a support for custom metrics. The custom metrics could be, as an example, amount of incoming requests for an Express server.
The autoscaler supports two usage - CLI and programmatic usage.
2 commands are available.
start
: run the program in a single run mode.
as start <file> [options]
--min
: specify the minimum amount of workers. Default value: 2.--max
: specify the maximum amount of workers. Default value: 4.-m, --metrics
: specify the metrics to collect and to observe. Default value: "cpu:50,mem:50".-c, --custom-metrics-path
: specify the path for custom modules.forever
: run a program undefinitely or X times before dying.
as forever <file> [options]
--max-restart
: specify a maximum amount of restart. If not defined, forever
re-tries indefinitely.--min
: specify the minimum amount of workers. Default value: 2.--max
: specify the maximum amount of workers. Default value: 4.-m, --metrics
: specify the metrics to collect and to observe. Default value: "cpu:50,mem:50".-c, --custom-metrics-path
: specify the path for custom modules.In your master module implement the following code:
'use strict';
const as = require('cluster-api-autoscaler').start;
as({
workerScript: `${__dirname}/worker.js`,
metrics: [
{
type: 'cpu',
limit: 50,
},
{
type: 'mem',
limit: 50,
},
],
min: 1,
max: 5,
}).catch(error => {
console.error('something went wrong', error);
process.exit(1);
});
Then run the following command in your terminal:
$> node master.js
FAQs
An auto-scaler for the NodeJS Cluster API.
The npm package cluster-api-autoscaler receives a total of 3 weekly downloads. As such, cluster-api-autoscaler popularity was classified as not popular.
We found that cluster-api-autoscaler demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.