http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java index c03b400..d0d5dac 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog260Test.java @@ -55,8 +55,8 @@ import org.apache.ambari.server.api.services.AmbariMetaInfo; import org.apache.ambari.server.configuration.Configuration; import org.apache.ambari.server.controller.AmbariManagementController; import org.apache.ambari.server.controller.AmbariManagementControllerImpl; -import org.apache.ambari.server.controller.KerberosHelper; import org.apache.ambari.server.controller.MaintenanceStateHelper; +import org.apache.ambari.server.controller.ServiceConfigVersionResponse; import org.apache.ambari.server.orm.DBAccessor; import org.apache.ambari.server.orm.DBAccessor.DBColumnInfo; import org.apache.ambari.server.orm.dao.ArtifactDAO; @@ -74,6 +74,7 @@ import org.apache.ambari.server.state.StackInfo; import org.apache.ambari.server.state.kerberos.KerberosComponentDescriptor; import org.apache.ambari.server.state.kerberos.KerberosDescriptor; import org.apache.ambari.server.state.kerberos.KerberosDescriptorFactory; +import org.apache.ambari.server.state.kerberos.KerberosIdentityDescriptor; import org.apache.ambari.server.state.kerberos.KerberosServiceDescriptor; import org.apache.ambari.server.state.stack.OsFamily; import org.apache.commons.io.FileUtils; @@ -131,41 +132,16 @@ public class UpgradeCatalog260Test { @Mock(type = MockType.NICE) private OsFamily osFamily; - @Mock(type = MockType.NICE) - private KerberosHelper kerberosHelper; - - @Mock(type = MockType.NICE) - private ActionManager actionManager; - - @Mock(type = MockType.NICE) - private Config config; - - @Mock(type = MockType.STRICT) - private Service service; - - @Mock(type = MockType.NICE) - private Clusters clusters; - - @Mock(type = MockType.NICE) - private Cluster cluster; - - @Mock(type = MockType.NICE) - private Injector injector; - @Rule public TemporaryFolder temporaryFolder = new TemporaryFolder(); @Before public void init() { - reset(entityManagerProvider, injector); + reset(entityManagerProvider); expect(entityManagerProvider.get()).andReturn(entityManager).anyTimes(); - expect(injector.getInstance(Gson.class)).andReturn(null).anyTimes(); - expect(injector.getInstance(MaintenanceStateHelper.class)).andReturn(null).anyTimes(); - expect(injector.getInstance(KerberosHelper.class)).andReturn(kerberosHelper).anyTimes(); - - replay(entityManagerProvider, injector); + replay(entityManagerProvider); } @After @@ -227,17 +203,7 @@ public class UpgradeCatalog260Test { replay(dbAccessor, configuration, connection, statement, resultSet); - Module module = new Module() { - @Override - public void configure(Binder binder) { - binder.bind(DBAccessor.class).toInstance(dbAccessor); - binder.bind(OsFamily.class).toInstance(osFamily); - binder.bind(EntityManager.class).toInstance(entityManager); - binder.bind(Configuration.class).toInstance(configuration); - } - }; - - Injector injector = Guice.createInjector(module); + Injector injector = getInjector(); UpgradeCatalog260 upgradeCatalog260 = injector.getInstance(UpgradeCatalog260.class); upgradeCatalog260.executeDDLUpdates(); @@ -261,7 +227,7 @@ public class UpgradeCatalog260Test { expectLastCall().once(); } - public void expectRenameServiceDeletedColumn(Capture<DBColumnInfo> unmapped) throws SQLException { + public void expectRenameServiceDeletedColumn(Capture<DBColumnInfo> unmapped) throws SQLException { dbAccessor.renameColumn(eq(UpgradeCatalog260.CLUSTER_CONFIG_TABLE), eq(UpgradeCatalog260.SERVICE_DELETED_COLUMN), capture(unmapped)); expectLastCall().once(); } @@ -355,7 +321,7 @@ public class UpgradeCatalog260Test { } public void expectUpdateUpgradeTable(Capture<DBColumnInfo> rvid, - Capture<DBColumnInfo> orchestration, Capture<DBColumnInfo> revertAllowed) + Capture<DBColumnInfo> orchestration, Capture<DBColumnInfo> revertAllowed) throws SQLException { dbAccessor.clearTable(eq(UpgradeCatalog260.UPGRADE_TABLE)); @@ -557,17 +523,7 @@ public class UpgradeCatalog260Test { expectLastCall().once(); replay(dbAccessor, configuration, connection, statement, resultSet); - Module module = new Module() { - @Override - public void configure(Binder binder) { - binder.bind(DBAccessor.class).toInstance(dbAccessor); - binder.bind(OsFamily.class).toInstance(osFamily); - binder.bind(EntityManager.class).toInstance(entityManager); - binder.bind(Configuration.class).toInstance(configuration); - } - }; - - Injector injector = Guice.createInjector(module); + Injector injector = getInjector(); UpgradeCatalog260 upgradeCatalog260 = injector.getInstance(UpgradeCatalog260.class); upgradeCatalog260.executePreDMLUpdates(); @@ -605,27 +561,17 @@ public class UpgradeCatalog260Test { @Test public void testEnsureZeppelinProxyUserConfigs() throws AmbariException { - final Clusters clusters = createMock(Clusters.class); + Injector injector = getInjector(); + + final Clusters clusters = injector.getInstance(Clusters.class); final Cluster cluster = createMock(Cluster.class); final Config zeppelinEnvConf = createMock(Config.class); final Config coreSiteConf = createMock(Config.class); final Config coreSiteConfNew = createMock(Config.class); - final AmbariManagementController controller = createMock(AmbariManagementController.class); + final AmbariManagementController controller = injector.getInstance(AmbariManagementController.class); Capture<? extends Map<String, String>> captureCoreSiteConfProperties = newCapture(); - Module module = new Module() { - @Override - public void configure(Binder binder) { - binder.bind(DBAccessor.class).toInstance(dbAccessor); - binder.bind(OsFamily.class).toInstance(osFamily); - binder.bind(EntityManager.class).toInstance(entityManager); - binder.bind(Configuration.class).toInstance(configuration); - binder.bind(Clusters.class).toInstance(clusters); - binder.bind(AmbariManagementController.class).toInstance(controller); - } - }; - expect(clusters.getClusters()).andReturn(Collections.singletonMap("c1", cluster)).once(); expect(cluster.getClusterName()).andReturn("c1").atLeastOnce(); @@ -648,7 +594,6 @@ public class UpgradeCatalog260Test { replay(clusters, cluster, zeppelinEnvConf, coreSiteConf, coreSiteConfNew, controller); - Injector injector = Guice.createInjector(module); UpgradeCatalog260 upgradeCatalog260 = injector.getInstance(UpgradeCatalog260.class); upgradeCatalog260.ensureZeppelinProxyUserConfigs(); @@ -662,6 +607,8 @@ public class UpgradeCatalog260Test { @Test public void testUpdateKerberosDescriptorArtifact() throws Exception { + Injector injector = getInjector(); + URL systemResourceURL = ClassLoader.getSystemResource("kerberos/test_kerberos_descriptor_ranger_kms.json"); Assert.assertNotNull(systemResourceURL); @@ -672,28 +619,71 @@ public class UpgradeCatalog260Test { serviceDescriptor = kerberosDescriptor.getService("RANGER_KMS"); Assert.assertNotNull(serviceDescriptor); Assert.assertNotNull(serviceDescriptor.getIdentity("/smokeuser")); + Assert.assertNotNull(serviceDescriptor.getIdentity("/spnego")); KerberosComponentDescriptor componentDescriptor; componentDescriptor = serviceDescriptor.getComponent("RANGER_KMS_SERVER"); Assert.assertNotNull(componentDescriptor); Assert.assertNotNull(componentDescriptor.getIdentity("/smokeuser")); + Assert.assertNotNull(componentDescriptor.getIdentity("/spnego")); + Assert.assertNotNull(componentDescriptor.getIdentity("/spnego").getPrincipalDescriptor()); + Assert.assertEquals("invalid_name@${realm}", componentDescriptor.getIdentity("/spnego").getPrincipalDescriptor().getValue()); ArtifactEntity artifactEntity = createMock(ArtifactEntity.class); expect(artifactEntity.getArtifactData()).andReturn(kerberosDescriptor.toMap()).once(); Capture<Map<String, Object>> captureMap = newCapture(); + expect(artifactEntity.getForeignKeys()).andReturn(Collections.singletonMap("cluster", "2")); artifactEntity.setArtifactData(capture(captureMap)); expectLastCall().once(); ArtifactDAO artifactDAO = createMock(ArtifactDAO.class); expect(artifactDAO.merge(artifactEntity)).andReturn(artifactEntity).atLeastOnce(); - replay(artifactDAO, artifactEntity); + Map<String, String> properties = new HashMap<>(); + properties.put("ranger.ks.kerberos.principal", "correct_va...@example.com"); + properties.put("xasecure.audit.jaas.Client.option.principal", "wrong_va...@example.com"); + + Config config = createMock(Config.class); + expect(config.getProperties()).andReturn(properties).anyTimes(); + expect(config.getPropertiesAttributes()).andReturn(Collections.<String, Map<String, String>>emptyMap()).anyTimes(); + expect(config.getTag()).andReturn("version1").anyTimes(); + expect(config.getType()).andReturn("ranger-kms-audit").anyTimes(); + + Config newConfig = createMock(Config.class); + expect(newConfig.getTag()).andReturn("version2").anyTimes(); + expect(newConfig.getType()).andReturn("ranger-kms-audit").anyTimes(); + + ServiceConfigVersionResponse response = createMock(ServiceConfigVersionResponse.class); + + StackId stackId = createMock(StackId.class); + + Cluster cluster = createMock(Cluster.class); + expect(cluster.getDesiredStackVersion()).andReturn(stackId).anyTimes(); + expect(cluster.getDesiredConfigByType("dbks-site")).andReturn(config).anyTimes(); + expect(cluster.getDesiredConfigByType("ranger-kms-audit")).andReturn(config).anyTimes(); + expect(cluster.getConfigsByType("ranger-kms-audit")).andReturn(Collections.singletonMap("version1", config)).anyTimes(); + expect(cluster.getServiceByConfigType("ranger-kms-audit")).andReturn("RANGER").anyTimes(); + expect(cluster.getClusterName()).andReturn("cl1").anyTimes(); + expect(cluster.getConfig(eq("ranger-kms-audit"), anyString())).andReturn(newConfig).once(); + expect(cluster.addDesiredConfig("ambari-upgrade", Collections.singleton(newConfig), "Updated ranger-kms-audit during Ambari Upgrade from 2.5.2 to 2.6.0.")).andReturn(response).once(); + + final Clusters clusters = injector.getInstance(Clusters.class); + expect(clusters.getCluster(2L)).andReturn(cluster).anyTimes(); - UpgradeCatalog260 upgradeCatalog260 = createMockBuilder(UpgradeCatalog260.class).createMock(); + Capture<? extends Map<String, String>> captureProperties = newCapture(); + + AmbariManagementController controller = injector.getInstance(AmbariManagementController.class); + expect(controller.createConfig(eq(cluster), eq(stackId), eq("ranger-kms-audit"), capture(captureProperties), anyString(), anyObject(Map.class))) + .andReturn(null) + .once(); + + replay(artifactDAO, artifactEntity, cluster, clusters, config, newConfig, response, controller, stackId); + + UpgradeCatalog260 upgradeCatalog260 = injector.getInstance(UpgradeCatalog260.class); upgradeCatalog260.updateKerberosDescriptorArtifact(artifactDAO, artifactEntity); - verify(artifactDAO, artifactEntity); + verify(artifactDAO, artifactEntity, cluster, clusters, config, newConfig, response, controller, stackId); KerberosDescriptor kerberosDescriptorUpdated = new KerberosDescriptorFactory().createInstance(captureMap.getValue()); Assert.assertNotNull(kerberosDescriptorUpdated); @@ -701,10 +691,27 @@ public class UpgradeCatalog260Test { Assert.assertNull(kerberosDescriptorUpdated.getService("RANGER_KMS").getIdentity("/smokeuser")); Assert.assertNull(kerberosDescriptorUpdated.getService("RANGER_KMS").getComponent("RANGER_KMS_SERVER").getIdentity("/smokeuser")); + KerberosIdentityDescriptor identity; + + Assert.assertNull(kerberosDescriptorUpdated.getService("RANGER_KMS").getIdentity("/spnego")); + identity = kerberosDescriptorUpdated.getService("RANGER_KMS").getIdentity("ranger_kms_spnego"); + Assert.assertNotNull(identity); + Assert.assertEquals("/spnego", identity.getReference()); + + Assert.assertNull(kerberosDescriptorUpdated.getService("RANGER_KMS").getComponent("RANGER_KMS_SERVER").getIdentity("/spnego")); + identity = kerberosDescriptorUpdated.getService("RANGER_KMS").getComponent("RANGER_KMS_SERVER").getIdentity("ranger_kms_ranger_kms_server_spnego"); + Assert.assertNotNull(identity); + Assert.assertEquals("/spnego", identity.getReference()); + Assert.assertNotNull(identity.getPrincipalDescriptor()); + Assert.assertNull(identity.getPrincipalDescriptor().getValue()); + + Assert.assertTrue(captureProperties.hasCaptured()); + Map<String, String> newProperties = captureProperties.getValue(); + Assert.assertEquals("correct_va...@example.com", newProperties.get("xasecure.audit.jaas.Client.option.principal")); } @Test - public void testUpdateAmsConfigs() throws Exception{ + public void testUpdateAmsConfigs() throws Exception { Map<String, String> oldProperties = new HashMap<String, String>() { { @@ -832,5 +839,19 @@ public class UpgradeCatalog260Test { verify(clusters, cluster, controller, widgetDAO, widgetEntity, stackInfo, serviceInfo); } + private Injector getInjector() { + + return Guice.createInjector(new Module() { + @Override + public void configure(Binder binder) { + binder.bind(DBAccessor.class).toInstance(dbAccessor); + binder.bind(OsFamily.class).toInstance(osFamily); + binder.bind(EntityManager.class).toInstance(entityManager); + binder.bind(Configuration.class).toInstance(configuration); + binder.bind(Clusters.class).toInstance(createMock(Clusters.class)); + binder.bind(AmbariManagementController.class).toInstance(createMock(AmbariManagementController.class)); + } + }); + } }
http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/ambari-server/src/test/resources/kerberos/test_kerberos_descriptor_ranger_kms.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/resources/kerberos/test_kerberos_descriptor_ranger_kms.json b/ambari-server/src/test/resources/kerberos/test_kerberos_descriptor_ranger_kms.json index d7e048f..e17e121 100644 --- a/ambari-server/src/test/resources/kerberos/test_kerberos_descriptor_ranger_kms.json +++ b/ambari-server/src/test/resources/kerberos/test_kerberos_descriptor_ranger_kms.json @@ -65,6 +65,7 @@ { "name": "/spnego", "principal": { + "value" : "invalid_name@${realm}", "configuration": "kms-site/hadoop.kms.authentication.signer.secret.provider.zookeeper.kerberos.principal" }, "keytab": { http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/ambari-server/src/test/resources/stacks/HDP/2.0.8/services/HDFS/kerberos.json ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/resources/stacks/HDP/2.0.8/services/HDFS/kerberos.json b/ambari-server/src/test/resources/stacks/HDP/2.0.8/services/HDFS/kerberos.json index a555bb5..ecbdfe9 100644 --- a/ambari-server/src/test/resources/stacks/HDP/2.0.8/services/HDFS/kerberos.json +++ b/ambari-server/src/test/resources/stacks/HDP/2.0.8/services/HDFS/kerberos.json @@ -4,7 +4,8 @@ "name": "HDFS", "identities": [ { - "name": "/spnego", + "name": "hdfs_spnego", + "reference": "/spnego", "principal": { "configuration": "hdfs-site/dfs.web.authentication.kerberos.principal" }, @@ -13,7 +14,8 @@ } }, { - "name": "/smokeuser" + "name": "hdfs_smokeuser", + "reference": "/smokeuser" }, { "name": "hdfs", @@ -63,7 +65,8 @@ } }, { - "name": "/spnego", + "name": "hdfs_namenode_spnego", + "reference": "/spnego", "principal": { "configuration": "hdfs-site/dfs.namenode.kerberos.internal.spnego.principal" } @@ -128,7 +131,8 @@ } }, { - "name": "/spnego", + "name": "hdfs_secondary_namenode_spnego", + "reference": "/spnego", "principal": { "configuration": "hdfs-site/dfs.secondary.namenode.kerberos.internal.spnego.principal" } http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/kerberos.json ---------------------------------------------------------------------- diff --git a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/kerberos.json b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/kerberos.json index 74d84e6..0823b5e 100644 --- a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/kerberos.json +++ b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/common-services/NIFI/1.0.0/kerberos.json @@ -7,7 +7,8 @@ "name": "NIFI_MASTER", "identities": [ { - "name": "/spnego", + "name": "nifi_nifi_master_spnego", + "reference": "/spnego", "principal": { "configuration": "nifi-properties/nifi.kerberos.spnego.principal" }, @@ -38,7 +39,8 @@ } }, { - "name": "/NIFI/NIFI_MASTER/nifi_principal", + "name": "nifi_nifi_master_nifi_principal", + "reference": "/NIFI/NIFI_MASTER/nifi_principal", "principal": { "configuration": "ranger-nifi-audit/xasecure.audit.jaas.Client.option.principal" }, http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/contrib/management-packs/hdf-ambari-mpack/src/main/resources/stacks/HDF/2.0/services/KAFKA/kerberos.json ---------------------------------------------------------------------- diff --git a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/stacks/HDF/2.0/services/KAFKA/kerberos.json b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/stacks/HDF/2.0/services/KAFKA/kerberos.json index aa351d1..e1e814f 100644 --- a/contrib/management-packs/hdf-ambari-mpack/src/main/resources/stacks/HDF/2.0/services/KAFKA/kerberos.json +++ b/contrib/management-packs/hdf-ambari-mpack/src/main/resources/stacks/HDF/2.0/services/KAFKA/kerberos.json @@ -4,7 +4,8 @@ "name": "KAFKA", "identities": [ { - "name": "/smokeuser" + "name": "kafka_smokeuser", + "refernce": "/smokeuser" } ], "configurations": [ @@ -56,7 +57,8 @@ } }, { - "name": "/KAFKA/KAFKA_BROKER/kafka_broker", + "name": "kafka_kafka_broker_kafka_broker", + "reference": "/KAFKA/KAFKA_BROKER/kafka_broker", "principal": { "configuration": "ranger-kafka-audit/xasecure.audit.jaas.Client.option.principal" }, http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/kerberos.json ---------------------------------------------------------------------- diff --git a/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/kerberos.json b/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/kerberos.json index 6e4aa4c..0d4e621 100644 --- a/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/kerberos.json +++ b/contrib/management-packs/microsoft-r_mpack/src/main/resources/common-services/MICROSOFT_R_SERVER/8.0.5/kerberos.json @@ -4,10 +4,12 @@ "name": "MICROSOFT_R_SERVER", "identities": [ { - "name": "/HDFS/NAMENODE/hdfs" + "name": "microsoft_r_server_hdfs", + "reference": "/HDFS/NAMENODE/hdfs" }, { - "name": "/smokeuser" + "name": "microsoft_r_server_smokeuser", + "reference": "/smokeuser" } ] } http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/kerberos.json ---------------------------------------------------------------------- diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/kerberos.json b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/kerberos.json index 4b31f7a..ad6fd4b 100755 --- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/kerberos.json +++ b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/HIVE/kerberos.json @@ -4,10 +4,12 @@ "name": "HIVE", "identities": [ { - "name": "/spnego" + "name": "hive_spnego", + "reference": "/spnego" }, { - "name": "/smokeuser" + "name": "hive_smokeuser", + "reference": "/smokeuser" } ], "configurations": [ @@ -44,7 +46,8 @@ "name": "HIVE_METASTORE", "identities": [ { - "name": "/HIVE/HIVE_SERVER/hive_server_hive", + "name": "hive_hive_metastore_hive", + "reference": "/HIVE/HIVE_SERVER/hive_server_hive", "principal": { "configuration": "hive-site/hive.metastore.kerberos.principal" }, @@ -58,7 +61,8 @@ "name": "HIVE_SERVER", "identities": [ { - "name": "/HDFS/NAMENODE/hdfs" + "name": "hive_hive_server_hdfs", + "reference": "/HDFS/NAMENODE/hdfs" }, { "name": "hive_server_hive", @@ -92,7 +96,8 @@ } }, { - "name": "/spnego", + "name": "hive_hive_server_spnego", + "reference": "/spnego", "principal": { "configuration": "hive-site/hive.server2.authentication.spnego.principal" }, @@ -116,7 +121,8 @@ "name": "WEBHCAT_SERVER", "identities": [ { - "name": "/spnego", + "name": "hive_webhcat_server_spnego", + "reference": "/spnego", "principal": { "configuration": "webhcat-site/templeton.kerberos.principal" }, http://git-wip-us.apache.org/repos/asf/ambari/blob/2a060210/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/kerberos.json ---------------------------------------------------------------------- diff --git a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/kerberos.json b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/kerberos.json index 4093431..647e4fc 100755 --- a/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/kerberos.json +++ b/contrib/management-packs/odpi-ambari-mpack/src/main/resources/stacks/ODPi/2.0/services/YARN/kerberos.json @@ -4,10 +4,12 @@ "name": "YARN", "identities": [ { - "name": "/spnego" + "name": "yarn_spnego", + "reference": "/spnego" }, { - "name": "/smokeuser" + "name": "yarn_smokeuser", + "reference": "/smokeuser" } ], "configurations": [ @@ -67,7 +69,8 @@ } }, { - "name": "/spnego", + "name": "yarn_nodemanager_spnego", + "reference": "/spnego", "principal": { "configuration": "yarn-site/yarn.nodemanager.webapp.spnego-principal" }, @@ -109,7 +112,8 @@ } }, { - "name": "/spnego", + "name": "yarn_resourcemanager_spnego", + "reference": "/spnego", "principal": { "configuration": "yarn-site/yarn.resourcemanager.webapp.spnego-principal" }, @@ -144,7 +148,8 @@ } }, { - "name": "/spnego", + "name": "yarn_app_timeline_server_spnego", + "reference": "/spnego", "principal": { "configuration": "yarn-site/yarn.timeline-service.http-authentication.kerberos.principal" }, @@ -153,7 +158,8 @@ } }, { - "name": "/HDFS/NAMENODE/hdfs" + "name": "yarn_app_timelineserver_hdfs", + "reference": "/HDFS/NAMENODE/hdfs" } ] } @@ -163,10 +169,12 @@ "name": "MAPREDUCE2", "identities": [ { - "name": "/spnego" + "name": "mapreduce2_spnego", + "reference": "/spnego" }, { - "name": "/smokeuser" + "name": "mapreduce2_smokeuser", + "reference": "/smokeuser" } ], "components": [ @@ -174,7 +182,8 @@ "name": "HISTORYSERVER", "identities": [ { - "name": "/HDFS/NAMENODE/hdfs" + "name": "mapreduce2_history_server_hdfs", + "reference": "/HDFS/NAMENODE/hdfs" }, { "name": "history_server_jhs", @@ -198,7 +207,8 @@ } }, { - "name": "/spnego", + "name": "mapreduce2_history_server_spnego", + "reference": "/spnego", "principal": { "configuration": "mapred-site/mapreduce.jobhistory.webapp.spnego-principal" },