jumbo-services

This repository is part of the Jumbo project. It contains playbooks to deploy an HDP cluster. All parameters can be generated by Jumbo.

To test it, the repository should be clone at jumbo/core/data/jumbo-services of the Jumbo project on ft_refactor_services branch.

Inventory requirements

Jumbo's role is to generate the inventory folder with all necessary variables.

Example for a 3 nodes cluster with nodes edge, master01, worker01 :

├── group_vars
│   └── all
├── hosts
└── host_vars
    ├── edge
    ├── master01
    └── worker01

All information relative to hosts should be placed in host_vars folder. For example, to generate the master01_group hostgroup we look at the components variable stored in host_vars/master01:

---
components:
- NAMENODE
- SECONDARY_NAMENODE
- RESOURCEMANAGER
- HDFS_CLIENT
- YARN_CLIENT
- ...

All information relative to services and the cluster in general should be stored in group_vars/all. For example to generate the blueprint for YARN and HDFS we should have:

---
HDFS:
  namenodes_FQDN:
  - master01.domain.local
  snamenode_FQDN: master01.domain.local
YARN:
  resourcemanagers_FQDN:
  - master01.domain.local
  container_max_memory: 1536
  nodemanager_resource_memory: 3072
  timeline_service_FQDN: edge.domain.local

Jumbo requirements

To add a service and have it registered in Jumbo, a description of the service should be added in services/[service_name].json.