Điểm qua Unitech/gridcontrol: 578 sao trên GitHub, viết chủ yếu bằng JavaScript. Networked Process Manager to execute functions in a Computer Grid
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
GridControl provisions and links multiple servers together to form a Grid.
Files are synchronized, Opinionated Pub/Sub system is implemented, Servers get linked together.
You develop, you play, in a scalable way. The more Servers you add to the Grid, the more calculation power you get.
Welcome to the Grid
5 minutes to get started. By the authors of PM2.
Behind the scenes: GridControl is a network layer built on top of PM2 allowing file synchronization, inter-process communication via an opionated PUB/SUB system and a wide-range system discovery
Change each attribute to the desired value.
Note that an SSH client should be running on the defaut port (22) on each remote machine
2/ Provision every host listed in the Gridfile:
$ grid provision
This will copy the SSH pub key and install NVM, Node.js, PM2 and GridcontrolThis installation does not need ROOT access rights at any time
3/ Grid management
$ grid dash
Commands to manage your grid:
# List all nodes linked to the grid
$ grid ls
# Display Dashboard
$ grid dash
# Execute a command on each server
$ grid multissh <bash_command>
# Restart/Recover the current Grid
$ grid restart
# Upgrade Gridcontrol to latest version
$ grid upgrade
# Display realtime logs of all tasks
$ grid logs
# Monitor the whole Grid with Keymetrics
$ grid monitor <secret> <public>
$ grid unmonitor
# Interactively SSH into desired machine
$ grid ssh
Interact with the Grid
Now let's play with the Grid.
You can generate a sample project by typing:
$ grid sample [project-name]
$ cd [project-name]
$ npm install
Let's look at the content of tasks/get-ip.js, this is a task that will be propagated in the grid:
var request = require('request');
module.exports = function(context, cb) {
request('https://api.ipify.org/?format=json', function (error, response, body) {
if (error)
return cb(error);
if (!error && response.statusCode == 200) {
return cb(null, body);
}
});
};
To call this function, look at how it's done in index.js:
var grid = require('grid-api').init({
instances : 1,
env : {
NODE_ENV : 'development'
}
});
function triggerTask() {
// 'get-ip' is the filename
grid.exec('get-ip', function(err, data, server) {
if (err) {
console.log(err);
return false;
}
console.log('Got response from server pub_ip=(%s) priv_ip=(%s):',
server.public_ip,
server.private_ip);
console.log(data);
});
}
grid.on('ready', function() {
console.log('Gridcontrol Ready');
setInterval(triggerTask, 1000);
});
Start the main application:
$ node index.js
At the beginning, only the local gridcontrol will respond. Once the other peers are synchronized they will also process the queries:
Got response from server pub_ip=(88.123.12.21) priv_ip=(10.2.2.1):
$HTML
Got response from server pub_ip=(88.123.12.22) priv_ip=(10.2.2.8):
$HTML
Got response from server pub_ip=(88.125.120.20) priv_ip=(10.2.2.10):
$HTML
Got response from server pub_ip=(88.123.23.42) priv_ip=(10.2.2.12):
$HTML
Distributed processing, on-premise!
Contributing
If you find any issues please open an issue on Github
For Contributing please refer to docs/CONTRIBUTING.md
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/Unitech/gridcontrol là nguồn chính thức.
Unitech/gridcontrol có bao nhiêu sao?
Unitech/gridcontrol có 578 sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/Unitech/gridcontrol. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.
Unitech/gridcontrol có phải mã nguồn mở không?
Có — Unitech/gridcontrol phát hành theo license Apache-2.0, nghĩa là mã nguồn mở để đọc, fork và (tùy license) tái sử dụng. Mã: github.com/Unitech/gridcontrol.
Unitech/gridcontrol còn đang phát triển không?
Commit gần nhất trên Unitech/gridcontrol là 9.3 năm trước (theo timestamp GitHub). Repo có 24 fork — một chỉ báo về mức độ quan tâm của cộng đồng.
Unitech/gridcontrol là gì?
Unitech/gridcontrol (Unitech/gridcontrol) là dự án JavaScript trên GitHub. Theo mô tả gốc: Networked Process Manager to execute functions in a Computer Grid
Đọc đầy đủ README ở tab phía trên.
Muốn nghe thêm một ý kiến về gridcontrol?
Hỏi một AI đọc được trang này — một cú bấm là có ngay nhận định về gridcontrol.