# ApiClusterTemplateInstantiator Data Model

Details of cluster template

Properties
name | data type | description
--- | --- | ---
clusterName | string | Cluster name
hosts | array of ApiClusterTemplateHostInfo | All the hosts that are part of that cluster
variables | array of ApiClusterTemplateVariable | All the variables the are referred by the cluster template
roleConfigGroups | array of ApiClusterTemplateRoleConfigGroupInfo | All the role config group informations for non-base RCGs.
clusterSpec | ApiClusterTemplateClusterSpec | Cluster specification.
keepHostTemplates | boolean | Keep the hosts templates from cluster template.
lenient | boolean | Allow setting service parameters that may not currently be supported by the current CM version but will be in the future.
enableKerberos | ApiConfigureForKerberosArguments | Enable kerberos authentication

Example

    {
      "clusterName" : "...",
      "hosts" : [ {
        "hostName" : "...",
        "hostNameRange" : "...",
        "rackId" : "...",
        "hostTemplateRefName" : "...",
        "roleRefNames" : [ "...", "..." ]
      }, {
        "hostName" : "...",
        "hostNameRange" : "...",
        "rackId" : "...",
        "hostTemplateRefName" : "...",
        "roleRefNames" : [ "...", "..." ]
      } ],
      "variables" : [ {
        "name" : "...",
        "value" : "..."
      }, {
        "name" : "...",
        "value" : "..."
      } ],
      "roleConfigGroups" : [ {
        "rcgRefName" : "...",
        "name" : "..."
      }, {
        "rcgRefName" : "...",
        "name" : "..."
      } ],
      "clusterSpec" : {
        "dataContextRefs" : [ {
          "name" : "..."
        }, {
          "name" : "..."
        } ]
      },
      "keepHostTemplates" : true,
      "lenient" : true,
      "enableKerberos" : {
        "datanodeTransceiverPort" : 12345,
        "datanodeWebPort" : 12345
      }
    }