-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/64397/
-----------------------------------------------------------
(Updated Dec. 12, 2017, 4:07 a.m.)
Review request for Ambari, Attila Doroszlai, Jayush Luniya, and Madhuvanthi
Radhakrishnan.
Changes
-------
Code updated as per review comments.
Bugs: AMBARI-22602
https://issues.apache.org/jira/browse/AMBARI-22602
Repository: ambari
Description
-------
AMBARI-22198 added "stack settings", and AMBARI-22196 introduced "cluster
settings" in Ambari.
This review adds 2 new parameters to Execution Command : **(1).**
clusterSettings and **(2).** stackSettings, and adds their respective set of
key-values pairs.
- This enables these parameters to be passed in to the ambari-agent's
**command*.json**.
Test cases are tracked in : AMBARI-22603
Diffs (updated)
-----
ambari-server/src/main/java/org/apache/ambari/server/agent/ExecutionCommand.java
5ee4bf6
ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java
fd43edf
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariCustomCommandExecutionHelper.java
e7dea06
ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java
59e6622
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ClientConfigResourceProvider.java
9043297
ambari-server/src/main/java/org/apache/ambari/server/resources/RootLevelSettingsManager.java
8bd24f2
ambari-server/src/main/java/org/apache/ambari/server/state/Cluster.java
c8768dd
ambari-server/src/main/java/org/apache/ambari/server/state/cluster/ClusterImpl.java
0b38b36
Diff: https://reviews.apache.org/r/64397/diff/2/
Changes: https://reviews.apache.org/r/64397/diff/1-2/
Testing
-------
Tested on Live cluster doing following :
(1). Start Service
(2). Restart Service
(3). Stop Service
(4). Refreshing client configs
(5). Adding Client.
**Snippet from command*.json as part of testing:**
{
...
...
"clusterSettings": {
"security_enabled": "false",
"hide_yarn_memory_widget": "false",
"enable_external_ranger": "false",
"override_uid": "true",
"kerberos_domain": "EXAMPLE.COM",
"one_dir_per_partition": "false",
"repo_ubuntu_template": "{{package_type}} {{base_url}} {{components}}",
"ignore_groupsusers_create": "false",
"alerts_repeat_tolerance": "1",
"namenode_rolling_restart_timeout": "4200",
"fetch_nonlocal_groups": "true",
"manage_dirs_on_root": "true",
"recovery_lifetime_max_count": "1024",
"agent_mounts_ignore_list": "",
"ignore_bad_mounts": "false",
"recovery_window_in_minutes": "60",
"sysprep_skip_copy_tarballs_hdfs": "false",
"recovery_type": "AUTO_START",
"user_group": "hadoop",
"namenode_rolling_restart_safemode_exit_timeout": "3600",
"recovery_retry_interval": "5",
"sysprep_skip_copy_oozie_share_lib_to_hdfs": "false",
"sysprep_skip_setup_jce": "false",
"manage_hive_fsroot": "true",
"service_check_type": "full",
"recovery_enabled": "true",
"recovery_max_count": "6",
"sysprep_skip_create_users_and_groups": "false",
"smokeuser_keytab": "/etc/security/keytabs/smokeuser.headless.keytab",
"managed_hdfs_resource_property_names": "false",
"smokeuser": "ambari-qa",
"sysprep_skip_copy_fast_jar_hdfs": "false"
},
...
...
...
...
...
...
...
"stackSettings": {
"stack_features": "{\n \"HDP\": {\n \"stack_features\": [\n
{\n \"name\": \"snappy\",\n \"description\": \"Snappy
compressor/decompressor support\",\n \"min_version\": \"2.0.0.0\",\n
\"max_version\": \"2.2.0.0\"\n },\n {\n \"name\":
\"lzo\",\n \"description\": \"LZO libraries support\",\n
\"min_version\": \"2.2.1.0\"\n },\n {\n \"name\":
\"express_upgrade\",\n \"description\": \"Express upgrade support\",\n
\"min_version\": \"2.1.0.0\"\n },\n {\n \"name\":
\"rolling_upgrade\",\n \"description\": \"Rolling upgrade support\",\n
\"min_version\": \"2.2.0.0\"\n },\n {\n \"name\":
\"kafka_acl_migration_support\",\n \"description\": \"ACL migration
support\",\n \"min_version\": \"2.3.4.0\"\n },\n {\n
\"name\": \"secure_zookeeper\",\n \"description\": \"Protect ZNodes with
SASL acl in secure clusters\"
,\n \"min_version\": \"2.6.0.0\"\n },\n {\n \"name\":
\"config_versioning\",\n \"description\": \"Configurable versions
support\",\n \"min_version\": \"2.3.0.0\"\n },\n {\n
\"name\": \"datanode_non_root\",\n \"description\": \"DataNode running
as non-root support (AMBARI-7615)\",\n \"min_version\": \"2.2.0.0\"\n
},\n {\n \"name\": \"remove_ranger_hdfs_plugin_env\",\n
\"description\": \"HDFS removes Ranger env files (AMBARI-14299)\",\n
\"min_version\": \"2.3.0.0\"\n },\n {\n \"name\":
\"ranger\",\n \"description\": \"Ranger Service support\",\n
\"min_version\": \"2.2.0.0\"\n },\n {\n \"name\":
\"ranger_tagsync_component\",\n \"description\": \"Ranger Tagsync
component support (AMBARI-14383)\",\n \"min_version\": \"2.5.0.0\"\n
},\n {\n \"name\": \"phoenix\",\n \"description\":
\"Phoenix Service support
\",\n \"min_version\": \"2.3.0.0\"\n },\n {\n
\"name\": \"nfs\",\n \"description\": \"NFS support\",\n
\"min_version\": \"2.3.0.0\"\n },\n {\n \"name\":
\"tez_for_spark\",\n \"description\": \"Tez dependency for Spark\",\n
\"min_version\": \"2.2.0.0\",\n \"max_version\": \"2.3.0.0\"\n
},\n {\n \"name\": \"timeline_state_store\",\n
\"description\": \"Yarn application timeline-service supports state store
property (AMBARI-11442)\",\n \"min_version\": \"2.2.0.0\"\n },\n
{\n \"name\": \"copy_tarball_to_hdfs\",\n \"description\":
\"Copy tarball to HDFS support (AMBARI-12113)\",\n \"min_version\":
\"2.2.0.0\"\n },\n {\n \"name\": \"spark_16plus\",\n
\"description\": \"Spark 1.6+\",\n \"min_version\": \"2.4.0.0\"\n
},\n {\n \"name\": \"spark_thriftserver\",\n
\"description\": \"Spark Thrift Server\",
\n \"min_version\": \"2.3.2.0\"\n },\n {\n \"name\":
\"storm_kerberos\",\n \"description\": \"Storm Kerberos support
(AMBARI-7570)\",\n \"min_version\": \"2.2.0.0\"\n },\n {\n
\"name\": \"storm_ams\",\n \"description\": \"Storm AMS integration
(AMBARI-10710)\",\n \"min_version\": \"2.2.0.0\"\n },\n {\n
\"name\": \"kafka_listeners\",\n \"description\": \"Kafka listeners
(AMBARI-10984)\",\n \"min_version\": \"2.3.0.0\"\n },\n {\n
\"name\": \"kafka_kerberos\",\n \"description\": \"Kafka Kerberos
support (AMBARI-10984)\",\n \"min_version\": \"2.3.0.0\"\n },\n
{\n \"name\": \"pig_on_tez\",\n \"description\": \"Pig on Tez
support (AMBARI-7863)\",\n \"min_version\": \"2.2.0.0\"\n },\n
{\n \"name\": \"ranger_usersync_non_root\",\n \"description\":
\"Ranger Usersync as non-root user (AMBARI-10416)\",\n
\"min_version\": \"2.3.0.0\"\n },\n {\n \"name\":
\"ranger_audit_db_support\",\n \"description\": \"Ranger Audit to DB
support\",\n \"min_version\": \"2.2.0.0\",\n \"max_version\":
\"2.5.0.0\"\n },\n {\n \"name\":
\"accumulo_kerberos_user_auth\",\n \"description\": \"Accumulo Kerberos
User Auth (AMBARI-10163)\",\n \"min_version\": \"2.3.0.0\"\n },\n
{\n \"name\": \"knox_versioned_data_dir\",\n \"description\":
\"Use versioned data dir for Knox (AMBARI-13164)\",\n \"min_version\":
\"2.3.2.0\"\n },\n {\n \"name\": \"knox_sso_topology\",\n
\"description\": \"Knox SSO Topology support (AMBARI-13975)\",\n
\"min_version\": \"2.3.8.0\"\n },\n {\n \"name\":
\"atlas_rolling_upgrade\",\n \"description\": \"Rolling upgrade support
for Atlas\",\n \"min_version\": \"2.3.0.0\"\n },\n {\n
\"name\": \"oozie_admin_user\",\
n \"description\": \"Oozie install user as an Oozie admin user
(AMBARI-7976)\",\n \"min_version\": \"2.2.0.0\"\n },\n {\n
\"name\": \"oozie_create_hive_tez_configs\",\n \"description\":
\"Oozie create configs for Ambari Hive and Tez deployments (AMBARI-8074)\",\n
\"min_version\": \"2.2.0.0\"\n },\n {\n \"name\":
\"oozie_setup_shared_lib\",\n \"description\": \"Oozie setup tools used
to shared Oozie lib to HDFS (AMBARI-7240)\",\n \"min_version\":
\"2.2.0.0\"\n },\n {\n \"name\": \"oozie_host_kerberos\",\n
\"description\": \"Oozie in secured clusters uses _HOST in Kerberos
principal (AMBARI-9775)\",\n \"min_version\": \"2.0.0.0\"\n },\n
{\n \"name\": \"falcon_extensions\",\n \"description\":
\"Falcon Extension\",\n \"min_version\": \"2.5.0.0\"\n },\n
{\n \"name\": \"hive_metastore_upgrade_schema\",\n
\"description\": \"Hive m
etastore upgrade schema support (AMBARI-11176)\",\n \"min_version\":
\"2.3.0.0\"\n },\n {\n \"name\":
\"hive_server_interactive\",\n \"description\": \"Hive server
interactive support (AMBARI-15573)\",\n \"min_version\": \"2.5.0.0\"\n
},\n {\n \"name\": \"hive_webhcat_specific_configs\",\n
\"description\": \"Hive webhcat specific configurations support
(AMBARI-12364)\",\n \"min_version\": \"2.3.0.0\"\n },\n {\n
\"name\": \"hive_purge_table\",\n \"description\": \"Hive purge
table support (AMBARI-12260)\",\n \"min_version\": \"2.3.0.0\"\n
},\n {\n \"name\": \"hive_server2_kerberized_env\",\n
\"description\": \"Hive server2 working on kerberized environment
(AMBARI-13749)\",\n \"min_version\": \"2.2.3.0\",\n
\"max_version\": \"2.2.5.0\"\n },\n {\n \"name\":
\"hive_env_heapsize\",\n \"description\": \"Hive heapsize property de
fined in hive-env (AMBARI-12801)\",\n \"min_version\": \"2.2.0.0\"\n
},\n {\n \"name\": \"ranger_kms_hsm_support\",\n
\"description\": \"Ranger KMS HSM support (AMBARI-15752)\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"ranger_log4j_support\",\n \"description\": \"Ranger supporting log-4j
properties (AMBARI-15681)\",\n \"min_version\": \"2.5.0.0\"\n },\n
{\n \"name\": \"ranger_kerberos_support\",\n \"description\":
\"Ranger Kerberos support\",\n \"min_version\": \"2.5.0.0\"\n },\n
{\n \"name\": \"hive_metastore_site_support\",\n
\"description\": \"Hive Metastore site support\",\n \"min_version\":
\"2.5.0.0\"\n },\n {\n \"name\":
\"ranger_usersync_password_jceks\",\n \"description\": \"Saving Ranger
Usersync credentials in jceks\",\n \"min_version\": \"2.5.0.0\"\n
},\n {\n \"name\": \"ranger_inst
all_infra_client\",\n \"description\": \"Ambari Infra Service
support\",\n \"min_version\": \"2.5.0.0\"\n },\n {\n
\"name\": \"falcon_atlas_support_2_3\",\n \"description\": \"Falcon
Atlas integration support for 2.3 stack\",\n \"min_version\":
\"2.3.99.0\",\n \"max_version\": \"2.4.0.0\"\n },\n {\n
\"name\": \"falcon_atlas_support\",\n \"description\": \"Falcon Atlas
integration\",\n \"min_version\": \"2.5.0.0\"\n },\n {\n
\"name\": \"hbase_home_directory\",\n \"description\": \"Hbase home
directory in HDFS needed for HBASE backup\",\n \"min_version\":
\"2.5.0.0\"\n },\n {\n \"name\": \"spark_livy\",\n
\"description\": \"Livy as slave component of spark\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"atlas_ranger_plugin_support\",\n \"description\": \"Atlas Ranger
plugin support\",\n \"min_version\":
\"2.5.0.0\"\n },\n {\n \"name\":
\"atlas_conf_dir_in_path\",\n \"description\": \"Prepend the Atlas conf
dir (/etc/atlas/conf) to the classpath of Storm and Falcon\",\n
\"min_version\": \"2.3.0.0\",\n \"max_version\": \"2.4.99.99\"\n
},\n {\n \"name\": \"atlas_upgrade_support\",\n
\"description\": \"Atlas supports express and rolling upgrades\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"atlas_hook_support\",\n \"description\": \"Atlas support for hooks in
Hive, Storm, Falcon, and Sqoop\",\n \"min_version\": \"2.5.0.0\"\n
},\n {\n \"name\": \"ranger_pid_support\",\n
\"description\": \"Ranger Service support pid generation AMBARI-16756\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"ranger_kms_pid_support\",\n \"description\": \"Ranger KMS Service
support pid generation\",\n \"min_version\": \"2.5.0.0\"\
n },\n {\n \"name\": \"ranger_admin_password_change\",\n
\"description\": \"Allow ranger admin credentials to be specified during
cluster creation (AMBARI-17000)\",\n \"min_version\": \"2.5.0.0\"\n
},\n {\n \"name\": \"storm_metrics_apache_classes\",\n
\"description\": \"Metrics sink for Storm that uses Apache class names\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"spark_java_opts_support\",\n \"description\": \"Allow Spark to
generate java-opts file\",\n \"min_version\": \"2.2.0.0\",\n
\"max_version\": \"2.4.0.0\"\n },\n {\n \"name\":
\"atlas_hbase_setup\",\n \"description\": \"Use script to create Atlas
tables in Hbase and set permissions for Atlas user.\",\n
\"min_version\": \"2.5.0.0\"\n },\n {\n \"name\":
\"ranger_hive_plugin_jdbc_url\",\n \"description\": \"Handle Ranger hive
repo config jdbc url change for stac
k 2.5 (AMBARI-18386)\",\n \"min_version\": \"2.5.0.0\"\n },\n
{\n \"name\": \"zkfc_version_advertised\",\n \"description\":
\"ZKFC advertise version\",\n \"min_version\": \"2.5.0.0\"\n },\n
{\n \"name\": \"phoenix_core_hdfs_site_required\",\n
\"description\": \"HDFS and CORE site required for Phoenix\",\n
\"max_version\": \"2.5.9.9\"\n },\n {\n \"name\":
\"ranger_tagsync_ssl_xml_support\",\n \"description\": \"Ranger Tagsync
ssl xml support.\",\n \"min_version\": \"2.6.0.0\"\n },\n {\n
\"name\": \"ranger_xml_configuration\",\n \"description\":
\"Ranger code base support xml configurations\",\n \"min_version\":
\"2.3.0.0\"\n },\n {\n \"name\":
\"kafka_ranger_plugin_support\",\n \"description\": \"Ambari stack
changes for Ranger Kafka Plugin (AMBARI-11299)\",\n \"min_version\":
\"2.3.0.0\"\n },\n {\n \"name\"
: \"yarn_ranger_plugin_support\",\n \"description\": \"Implement Stack
changes for Ranger Yarn Plugin integration (AMBARI-10866)\",\n
\"min_version\": \"2.3.0.0\"\n },\n {\n \"name\":
\"ranger_solr_config_support\",\n \"description\": \"Showing Ranger
solrconfig.xml on UI\",\n \"min_version\": \"2.6.0.0\"\n },\n
{\n \"name\": \"core_site_for_ranger_plugins\",\n
\"description\": \"Adding core-site.xml in when Ranger plugin is enabled for
Storm, Kafka, and Knox.\",\n \"min_version\": \"2.6.0.0\"\n },\n
{\n \"name\": \"secure_ranger_ssl_password\",\n
\"description\": \"Securing Ranger Admin and Usersync SSL and Trustore related
passwords in jceks\",\n \"min_version\": \"2.6.0.0\"\n },\n
{\n \"name\": \"ranger_kms_ssl\",\n \"description\": \"Ranger KMS
SSL properties in ambari stack\",\n \"min_version\": \"2.6.0.0\"\n
},\n {\n \"name\
": \"atlas_hdfs_site_on_namenode_ha\",\n \"description\": \"Need to
create hdfs-site under atlas-conf dir when Namenode-HA is enabled.\",\n
\"min_version\": \"2.6.0.0\"\n }\n ]\n }\n}\n",
"stack_name": "HDP",
"stack_root": "{\"HDP\":\"/usr/hdp\"}",
"stack_packages": "{\n \"HDP\": {\n \"stack-select\": {\n
\"ACCUMULO\": {\n \"ACCUMULO_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"accumulo-client\",\n \"INSTALL\": [\n
\"accumulo-client\"\n ],\n \"PATCH\": [\n
\"accumulo-client\"\n ],\n \"STANDARD\": [\n
\"accumulo-client\"\n ]\n },\n \"ACCUMULO_GC\": {\n
\"STACK-SELECT-PACKAGE\": \"accumulo-gc\",\n \"INSTALL\": [\n
\"accumulo-gc\"\n ],\n \"PATCH\": [\n
\"accumulo-gc\"\n ],\n \"STANDARD\": [\n
\"accumulo-gc\",\n \"accumulo-client\"\n ]\n },\n
\"ACCUMULO_MASTER\": {\n \"STACK-SELECT-PACKAGE\":
\"accumulo-master\",\n \"INSTALL\": [\n
\"accumulo-master\"\n ],\n \"PATCH\": [\n
\"accumulo-master\"\n ],\n \"STANDARD
\": [\n \"accumulo-master\",\n \"accumulo-client\"\n
]\n },\n \"ACCUMULO_MONITOR\": {\n
\"STACK-SELECT-PACKAGE\": \"accumulo-monitor\",\n \"INSTALL\": [\n
\"accumulo-monitor\"\n ],\n \"PATCH\": [\n
\"accumulo-monitor\"\n ],\n \"STANDARD\": [\n
\"accumulo-monitor\",\n \"accumulo-client\"\n ]\n
},\n \"ACCUMULO_TRACER\": {\n \"STACK-SELECT-PACKAGE\":
\"accumulo-tracer\",\n \"INSTALL\": [\n
\"accumulo-tracer\"\n ],\n \"PATCH\": [\n
\"accumulo-tracer\"\n ],\n \"STANDARD\": [\n
\"accumulo-tracer\",\n \"accumulo-client\"\n ]\n
},\n \"ACCUMULO_TSERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"accumulo-tablet\",\n \"INSTALL\": [\n
\"accumulo-tablet\"\n ],\n \"PATCH\": [\
n \"accumulo-tablet\"\n ],\n \"STANDARD\": [\n
\"accumulo-tablet\",\n \"accumulo-client\"\n ]\n
}\n },\n \"ATLAS\": {\n \"ATLAS_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"atlas-client\",\n \"INSTALL\": [\n
\"atlas-client\"\n ],\n \"PATCH\": [\n
\"atlas-client\"\n ],\n \"STANDARD\": [\n
\"atlas-client\"\n ]\n },\n \"ATLAS_SERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"atlas-server\",\n \"INSTALL\": [\n
\"atlas-server\"\n ],\n \"PATCH\": [\n
\"atlas-server\"\n ],\n \"STANDARD\": [\n
\"atlas-server\"\n ]\n }\n },\n \"DRUID\": {\n
\"DRUID_COORDINATOR\": {\n \"STACK-SELECT-PACKAGE\":
\"druid-coordinator\",\n \"INSTALL\": [\n
\"druid-coordinator\"\n
],\n \"PATCH\": [\n \"druid-coordinator\"\n ],\n
\"STANDARD\": [\n \"druid-coordinator\"\n ]\n
},\n \"DRUID_OVERLORD\": {\n \"STACK-SELECT-PACKAGE\":
\"druid-overlord\",\n \"INSTALL\": [\n \"druid-overlord\"\n
],\n \"PATCH\": [\n \"druid-overlord\"\n
],\n \"STANDARD\": [\n \"druid-overlord\"\n ]\n
},\n \"DRUID_HISTORICAL\": {\n \"STACK-SELECT-PACKAGE\":
\"druid-historical\",\n \"INSTALL\": [\n
\"druid-historical\"\n ],\n \"PATCH\": [\n
\"druid-historical\"\n ],\n \"STANDARD\": [\n
\"druid-historical\"\n ]\n },\n \"DRUID_BROKER\": {\n
\"STACK-SELECT-PACKAGE\": \"druid-broker\",\n \"INSTALL\": [\n
\"druid-broker\"\n ],\n \"PATCH\": [\n
\"dr
uid-broker\"\n ],\n \"STANDARD\": [\n
\"druid-broker\"\n ]\n },\n \"DRUID_MIDDLEMANAGER\": {\n
\"STACK-SELECT-PACKAGE\": \"druid-middlemanager\",\n
\"INSTALL\": [\n \"druid-middlemanager\"\n ],\n
\"PATCH\": [\n \"druid-middlemanager\"\n ],\n
\"STANDARD\": [\n \"druid-middlemanager\"\n ]\n },\n
\"DRUID_ROUTER\": {\n \"STACK-SELECT-PACKAGE\":
\"druid-router\",\n \"INSTALL\": [\n \"druid-router\"\n
],\n \"PATCH\": [\n \"druid-router\"\n ],\n
\"STANDARD\": [\n \"druid-router\"\n ]\n },\n
\"DRUID_SUPERSET\": {\n \"STACK-SELECT-PACKAGE\":
\"druid-superset\",\n \"INSTALL\": [\n \"druid-superset\"\n
],\n \"PATCH\": [\n \"druid-superset\"\n
],\n \"ST
ANDARD\": [\n \"druid-superset\"\n ]\n }\n
},\n \"FALCON\": {\n \"FALCON_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"falcon-client\",\n \"INSTALL\": [\n
\"falcon-client\"\n ],\n \"PATCH\": [\n
\"falcon-client\"\n ],\n \"STANDARD\": [\n
\"falcon-client\"\n ]\n },\n \"FALCON_SERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"falcon-server\",\n \"INSTALL\": [\n
\"falcon-server\"\n ],\n \"PATCH\": [\n
\"falcon-server\"\n ],\n \"STANDARD\": [\n
\"falcon-server\"\n ]\n }\n },\n \"FLUME\": {\n
\"FLUME_HANDLER\": {\n \"STACK-SELECT-PACKAGE\": \"flume-server\",\n
\"INSTALL\": [\n \"flume-server\"\n ],\n
\"PATCH\": [\n \"flume-server\"\n ],\n
\"STANDARD\": [\n
\"flume-server\"\n ]\n }\n },\n
\"HBASE\": {\n \"HBASE_CLIENT\": {\n \"STACK-SELECT-PACKAGE\":
\"hbase-client\",\n \"INSTALL\": [\n \"hbase-client\"\n
],\n \"PATCH\": [\n \"hbase-client\"\n ],\n
\"STANDARD\": [\n \"hbase-client\",\n
\"phoenix-client\",\n \"hadoop-client\"\n ]\n },\n
\"HBASE_MASTER\": {\n \"STACK-SELECT-PACKAGE\":
\"hbase-master\",\n \"INSTALL\": [\n \"hbase-master\"\n
],\n \"PATCH\": [\n \"hbase-master\"\n ],\n
\"STANDARD\": [\n \"hbase-master\"\n ]\n },\n
\"HBASE_REGIONSERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"hbase-regionserver\",\n \"INSTALL\": [\n
\"hbase-regionserver\"\n ],\n \"PATCH\": [\n
\"hbase-regionserver\"\n
],\n \"STANDARD\": [\n \"hbase-regionserver\"\n
]\n },\n \"PHOENIX_QUERY_SERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"phoenix-server\",\n \"INSTALL\": [\n
\"phoenix-server\"\n ],\n \"PATCH\": [\n
\"phoenix-server\"\n ],\n \"STANDARD\": [\n
\"phoenix-server\"\n ]\n }\n },\n \"HDFS\": {\n
\"DATANODE\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-hdfs-datanode\",\n \"INSTALL\": [\n
\"hadoop-hdfs-datanode\"\n ],\n \"PATCH\": [\n
\"hadoop-hdfs-datanode\"\n ],\n \"STANDARD\": [\n
\"hadoop-hdfs-datanode\"\n ]\n },\n \"HDFS_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-hdfs-client\",\n
\"INSTALL\": [\n \"hadoop-hdfs-client\"\n ],\n
\"PATCH\": [\n \"hadoop-hdfs-client\"
\n ],\n \"STANDARD\": [\n \"hadoop-client\"\n
]\n },\n \"NAMENODE\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-hdfs-namenode\",\n \"INSTALL\": [\n
\"hadoop-hdfs-namenode\"\n ],\n \"PATCH\": [\n
\"hadoop-hdfs-namenode\"\n ],\n \"STANDARD\": [\n
\"hadoop-hdfs-namenode\"\n ]\n },\n
\"NFS_GATEWAY\": {\n \"STACK-SELECT-PACKAGE\": \"hadoop-hdfs-nfs3\",\n
\"INSTALL\": [\n \"hadoop-hdfs-nfs3\"\n ],\n
\"PATCH\": [\n \"hadoop-hdfs-nfs3\"\n ],\n
\"STANDARD\": [\n \"hadoop-hdfs-nfs3\"\n ]\n },\n
\"JOURNALNODE\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-hdfs-journalnode\",\n \"INSTALL\": [\n
\"hadoop-hdfs-journalnode\"\n ],\n \"PATCH\": [\n
\"hadoop-hdfs-journalnode\"\n
],\n \"STANDARD\": [\n \"hadoop-hdfs-journalnode\"\n
]\n },\n \"SECONDARY_NAMENODE\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-hdfs-secondarynamenode\",\n
\"INSTALL\": [\n \"hadoop-hdfs-secondarynamenode\"\n ],\n
\"PATCH\": [\n \"hadoop-hdfs-secondarynamenode\"\n
],\n \"STANDARD\": [\n \"hadoop-hdfs-secondarynamenode\"\n
]\n },\n \"ZKFC\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-hdfs-zkfc\",\n \"INSTALL\": [\n
\"hadoop-hdfs-zkfc\"\n ],\n \"PATCH\": [\n
\"hadoop-hdfs-zkfc\"\n ],\n \"STANDARD\": [\n
\"hadoop-hdfs-zkfc\"\n ]\n }\n },\n \"HIVE\": {\n
\"HCAT\": {\n \"STACK-SELECT-PACKAGE\": \"hive-webhcat\",\n
\"INSTALL\": [\n \"hive-webhcat\"\n ],\n
\"PATCH\": [\n
\"hive-webhcat\"\n ],\n \"STANDARD\": [\n
\"hive-webhcat\"\n ]\n },\n \"HIVE_METASTORE\": {\n
\"STACK-SELECT-PACKAGE\": \"hive-metastore\",\n \"INSTALL\": [\n
\"hive-metastore\"\n ],\n \"PATCH\": [\n
\"hive-metastore\"\n ],\n \"STANDARD\": [\n
\"hive-metastore\"\n ]\n },\n \"HIVE_SERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"hive-server2\",\n \"INSTALL\": [\n
\"hive-server2\"\n ],\n \"PATCH\": [\n
\"hive-server2\"\n ],\n \"STANDARD\": [\n
\"hive-server2\"\n ]\n },\n \"HIVE_SERVER_INTERACTIVE\":
{\n \"STACK-SELECT-PACKAGE\": \"hive-server2-hive2\",\n
\"INSTALL\": [\n \"hive-server2-hive2\"\n ],\n
\"PATCH\": [\n \"hive-server2-hive2\"\n ],\n \"
STANDARD\": [\n \"hive-server2-hive2\"\n ]\n },\n
\"HIVE_CLIENT\": {\n \"STACK-SELECT-PACKAGE\": \"hive-client\",\n
\"INSTALL\": [\n \"hive-client\"\n ],\n
\"PATCH\": [\n \"hive-client\"\n ],\n
\"STANDARD\": [\n \"hadoop-client\"\n ]\n },\n
\"WEBHCAT_SERVER\": {\n \"STACK-SELECT-PACKAGE\": \"hive-webhcat\",\n
\"INSTALL\": [\n \"hive-webhcat\"\n ],\n
\"PATCH\": [\n \"hive-webhcat\"\n ],\n
\"STANDARD\": [\n \"hive-webhcat\"\n ]\n }\n
},\n \"KAFKA\": {\n \"KAFKA_BROKER\": {\n
\"STACK-SELECT-PACKAGE\": \"kafka-broker\",\n \"INSTALL\": [\n
\"kafka-broker\"\n ],\n \"PATCH\": [\n
\"kafka-broker\"\n ],\n \"STANDARD\": [\n
\"kafka-broker\"\n
]\n }\n },\n \"KNOX\": {\n \"KNOX_GATEWAY\": {\n
\"STACK-SELECT-PACKAGE\": \"knox-server\",\n \"INSTALL\": [\n
\"knox-server\"\n ],\n \"PATCH\": [\n
\"knox-server\"\n ],\n \"STANDARD\": [\n
\"knox-server\"\n ]\n }\n },\n \"MAHOUT\": {\n
\"MAHOUT\": {\n \"STACK-SELECT-PACKAGE\": \"mahout-client\",\n
\"INSTALL\": [\n \"mahout-client\"\n ],\n
\"PATCH\": [\n \"mahout-client\"\n ],\n
\"STANDARD\": [\n \"mahout-client\"\n ]\n }\n
},\n \"MAPREDUCE2\": {\n \"HISTORYSERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-mapreduce-historyserver\",\n
\"INSTALL\": [\n \"hadoop-mapreduce-historyserver\"\n ],\n
\"PATCH\": [\n \"hadoop-mapreduce-historyserver\"\n
],\n
\"STANDARD\": [\n \"hadoop-mapreduce-historyserver\"\n
]\n },\n \"MAPREDUCE2_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-mapreduce-client\",\n \"INSTALL\":
[\n \"hadoop-mapreduce-client\"\n ],\n \"PATCH\":
[\n \"hadoop-mapreduce-client\"\n ],\n
\"STANDARD\": [\n \"hadoop-client\"\n ]\n }\n
},\n \"OOZIE\": {\n \"OOZIE_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"oozie-client\",\n \"INSTALL\": [\n
\"oozie-client\"\n ],\n \"PATCH\": [\n
\"oozie-client\"\n ],\n \"STANDARD\": [\n
\"oozie-client\"\n ]\n },\n \"OOZIE_SERVER\": {\n
\"STACK-SELECT-PACKAGE\": \"oozie-server\",\n \"INSTALL\": [\n
\"oozie-client\",\n \"oozie-server\"\n ],\n
\"PATCH\": [\n \"oozie
-server\"\n ],\n \"STANDARD\": [\n
\"oozie-client\",\n \"oozie-server\"\n ]\n }\n
},\n \"PIG\": {\n \"PIG\": {\n \"STACK-SELECT-PACKAGE\":
\"pig-client\",\n \"INSTALL\": [\n \"pig-client\"\n
],\n \"PATCH\": [\n \"pig-client\"\n ],\n
\"STANDARD\": [\n \"hadoop-client\"\n ]\n }\n
},\n \"RANGER\": {\n \"RANGER_ADMIN\": {\n
\"STACK-SELECT-PACKAGE\": \"ranger-admin\",\n \"INSTALL\": [\n
\"ranger-admin\"\n ],\n \"PATCH\": [\n
\"ranger-admin\"\n ],\n \"STANDARD\": [\n
\"ranger-admin\"\n ]\n },\n \"RANGER_TAGSYNC\": {\n
\"STACK-SELECT-PACKAGE\": \"ranger-tagsync\",\n \"INSTALL\": [\n
\"ranger-tagsync\"\n ],\n \"PATCH\": [\n
\"ranger-tag
sync\"\n ],\n \"STANDARD\": [\n
\"ranger-tagsync\"\n ]\n },\n \"RANGER_USERSYNC\": {\n
\"STACK-SELECT-PACKAGE\": \"ranger-usersync\",\n \"INSTALL\":
[\n \"ranger-usersync\"\n ],\n \"PATCH\": [\n
\"ranger-usersync\"\n ],\n \"STANDARD\": [\n
\"ranger-usersync\"\n ]\n }\n },\n \"RANGER_KMS\":
{\n \"RANGER_KMS_SERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"ranger-kms\",\n \"INSTALL\": [\n \"ranger-kms\"\n
],\n \"PATCH\": [\n \"ranger-kms\"\n ],\n
\"STANDARD\": [\n \"ranger-kms\"\n ]\n }\n
},\n \"SLIDER\": {\n \"SLIDER\": {\n
\"STACK-SELECT-PACKAGE\": \"slider-client\",\n \"INSTALL\": [\n
\"slider-client\"\n ],\n \"PATCH\": [\n
\"slider-client\"\n
],\n \"STANDARD\": [\n \"slider-client\",\n
\"hadoop-client\"\n ]\n }\n },\n \"SPARK\": {\n
\"LIVY_CLIENT\": {\n \"STACK-SELECT-PACKAGE\":
\"livy2-client\",\n \"INSTALL\": [\n \"livy2-client\"\n
],\n \"PATCH\": [\n \"livy2-client\"\n ],\n
\"STANDARD\": [\n \"livy2-client\"\n ]\n },\n
\"LIVY_SERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"livy2-server\",\n \"INSTALL\": [\n \"livy2-server\"\n
],\n \"PATCH\": [\n \"livy2-server\"\n ],\n
\"STANDARD\": [\n \"livy2-server\"\n ]\n },\n
\"SPARK_CLIENT\": {\n \"STACK-SELECT-PACKAGE\":
\"spark2-client\",\n \"INSTALL\": [\n \"spark2-client\"\n
],\n \"PATCH\": [\n \"spark2-client\"\n
],\n
\"STANDARD\": [\n \"spark2-client\"\n ]\n },\n
\"SPARK_JOBHISTORYSERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"spark2-historyserver\",\n \"INSTALL\": [\n
\"spark2-historyserver\"\n ],\n \"PATCH\": [\n
\"spark2-historyserver\"\n ],\n \"STANDARD\": [\n
\"spark2-historyserver\"\n ]\n },\n
\"SPARK_THRIFTSERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"spark2-thriftserver\",\n \"INSTALL\": [\n
\"spark2-thriftserver\"\n ],\n \"PATCH\": [\n
\"spark2-thriftserver\"\n ],\n \"STANDARD\": [\n
\"spark2-thriftserver\"\n ]\n }\n },\n \"SQOOP\": {\n
\"SQOOP\": {\n \"STACK-SELECT-PACKAGE\": \"sqoop-client\",\n
\"INSTALL\": [\n \"sqoop-client\"\n ],\n
\"PATCH\": [\n \"sqoop-client\"\n
],\n \"STANDARD\": [\n \"sqoop-client\"\n ]\n
}\n },\n \"STORM\": {\n \"NIMBUS\": {\n
\"STACK-SELECT-PACKAGE\": \"storm-nimbus\",\n \"INSTALL\": [\n
\"storm-client\",\n \"storm-nimbus\"\n ],\n
\"PATCH\": [\n \"storm-client\",\n \"storm-nimbus\"\n
],\n \"STANDARD\": [\n \"storm-client\",\n
\"storm-nimbus\"\n ]\n },\n \"SUPERVISOR\": {\n
\"STACK-SELECT-PACKAGE\": \"storm-supervisor\",\n \"INSTALL\": [\n
\"storm-client\",\n \"storm-supervisor\"\n ],\n
\"PATCH\": [\n \"storm-client\",\n
\"storm-supervisor\"\n ],\n \"STANDARD\": [\n
\"storm-client\",\n \"storm-supervisor\"\n ]\n },\n
\"DRPC_SERVER\": {\n \"STACK-SELECT-PACKAGE\": \"storm-client\"
,\n \"INSTALL\": [\n \"storm-client\"\n ],\n
\"PATCH\": [\n \"storm-client\"\n ],\n
\"STANDARD\": [\n \"storm-client\"\n ]\n },\n
\"STORM_UI_SERVER\": {\n \"STACK-SELECT-PACKAGE\": \"storm-client\",\n
\"INSTALL\": [\n \"storm-client\"\n ],\n
\"PATCH\": [\n \"storm-client\"\n ],\n
\"STANDARD\": [\n \"storm-client\"\n ]\n }\n
},\n \"TEZ\": {\n \"TEZ_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"tez-client\",\n \"INSTALL\": [\n
\"tez-client\"\n ],\n \"PATCH\": [\n
\"tez-client\"\n ],\n \"STANDARD\": [\n
\"hadoop-client\"\n ]\n }\n },\n \"YARN\": {\n
\"APP_TIMELINE_SERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-yarn-timelineserver\",\n
\"INSTALL\": [\n \"hadoop-yarn-timelineserver\"\n ],\n
\"PATCH\": [\n \"hadoop-yarn-timelineserver\"\n ],\n
\"STANDARD\": [\n \"hadoop-yarn-timelineserver\"\n
]\n },\n \"NODEMANAGER\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-yarn-nodemanager\",\n \"INSTALL\": [\n
\"hadoop-yarn-nodemanager\"\n ],\n \"PATCH\": [\n
\"hadoop-yarn-nodemanager\"\n ],\n \"STANDARD\": [\n
\"hadoop-yarn-nodemanager\"\n ]\n },\n
\"RESOURCEMANAGER\": {\n \"STACK-SELECT-PACKAGE\":
\"hadoop-yarn-resourcemanager\",\n \"INSTALL\": [\n
\"hadoop-yarn-resourcemanager\"\n ],\n \"PATCH\": [\n
\"hadoop-yarn-resourcemanager\"\n ],\n \"STANDARD\": [\n
\"hadoop-yarn-resourcemanager\"\n ]\n },\n
\"YARN_CLIENT\": {\n
\"STACK-SELECT-PACKAGE\": \"hadoop-yarn-client\",\n
\"INSTALL\": [\n \"hadoop-yarn-client\"\n ],\n
\"PATCH\": [\n \"hadoop-yarn-client\"\n ],\n
\"STANDARD\": [\n \"hadoop-client\"\n ]\n }\n
},\n \"ZEPPELIN\": {\n \"ZEPPELIN_MASTER\": {\n
\"STACK-SELECT-PACKAGE\": \"zeppelin-server\",\n \"INSTALL\": [\n
\"zeppelin-server\"\n ],\n \"PATCH\": [\n
\"zeppelin-server\"\n ],\n \"STANDARD\": [\n
\"zeppelin-server\"\n ]\n }\n },\n \"ZOOKEEPER\": {\n
\"ZOOKEEPER_CLIENT\": {\n \"STACK-SELECT-PACKAGE\":
\"zookeeper-client\",\n \"INSTALL\": [\n
\"zookeeper-client\"\n ],\n \"PATCH\": [\n
\"zookeeper-client\"\n ],\n \"STANDARD\": [\n
\"zookeeper-client\"\n ]\n },
\n \"ZOOKEEPER_SERVER\": {\n \"STACK-SELECT-PACKAGE\":
\"zookeeper-server\",\n \"INSTALL\": [\n
\"zookeeper-server\"\n ],\n \"PATCH\": [\n
\"zookeeper-server\"\n ],\n \"STANDARD\": [\n
\"zookeeper-server\"\n ]\n }\n }\n },\n
\"conf-select\": {\n \"accumulo\": [\n {\n \"conf_dir\":
\"/etc/accumulo/conf\",\n \"current_dir\":
\"{0}/current/accumulo-client/conf\"\n }\n ],\n \"atlas\": [\n
{\n \"conf_dir\": \"/etc/atlas/conf\",\n
\"current_dir\": \"{0}/current/atlas-client/conf\"\n }\n ],\n
\"druid\": [\n {\n \"conf_dir\": \"/etc/druid/conf\",\n
\"current_dir\": \"{0}/current/druid-overlord/conf\"\n }\n ],\n
\"falcon\": [\n {\n \"conf_dir\": \"/etc/falcon/conf\",\n
\"current_dir\": \"{0}/current/falcon-client/conf\"
\n }\n ],\n \"flume\": [\n {\n \"conf_dir\":
\"/etc/flume/conf\",\n \"current_dir\":
\"{0}/current/flume-server/conf\"\n }\n ],\n \"hadoop\": [\n
{\n \"conf_dir\": \"/etc/hadoop/conf\",\n
\"current_dir\": \"{0}/current/hadoop-client/conf\"\n }\n ],\n
\"hbase\": [\n {\n \"conf_dir\": \"/etc/hbase/conf\",\n
\"current_dir\": \"{0}/current/hbase-client/conf\"\n }\n ],\n
\"hive\": [\n {\n \"conf_dir\": \"/etc/hive/conf\",\n
\"current_dir\": \"{0}/current/hive-client/conf\"\n }\n ],\n
\"hive2\": [\n {\n \"conf_dir\": \"/etc/hive2/conf\",\n
\"current_dir\": \"{0}/current/hive-server2-hive2/conf\"\n }\n
],\n \"hive-hcatalog\": [\n {\n \"conf_dir\":
\"/etc/hive-webhcat/conf\",\n \"prefix\": \"/etc/hive-webhcat\",\n
\"current_dir\": \"{
0}/current/hive-webhcat/etc/webhcat\"\n },\n {\n
\"conf_dir\": \"/etc/hive-hcatalog/conf\",\n \"prefix\":
\"/etc/hive-hcatalog\",\n \"current_dir\":
\"{0}/current/hive-webhcat/etc/hcatalog\"\n }\n ],\n
\"kafka\": [\n {\n \"conf_dir\": \"/etc/kafka/conf\",\n
\"current_dir\": \"{0}/current/kafka-broker/conf\"\n }\n ],\n
\"knox\": [\n {\n \"conf_dir\": \"/etc/knox/conf\",\n
\"current_dir\": \"{0}/current/knox-server/conf\"\n }\n ],\n
\"mahout\": [\n {\n \"conf_dir\": \"/etc/mahout/conf\",\n
\"current_dir\": \"{0}/current/mahout-client/conf\"\n }\n ],\n
\"nifi\": [\n {\n \"conf_dir\": \"/etc/nifi/conf\",\n
\"current_dir\": \"{0}/current/nifi/conf\"\n }\n ],\n
\"oozie\": [\n {\n \"conf_dir\": \"/etc/oozie/conf\",\n
\"current_dir\": \"{0}/cur
rent/oozie-client/conf\"\n }\n ],\n \"phoenix\": [\n
{\n \"conf_dir\": \"/etc/phoenix/conf\",\n \"current_dir\":
\"{0}/current/phoenix-client/conf\"\n }\n ],\n \"pig\": [\n
{\n \"conf_dir\": \"/etc/pig/conf\",\n \"current_dir\":
\"{0}/current/pig-client/conf\"\n }\n ],\n \"ranger-admin\":
[\n {\n \"conf_dir\": \"/etc/ranger/admin/conf\",\n
\"current_dir\": \"{0}/current/ranger-admin/conf\"\n }\n ],\n
\"ranger-kms\": [\n {\n \"conf_dir\":
\"/etc/ranger/kms/conf\",\n \"current_dir\":
\"{0}/current/ranger-kms/conf\"\n }\n ],\n \"ranger-tagsync\":
[\n {\n \"conf_dir\": \"/etc/ranger/tagsync/conf\",\n
\"current_dir\": \"{0}/current/ranger-tagsync/conf\"\n }\n ],\n
\"ranger-usersync\": [\n {\n \"conf_dir\":
\"/etc/ranger/usersync/conf\",\n \
"current_dir\": \"{0}/current/ranger-usersync/conf\"\n }\n ],\n
\"slider\": [\n {\n \"conf_dir\": \"/etc/slider/conf\",\n
\"current_dir\": \"{0}/current/slider-client/conf\"\n }\n ],\n
\"spark\": [\n {\n \"conf_dir\": \"/etc/spark/conf\",\n
\"current_dir\": \"{0}/current/spark-client/conf\"\n }\n ],\n
\"spark2\": [\n {\n \"conf_dir\": \"/etc/spark2/conf\",\n
\"current_dir\": \"{0}/current/spark2-client/conf\"\n }\n
],\n \"sqoop\": [\n {\n \"conf_dir\":
\"/etc/sqoop/conf\",\n \"current_dir\":
\"{0}/current/sqoop-client/conf\"\n }\n ],\n \"storm\": [\n
{\n \"conf_dir\": \"/etc/storm/conf\",\n \"current_dir\":
\"{0}/current/storm-client/conf\"\n }\n ],\n
\"storm-slider-client\": [\n {\n \"conf_dir\":
\"/etc/storm-slider-client/conf\",\n \
"current_dir\": \"{0}/current/storm-slider-client/conf\"\n }\n
],\n \"superset\": [\n {\n \"conf_dir\":
\"/etc/druid-superset/conf\",\n \"current_dir\":
\"{0}/current/druid-superset/conf\"\n }\n ],\n \"tez\": [\n
{\n \"conf_dir\": \"/etc/tez/conf\",\n \"current_dir\":
\"{0}/current/tez-client/conf\"\n }\n ],\n \"zeppelin\": [\n
{\n \"conf_dir\": \"/etc/zeppelin/conf\",\n
\"current_dir\": \"{0}/current/zeppelin-server/conf\"\n }\n ],\n
\"zookeeper\": [\n {\n \"conf_dir\":
\"/etc/zookeeper/conf\",\n \"current_dir\":
\"{0}/current/zookeeper-client/conf\"\n }\n ]\n }\n }\n}\n",
"stack_tools": "{\n \"HDP\": {\n \"stack_selector\": [\n
\"hdp-select\",\n \"/usr/bin/hdp-select\",\n \"hdp-select\"\n ],\n
\"conf_selector\": [\n \"conf-select\",\n
\"/usr/bin/conf-select\",\n \"conf-select\"\n ]\n }\n}"
},
...
...
}
Thanks,
Swapan Shridhar