Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/clusterlabs/hawk
A web-based GUI for managing and monitoring the Pacemaker High-Availability cluster resource manager
https://github.com/clusterlabs/hawk
clustering corosync crmsh high-availability javascript pacemaker ruby ruby-on-rails
Last synced: 2 days ago
JSON representation
A web-based GUI for managing and monitoring the Pacemaker High-Availability cluster resource manager
- Host: GitHub
- URL: https://github.com/clusterlabs/hawk
- Owner: ClusterLabs
- License: gpl-2.0
- Created: 2012-04-27T02:30:01.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2024-12-16T10:29:33.000Z (about 1 month ago)
- Last Synced: 2025-01-15T13:49:59.946Z (9 days ago)
- Topics: clustering, corosync, crmsh, high-availability, javascript, pacemaker, ruby, ruby-on-rails
- Language: JavaScript
- Homepage: http://hawk-ui.github.io/
- Size: 17.4 MB
- Stars: 151
- Watchers: 30
- Forks: 50
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: COPYING
- Authors: AUTHORS
Awesome Lists containing this project
README
# HA Web Konsole (Hawk)
![Build Status](https://travis-ci.org/ClusterLabs/hawk.svg?branch=master)
![Code Climate](https://codeclimate.com/github/ClusterLabs/hawk/badges/gpa.svg)
![Documentation](https://readthedocs.org/projects/hawk-guide/badge/?style=flat)Hawk provides a web interface for High Availability clusters managed
by the Pacemaker cluster resource manager. The current goal of the
project is to provide a complete management interface to the HA
cluster, both in the form of a flexible REST API as well as a modern
client frontend using the API.http://hawk-ui.github.io
- [Features](doc/features.md)
- [Build Dependencies](#build-dependencies)
- [Release](doc/release.md)
- [Installation](#installation-and-deployment)
- [Devel notes](#devel)
- [Testing](e2e_test/README.md)## Build Dependencies
The exact versions specified here may not be accurate. Also, note that
Hawk also requires the rubygems listed in `hawk/Gemfile`.* ruby >= 2.2
* crmsh >= 3.0.0
* hawk-apiserver
* graphviz
* graphviz-gd
* dejavu
* pacemaker >= 1.1.8
* bundler
* iproute2For details about the Hawk API server, see the separate repository at Github:
* https://github.com/ClusterLabs/hawk-apiserver
## Installation and deployment:
On openSUSE use following commands:
```bash
zypper install hawk2
crm cluster init
```
Once initialized, go to `https://:7630/`.### Deploy:
use the following project for deploying hawk https://github.com/SUSE/pacemaker-deploy
# Devel
### Puma server configuration
You can change the configurations of both instances of the Puma sever through
the configuration file in `hawk/config/puma.rb`. You can also pass options directly
through environment variables.Please also note that the Puma server is configured to use a maximum number of
16 threads withing one worker in clustered mode. This application is thread safe
and you can customize this through the puma.rb file.For further information about threads and workers in Puma, please take a look at
this great article by Heroku: [Puma web server article](https://devcenter.heroku.com/articles/deploying-rails-applications-with-the-puma-web-server)### Hacking hawk tools
Hawk's tools are the programs under the `hawk/tools` folder
(`hawk_chkpwd` and `hawk_invoke`).```bash
ls /usr/sbin/hawk_* -l+ +
-rwsr-x--- 1 root haclient 9884 2011-04-14 22:56 /usr/sbin/hawk_chkpwd+
-rwsr-x--- 1 root haclient 9928 2011-04-14 22:56 /usr/sbin/hawk_invoke+
````hawk_chkpwd` is almost identical to `unix2_chkpwd`, except it restricts
acccess to users in the `haclient` group, and doesn't inject any delay
when invoked by the `hacluster` user (which is the user the Hawk web
server instance runs as).`hawk_invoke` allows the `hacluster` user to run a small assortment
of Pacemaker CLI tools as another user in order to support Pacemaker's
ACL feature. It is used by Hawk when performing various management
tasks.