Ensure CDAP user has same user-id in all the nodes in MapR cluster

Description

We noticed issues in MapR cluster, when some nodes had different user-id compared to name node.

This caused files to be written with different user permission and essentially causing permission error when launching program, etc.

we need to ensure the cdap user-id is same across the nodes in the cluster.

Release Notes

None

Activity

Show:
Derek Wood
March 28, 2016, 11:33 PM

I confirmed the root cause in this case was a conflict between cloud provider usermgmt and Coopr usermgmt, causing one node to have an extra user temporarily installed, but occupying a uid. This caused cdap uid to be inconsistent.

One option is to have the cdap base packages provide specify useradd -u UID, but this still won't guarantee consistency due to conflicts. So instead we should recommend that to avoid this, the best option is to pre-create the cdap user on the nodes of the cluster with consistent uid/gid. To that end, we could add a recipe to the cdap cookbook to do this, similar to how the hadoop_mapr cookbook creates the mapr user.

Chris Gianelloni
March 15, 2017, 10:07 PM

I've implemented this as a separate recipe. It can be called directly, or will be called automatically if node['cdap']['create_cdap_user'] is set to true.

PR: https://github.com/caskdata/cdap_cookbook/pull/224

Chris Gianelloni
March 20, 2017, 9:08 PM

Created cdap::user recipe, with configurable uid/gid and added an attribute to control the behavior. By default, we do not create the user in Chef.

Fixed

Assignee

Chris Gianelloni

Reporter

Shankar Selvam

Labels

None

Docs Impact

None

UX Impact

None

Components

Priority

Major
Configure