[
    {
        "desc": "Whether to suppress configuration warnings produced by the Gateway Count Validator configuration validator.",
        "display_name": "Suppress Configuration Validator: Gateway Count Validator",
        "name": "service_config_suppression_gateway_count_validator",
        "value": "false"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Spark Service Environment Advanced Configuration Snippet (Safety Valve) parameter.",
        "display_name": "Suppress Parameter Validation: Spark Service Environment Advanced Configuration Snippet (Safety Valve)",
        "name": "service_config_suppression_spark_on_yarn_service_env_safety_valve",
        "value": "false"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Service Monitor Derived Configs Advanced Configuration Snippet (Safety Valve) parameter.",
        "display_name": "Suppress Parameter Validation: Service Monitor Derived Configs Advanced Configuration Snippet (Safety Valve)",
        "name": "service_config_suppression_smon_derived_configs_safety_valve",
        "value": "false"
    },
    {
        "desc": "The location of the Spark JAR in HDFS. If left blank, Cloudera Manager will use the Spark JAR installed on the cluster nodes.",
        "display_name": "Spark JAR Location (HDFS)",
        "name": "spark_jar_hdfs_path",
        "value": ""
    },
    {
        "desc": "When set, Cloudera Manager will send alerts when this entity's configuration changes.",
        "display_name": "Enable Configuration Change Alerts",
        "name": "enable_config_alerts",
        "value": "false"
    },
    {
        "desc": "For advanced use only, a list of derived configuration properties that will be used by the Service Monitor instead of the default ones.",
        "display_name": "Service Monitor Derived Configs Advanced Configuration Snippet (Safety Valve)",
        "name": "smon_derived_configs_safety_valve",
        "value": null
    },
    {
        "desc": "<p>The configured triggers for this service. This is a JSON formatted list of triggers. These triggers are evaluated as part as the health system. Every trigger expression is parsed, and if the trigger condition is met, the list of actions provided in the trigger expression is executed.</p><p>Each trigger has the following fields:</p><ul><li><code>triggerName</code> <strong>(mandatory)</strong> - The name of the trigger. This value must be unique for the specific service. </li><li><code>triggerExpression</code> <strong>(mandatory)</strong> - A tsquery expression representing the trigger. </li><li><code>streamThreshold</code> <strong>(optional)</strong> - The maximum number of streams that can satisfy a condition of a trigger before the condition fires. By default set to 0, and any stream returned causes the condition to fire. </li><li><code>enabled</code> <strong> (optional)</strong> - By default set to 'true'. If set to 'false', the trigger is not evaluated.</li><li><code>expressionEditorConfig</code> <strong> (optional)</strong> - Metadata for the trigger editor. If present, the trigger should only be edited from the Edit Trigger page; editing the trigger here can lead to inconsistencies.</li></ul></p><p>For example, the followig JSON formatted trigger fires if there are more than 10 DataNodes with more than 500 file descriptors opened:</p><p><pre>[{\"triggerName\": \"sample-trigger\",\n  \"triggerExpression\": \"IF (SELECT fd_open WHERE roleType = DataNode and last(fd_open) > 500) DO health:bad\",\n  \"streamThreshold\": 10, \"enabled\": \"true\"}]</pre></p><p>See the trigger rules documentation for more details on how to write triggers using tsquery.</p><p>The JSON format is evolving and may change and, as a result, backward compatibility is not guaranteed between releases.</p>",
        "display_name": "Service Triggers",
        "name": "service_triggers",
        "value": "[]"
    },
    {
        "desc": "The user that this service's processes should run as.",
        "display_name": "System User",
        "name": "process_username",
        "value": "spark"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the System User parameter.",
        "display_name": "Suppress Parameter Validation: System User",
        "name": "service_config_suppression_process_username",
        "value": "false"
    },
    {
        "desc": "Kerberos principal short name used by all roles of this service.",
        "display_name": "Kerberos Principal",
        "name": "kerberos_princ_name",
        "value": "spark"
    },
    {
        "desc": "For advanced use only, key-value pairs (one on each line) to be inserted into a role's environment. Applies to configurations of all roles in this service except client configuration.",
        "display_name": "Spark Service Environment Advanced Configuration Snippet (Safety Valve)",
        "name": "SPARK_ON_YARN_service_env_safety_valve",
        "value": null
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Spark History Location (HDFS) parameter.",
        "display_name": "Suppress Parameter Validation: Spark History Location (HDFS)",
        "name": "service_config_suppression_spark_history_log_dir",
        "value": "false"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the History Server Count Validator configuration validator.",
        "display_name": "Suppress Configuration Validator: History Server Count Validator",
        "name": "service_config_suppression_spark_yarn_history_server_count_validator",
        "value": "false"
    },
    {
        "desc": "Name of the YARN (MR2 Included) service that this Spark service instance depends on",
        "display_name": "YARN (MR2 Included) Service",
        "name": "yarn_service",
        "value": null
    },
    {
        "desc": "The location of Spark application history logs in HDFS. Changing this value will not move existing logs to the new location.",
        "display_name": "Spark History Location (HDFS)",
        "name": "spark_history_log_dir",
        "value": "/user/spark/applicationHistory"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Kerberos Principal parameter.",
        "display_name": "Suppress Parameter Validation: Kerberos Principal",
        "name": "service_config_suppression_kerberos_princ_name",
        "value": "false"
    },
    {
        "desc": "The port the Spark Shuffle Service listens for fetch requests.",
        "display_name": "Spark Shuffle Service Port",
        "name": "spark_shuffle_service_port",
        "value": "7337"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Spark JAR Location (HDFS) parameter.",
        "display_name": "Suppress Parameter Validation: Spark JAR Location (HDFS)",
        "name": "service_config_suppression_spark_jar_hdfs_path",
        "value": "false"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Spark Service Advanced Configuration Snippet (Safety Valve) for spark-conf/spark-env.sh parameter.",
        "display_name": "Suppress Parameter Validation: Spark Service Advanced Configuration Snippet (Safety Valve) for spark-conf/spark-env.sh",
        "name": "service_config_suppression_spark-conf/spark-env.sh_service_safety_valve",
        "value": "false"
    },
    {
        "desc": "The group that this service's processes should run as.",
        "display_name": "System Group",
        "name": "process_groupname",
        "value": "spark"
    },
    {
        "desc": "Enable whether the Spark communication protocols do authentication using a shared secret.",
        "display_name": "Spark Authentication",
        "name": "spark_authenticate",
        "value": "false"
    },
    {
        "desc": "When set, Cloudera Manager will send alerts when the health of this service reaches the threshold specified by the EventServer setting eventserver_health_events_alert_threshold",
        "display_name": "Enable Service Level Health Alerts",
        "name": "enable_alerts",
        "value": "true"
    },
    {
        "desc": "For advanced use only, a string to be inserted into <strong>spark-conf/spark-env.sh</strong>. Applies to configurations of all roles in this service except client configuration.",
        "display_name": "Spark Service Advanced Configuration Snippet (Safety Valve) for spark-conf/spark-env.sh",
        "name": "spark-conf/spark-env.sh_service_safety_valve",
        "value": null
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the System Group parameter.",
        "display_name": "Suppress Parameter Validation: System Group",
        "name": "service_config_suppression_process_groupname",
        "value": "false"
    },
    {
        "desc": "Whether to suppress configuration warnings produced by the built-in parameter validation for the Service Triggers parameter.",
        "display_name": "Suppress Parameter Validation: Service Triggers",
        "name": "service_config_suppression_service_triggers",
        "value": "false"
    }
]