[
https://issues.apache.org/jira/browse/BIGTOP-1746?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14376288#comment-14376288
]
vishnu gajendran commented on BIGTOP-1746:
------------------------------------------
Hi Michael, thank you for reviewing my patch. yes, I have tried to retain the
concept of components in this patch. I think existing configuration mechanism
(specifying just head node and components list) will be handy if user wants to
deploy a "test" single or multinode cluster without dealing with much of
specific configurations.
On your question regarding two-level roles, our thinking is its better not to
expose the internal implementation details (i.e class and sub-class). Plus, not
every module need to support roles (for utility classes like bigtop-utils
etc...). Also, I have included explicit "deploy" class for each module and this
class will be reponsible for dealing with dependencies between services (during
installation) when roles are specified.
Also, I will change the class name for bigtop-utils module.
> Introduce the concept of roles in bigtop cluster deployment
> -----------------------------------------------------------
>
> Key: BIGTOP-1746
> URL: https://issues.apache.org/jira/browse/BIGTOP-1746
> Project: Bigtop
> Issue Type: New Feature
> Components: deployment
> Affects Versions: 0.8.0
> Reporter: vishnu gajendran
> Assignee: vishnu gajendran
> Labels: features
> Fix For: 1.0.0
>
> Attachments: BIGTOP-1746.patch
>
>
> Currently, during cluster deployment, puppet categorizes nodes as head_node,
> worker_nodes, gateway_nodes, standy_node based on user specified info. This
> functionality gives user control over picking up a particular node as
> head_node, standy_node, gateway_node and rest others as worker_nodes. But, I
> woulld like to have more fine-grained control on which deamons should run on
> which node. For example, I do not want to run namenode, datanode on the same
> node. This functionality can be introduced with the concept of roles. Each
> node can be assigned a set of role. For example, Node A can be assigned
> ["namenode", "resourcemanager"] roles. Node B can be assigned ["datanode",
> "nodemanager"] and Node C can be assigned ["nodemanager", "hadoop-client"].
> Now, each node will only run the specified daemons. Prerequisite for this
> kind of deployment is that each node should be given the necessary
> configurations that it needs to know. For example, each datanode should know
> which is the namenode etc... This functionality will allow users to customize
> the cluster deployment according to their needs.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)