Ryba boostraps and manages a full secured Hadoop cluster with one command. This is an Open-source software (OSS) project released under the new BSD license developed for one of the World largest utility company. Its used every day to manager and keep to date the cluster for every components.
Install Ryba locally or on a remote server and you are ready to go. It uses SSH to connect to each server of your cluster and will fully install all the components you wish. You don't need to prepare your cluster nodes as long as a minimal installation of RHEL or CentOS is installed with a root user or a user with sudo access.
First download Node.js. You might need to adjust the name of the Node.js archive depending on the version you choose to install. Also, replace the path "/usr/local/node" to another location (eg "~/node") if you don't have the permission to write inside "/usr/local".
# Download the Node.js packagewget --no-check-certificate# Extract the Node.js packagetar xzf node-v6.2.2-linux-x64.tar.gz# Move Node.js into its final destinationsudo mv node-v6.2.2-linux-x64 /usr/local/node# Add path to Node.js binaryecho 'export PATH=/usr/local/node/bin:$PATH' >> ~/.bashrc# Source the update profile. ~/.bashrc# Check if node is installednode -v# Clean up uploaded archiverm -rf node-v6.2.2-linux-x64.tar.gz
If you are behind a proxy, configure the Node.js Pakage Manager (NPM) with the commands:
npm config set proxynpm config set https-proxy
npm install to download the project dependencies.
For now Ryba contains the scripts for set up the following components: https://github.com/ryba-io/ryba/tree/master/ambari
Authentication Ryba does configure every components to work with Kerberos when possible. All the components listed above (except Elasticsearch, MongoDB, Nagios in community version) does support Kerberos.
Authorization Since Ryba does support Apache Ranger, you can manage easily the Access Control List from Ranger Admin. Indeed Apache Ranger provides support for ACL administration for the main Big Data components under the Apache project.
Encryption Ryba does configure TLS/SSL encryption for every service. You can generate (see an example on https://github.com/ryba-io/ryba-cluster) or provide your certificate, and Ryba will upload the certificates on the nodes and configure the components.
At the end of the ryba installation, you have a full Kerberized cluster with SSL encryption enabled.
Ryba does configure every service with High Availibity, if the service supports it. It does the configuration according to the layout of the cluster. Just define where you want the service to be installed, and Ryba does every step left, start and check if the service is running rightly
Ryba has a check command which run components, to verifiy that it is rightly configured and running. Check can be port binding verification (for example port 50470 for the Hadoop HDFS Namenode), or complete functional test like launching mapreduce jobs on YARN.