[ https://issues.apache.org/jira/browse/AMBARI-8479?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14261853#comment-14261853
]
Hadoop QA commented on AMBARI-8479:
-----------------------------------
{color:green}+1 overall{color}. Here are the results of testing the latest attachment
http://issues.apache.org/jira/secure/attachment/12689621/AMBARI-8479_02.patch
against trunk revision .
{color:green}+1 @author{color}. The patch does not contain any @author tags.
{color:green}+1 tests included{color}. The patch appears to include 2 new or modified
test files.
{color:green}+1 javac{color}. The applied patch does not increase the total number of
javac compiler warnings.
{color:green}+1 release audit{color}. The applied patch does not increase the total number
of release audit warnings.
{color:green}+1 core tests{color}. The patch passed unit tests in ambari-server.
Test results: https://builds.apache.org/job/Ambari-trunk-test-patch/1130//testReport/
Console output: https://builds.apache.org/job/Ambari-trunk-test-patch/1130//console
This message is automatically generated.
> YARN service components should indicate security state
> ------------------------------------------------------
>
> Key: AMBARI-8479
> URL: https://issues.apache.org/jira/browse/AMBARI-8479
> Project: Ambari
> Issue Type: Improvement
> Components: ambari-server, stacks
> Affects Versions: 2.0.0
> Reporter: Robert Levas
> Assignee: Robert Levas
> Labels: kerberos, lifecycle, security
> Fix For: 2.0.0
>
> Attachments: AMBARI-8479_01.patch, AMBARI-8479_02.patch
>
>
> The YARN service components should indicate security state when queried by Ambari Agent
via STATUS_COMMAND. Each component should determine it's state as follows:
> h3. RESOURCEMANAGER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: /etc/hadoop/conf/yarn-site.xml
> ** yarn.timeline-service.enabled
> *** = "true"
> *** required
> ** yarn.timeline-service.http-authentication.type
> *** = "kerberos"
> *** required
> ** yarn.acl.enable
> *** = "true"
> *** required
> ** yarn.resourcemanager.keytab
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.resourcemanager.principal
> *** not empty
> *** required
> ** yarn.resourcemanager.webapp.spnego-keytab-file
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.resourcemanager.webapp.spnego-principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(resourcemanager principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> h3. NODEMANAGER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: /etc/hadoop/conf/yarn-site.xml
> ** yarn.timeline-service.enabled
> *** = "true"
> *** required
> ** yarn.timeline-service.http-authentication.type
> *** = "kerberos"
> *** required
> ** yarn.acl.enable
> *** = "true"
> *** required
> ** yarn.nodemanager.keytab
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.nodemanager.principal
> *** not empty
> *** required
> ** yarn.nodemanager.webapp.spnego-keytab-file
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.nodemanager.webapp.spnego-principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(nodemanager principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> h3. APP_TIMELINE_SERVER
> h4. Indicators
> * Command JSON
> ** config\['configurations']\['cluster-env']\['security_enabled']
> *** = “true”
> * Configuration File: /etc/hadoop/conf/yarn-site.xml
> ** yarn.timeline-service.enabled
> *** = "true"
> *** required
> ** yarn.timeline-service.http-authentication.type
> *** = "kerberos"
> *** required
> ** yarn.acl.enable
> *** = "true"
> *** required
> ** yarn.timeline-service.keytab
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.timeline-service.principal
> *** not empty
> *** required
> ** yarn.timeline-service.http-authentication.kerberos.keytab
> *** not empty
> *** path exists and is readable
> *** required
> ** yarn.timeline-service.http-authentication.kerberos.principal
> *** not empty
> *** required
> h4. Pseudocode
> {code}
> if indicators imply security is on and validate
> if kinit(nodemanager principal) succeeds
> state = SECURED_KERBEROS
> else
> state = ERROR
> else
> state = UNSECURED
> {code}
> _*Note*_: Due to the _cost_ of calling {{kinit}} results should be cached for a period
of time before retrying. This may be an issue depending on the frequency of the heartbeat
timeout.
> _*Note*_: {{kinit}} calls should specify a _temporary_ cache file which should be destroyed
after command is executed - BUG-29477
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
|