Amazon EMR
Amazon EMR Release Guide

Creating a Cluster with Phoenix

You install Phoenix by choosing the application when you create a cluster in the console or using the AWS CLI. The following procedures and examples show how to create a cluster with Phoenix and HBase. For more information about creating clusters using the console, including Advanced Options see Plan and Configure Clusters in the Amazon EMR Management Guide.

To launch a cluster with Phoenix installed using Quick Options for creating a cluster in the console

  1. Open the Amazon EMR console at

  2. Choose Create cluster to use Quick Create.

  3. For Software Configuration, choose the most recent release appropriate for your application. Phoenix appears as an option only when Amazon Release Version emr-4.7.0 or later is selected.

  4. For Applications, choose the second option, HBase: HBase ver with Ganglia ver, Hadoop ver, Hive ver, Hue ver, Phoenix ver, and ZooKeeper ver.

  5. Select other options as necessary and then choose Create cluster.


Linux line continuation characters (\) are included for readability. They can be removed or used in Linux commands. For Windows, remove them or replace with a caret (^).

The following example launches a cluster with Phoenix installed using default configuration settings.

To launch a cluster with Phoenix and HBase using the AWS CLI

  • Create the cluster with the following command:

    aws emr create-cluster --name "Cluster with Phoenix" --release-label emr-5.14.0 \ --applications Name=Phoenix Name=HBase --ec2-attributes KeyName=myKey \ --instance-type m4.large --instance-count 3 --use-default-roles

Customizing Phoenix Configurations When Creating a Cluster

When creating a cluster, you configure Phoenix by setting values in hbase-site.xml using the hbase-site configuration classification.

For more information, see Configuration and Tuning in the Phoenix documentation.

The following example demonstrates using a JSON file stored in Amazon S3 to specify the value of false for the phoenix.schema.dropMetaData property. Multiple properties can be specified for a single classification. For more information, see Configuring Applications. The create cluster command then references the JSON file as the --configurations parameter.

The contents of the JSON file saved to /mybucket/myfolder/myconfig.json is the following.

[ { "Classification": "hbase-site", "Properties": { "phoenix.schema.dropMetaData": "false" } } ]

The create cluster command that references the JSON file is shown in the following example.

aws emr create-cluster --release-label emr-5.14.0 --applications Name=Phoenix \ Name=HBase --instance-type m4.large --instance-count 2 \ --configurations