In my life as a technical marketeer for MapR I have configured more clusters than you can shake a stick at. So, imagine my excitement when I heard that MapR installations can be automated with a new capability called, “MapR Stanzas”.
MapR Stanzas allow you to automate the MapR installation process by specifying in a YAML config file all the options that you would have otherwise specified in the MapR installation web UI. You can read more about MapR stanzas at http://maprdocs.mapr.com/home/AdvancedInstallation/Stanzas/RunningSilentInstaller.html.
Here’s how I installed MapR in a test environment using MapR stanzas:
Download the MapR installer
wget http://package.mapr.com/releases/installer/mapr-setup.sh -P /tmp
Run the MapR installer
sudo bash /tmp/mapr-setup.sh
When it completes, it will advise you to complete the installation through a webui (e.g. https://<hostname>:9443
), but don’t do that. Instead, complete the installation with stanzas, like this:
/opt/mapr/installer/bin/mapr-installer-cli install -u mapr:q7wp4XaAQpvdn@localhost -nv -t /opt/mapr/installer/examples/ian01.yaml
I’ve attached my YAML to the end of this post for your reference.
What if you don’t want to write the stanza YAML file by hand? Then just install via the webui (e.g. https://<hostname>:9443
), then export a stanza file with the export command (shown below). Then next time you install you should be able to use that YAML file. For example, here’s how I captured the configurations I specified for our Tech Marketing MapR cluster:
/opt/mapr/installer/bin/mapr-installer-cli export -u mapr:q7wp4XaAQpvdn@localhost -n --file /opt/mapr/installer/examples/ian01.yaml
That file will not contain your ssh password, so you’ll want to add “ssh_password” under the config section, like this:
ssh_id: mapr
ssh_password: q7wp4XaAQpvdn
ssh_method: PASSWORD
ssh_port: 22
Then validate the config file like this:
/opt/mapr/installer/bin/mapr-installer-cli check -u mapr:q7wp4XaAQpvdn@localhost -n -t /opt/mapr/installer/examples/ian01.yaml
If the check succeeds, you will see no output and a return status of 0.
For your reference I’ve included the YAML file that I exported from my test cluster below.
environment :
mapr_core_version : 5.2.1
config :
admin_id : mapr
cluster_admin_create : false
cluster_admin_gid : 1000
cluster_admin_group : mapr
cluster_admin_id : mapr
cluster_admin_uid : 1000
cluster_name : my.cluster.com
data :
diskStripeDefault : 3
licenseType : M3
licenseValidation : INSTALL
process_type : install
showAdvancedServiceConfig : false
showAdvancedServiceSelection : false
showLicenseValidation : true
showLogs : false
template : template-05-converged
dial_home_id : ' 843699986'
disk_format : true
disk_stripe : 3
disks :
- /dev/sdc
elasticsearch_path : /opt/mapr/es_db
environment : azure
hosts :
- 10.1.1.4
- 10.1.1.5
- 10.1.1.6
install_dir : /opt/mapr/installer
installer_version : 1.5.201705021610
license_accepted : true
license_modules :
- DATABASE
- HADOOP
- STREAMS
license_type : M3
links :
self : https://localhost:9443/api/config
services : https://localhost:9443/api/config/services
mapr_id : ' 64468'
mapr_name : jklfdsalkj@yahoo.com
mep_version : ' 3.0'
no_internet : false
os_version : ubuntu_14.04
repo_core_url : http://package.mapr.com/releases
repo_eco_url : http://package.mapr.com/releases
services :
mapr-asynchbase :
enabled : true
version : 1.7.0
mapr-cldb :
enabled : true
version : 5.2.1
mapr-collectd :
enabled : true
version : 5.7.1
mapr-core :
enabled : true
version : 5.2.1
mapr-drill :
enabled : true
version : ' 1.10'
mapr-elasticsearch :
enabled : true
version : 2.3.3
mapr-fileserver :
enabled : true
version : 5.2.1
mapr-fluentd :
enabled : true
version : 0.14.00
mapr-grafana :
enabled : true
version : 4.1.2
mapr-hbase :
enabled : true
version : ' 1.1'
mapr-hbase-common :
enabled : true
version : ' 1.1'
mapr-hbase-rest :
enabled : true
version : ' 1.1'
mapr-hbasethrift :
enabled : true
version : ' 1.1'
mapr-historyserver :
enabled : true
version : 5.2.1
mapr-hive :
enabled : true
version : ' 2.1'
mapr-hive-client :
enabled : true
version : ' 2.1'
mapr-hivemetastore :
database :
create : false
type : DEFAULT
enabled : true
version : ' 2.1'
mapr-hiveserver2 :
enabled : true
version : ' 2.1'
mapr-hivewebhcat :
enabled : true
version : ' 2.1'
mapr-httpfs :
enabled : true
version : ' 1.0'
mapr-hue :
database :
create : false
type : DEFAULT
enabled : true
version : 3.12.0
mapr-kafka :
enabled : true
version : 0.9.0
mapr-kibana :
enabled : true
version : 4.5.4
mapr-librdkafka :
enabled : true
version : 0.9.0
mapr-nfs :
enabled : true
version : 5.2.1
mapr-nodemanager :
enabled : true
version : 5.2.1
mapr-oozie :
database :
create : false
type : DEFAULT
enabled : true
version : 4.3.0
mapr-opentsdb :
enabled : true
version : 2.3.0
mapr-resourcemanager :
enabled : true
version : 5.2.1
mapr-spark :
enabled : true
version : 2.1.0
mapr-spark-client :
enabled : true
version : 2.1.0
mapr-spark-historyserver :
enabled : true
version : 2.1.0
mapr-streams-clients :
enabled : true
version : 0.9.0
mapr-webserver :
enabled : true
version : 5.2.1
mapr-yarn :
enabled : true
version : 5.2.1
mapr-zookeeper :
enabled : true
version : 5.2.1
services_version : 1.5.201705021610
ssh_id : mapr
ssh_method : PASSWORD
ssh_port : 22
state : INIT
hosts :
- completion : 100
disks :
/dev/fd0 :
selected : false
size : 0 Bytes
/dev/sda1 :
selected : false
size : 29 GB
unavailable : Disk mounted at /
/dev/sdb1 :
selected : false
size : 28 GB
unavailable : Disk mounted at /mnt
/dev/sdc :
selected : true
size : 1000 GB
/dev/sr0 :
selected : false
size : 4 MB
id : 10.1.1.5
prereqs :
CPU :
required : x86_64
state : VALID
value : x86_64
Cluster Admin :
required : present
state : VALID
value : mapr
Disks :
required : /dev/fd0, /dev/sr0, /dev/sdc
state : VALID
value : /dev/sdc
Distribution :
required : SLES,Suse,CentOS,RedHat,Ubuntu
state : VALID
value : Ubuntu 14.04
Free / :
required : 10 GB
state : VALID
value : 27.5 GB
Free /opt :
required : 128 GB
state : WARN
value : 27.5 GB
Free /tmp :
required : 10 GB
state : VALID
value : 27.5 GB
GID :
required : ' 1000'
state : VALID
value : ' 1000'
Hadoop :
required : absent
state : VALID
value : absent
Home Dir :
required : present
state : VALID
value : /home/mapr
Hostname :
required : nodeb
state : VALID
value : nodeb
Internet :
required : present
state : VALID
value : present
Owner /dev/shm :
required : uid 0
state : VALID
value : uid 0
Owner /tmp :
required : uid 0
state : VALID
value : uid 0
Perm /dev/shm :
required : ' 1023'
state : VALID
value : ' 01777'
Perm /tmp :
required : ' 1023'
state : VALID
value : ' 01777'
RAM :
required : 8 GB
state : VALID
value : 14.0 GB
SWAP :
required : 1.4 GB
state : VALID
value : 2.0 GB
UID :
required : ' 1000'
state : VALID
value : ' 1000'
Yarn :
required : absent
state : VALID
value : absent
services : []
state : CHECK_WARN
status : Verified with warnings
valid : false
- completion : 100
disks :
/dev/fd0 :
selected : false
size : 0 Bytes
/dev/sda1 :
selected : false
size : 29 GB
unavailable : Disk mounted at /
/dev/sdb1 :
selected : false
size : 28 GB
unavailable : Disk mounted at /mnt
/dev/sdc :
selected : true
size : 1000 GB
/dev/sr0 :
selected : false
size : 4 MB
id : 10.1.1.4
prereqs :
CPU :
required : x86_64
state : VALID
value : x86_64
Cluster Admin :
required : present
state : VALID
value : mapr
Disks :
required : /dev/fd0, /dev/sr0, /dev/sdc
state : VALID
value : /dev/sdc
Distribution :
required : SLES,Suse,CentOS,RedHat,Ubuntu
state : VALID
value : Ubuntu 14.04
Free / :
required : 10 GB
state : VALID
value : 26.8 GB
Free /opt/mapr :
required : 128 GB
state : WARN
value : 26.8 GB
Free /tmp :
required : 10 GB
state : VALID
value : 26.8 GB
GID :
required : ' 1000'
state : VALID
value : ' 1000'
Hadoop :
required : absent
state : VALID
value : absent
Home Dir :
required : present
state : VALID
value : /home/mapr
Hostname :
required : nodea
state : VALID
value : nodea
Internet :
required : present
state : VALID
value : present
Owner /dev/shm :
required : uid 0
state : VALID
value : uid 0
Owner /tmp :
required : uid 0
state : VALID
value : uid 0
Perm /dev/shm :
required : ' 1023'
state : VALID
value : ' 01777'
Perm /tmp :
required : ' 1023'
state : VALID
value : ' 01777'
RAM :
required : 8 GB
state : VALID
value : 14.0 GB
SWAP :
required : 1.4 GB
state : VALID
value : 2.0 GB
UID :
required : ' 1000'
state : VALID
value : ' 1000'
Yarn :
required : absent
state : VALID
value : absent
services : []
state : CHECK_WARN
status : Verified with warnings
valid : false
- completion : 100
disks :
/dev/fd0 :
selected : false
size : 0 Bytes
/dev/sda1 :
selected : false
size : 29 GB
unavailable : Disk mounted at /
/dev/sdb1 :
selected : false
size : 28 GB
unavailable : Disk mounted at /mnt
/dev/sdc :
selected : true
size : 1000 GB
/dev/sr0 :
selected : false
size : 4 MB
id : 10.1.1.6
prereqs :
CPU :
required : x86_64
state : VALID
value : x86_64
Cluster Admin :
required : present
state : VALID
value : mapr
Disks :
required : /dev/fd0, /dev/sr0, /dev/sdc
state : VALID
value : /dev/sdc
Distribution :
required : SLES,Suse,CentOS,RedHat,Ubuntu
state : VALID
value : Ubuntu 14.04
Free / :
required : 10 GB
state : VALID
value : 27.4 GB
Free /opt :
required : 128 GB
state : WARN
value : 27.4 GB
Free /tmp :
required : 10 GB
state : VALID
value : 27.4 GB
GID :
required : ' 1000'
state : VALID
value : ' 1000'
Hadoop :
required : absent
state : VALID
value : absent
Home Dir :
required : present
state : VALID
value : /home/mapr
Hostname :
required : nodec
state : VALID
value : nodec
Internet :
required : present
state : VALID
value : present
Owner /dev/shm :
required : uid 0
state : VALID
value : uid 0
Owner /tmp :
required : uid 0
state : VALID
value : uid 0
Perm /dev/shm :
required : ' 1023'
state : VALID
value : ' 01777'
Perm /tmp :
required : ' 1023'
state : VALID
value : ' 01777'
RAM :
required : 8 GB
state : VALID
value : 14.0 GB
SWAP :
required : 1.4 GB
state : VALID
value : 2.0 GB
UID :
required : ' 1000'
state : VALID
value : ' 1000'
Yarn :
required : absent
state : VALID
value : absent
services : []
state : CHECK_WARN
status : Verified with warnings
valid : false
groups : []