cloudera
Version information
This version is compatible with:
- Puppet Enterprise 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
- Puppet >=2.7.20 <5.0.0
- , , , , ,
Start using this module
Add this module to your Puppetfile:
mod 'razorsedge-cloudera', '3.1.0'
Learn more about managing modules with a PuppetfileDocumentation
Cloudera Manager
Table of Contents
- Overview
- Module Description - What the module does and why it is useful
- Setup - The basics of getting started with this module
- Usage - Configuration options and additional functionality
- Reference - An under-the-hood peek at what the module is doing and how
- Limitations - OS compatibility, etc.
- Development - Guide for contributing to the module
Overview
This Puppet module manages the installation and configuration of Cloudera Manager, a management application for Apache Hadoop, on the Cloudera official supported operating systems.
Module Description
This module manages the installation of Cloudera Manager, a management application for Apache Hadoop. It follows the standards written in the Cloudera Manager Installation Guide "Installation Path B - Installation Using Your Own Method". By default, this module assumes that parcels will be used to deploy Cloudera's Distribution of Apache Hadoop (CDH) and related software. If parcels are not desired, this module can also manage the installation of CDH including HDFS & MapReduce, Impala, Sentry, Search, Spark, HBase, and LZO compression. The module can also configure TLS security of the Cloudera Manager communications channels, and set up Cloudera Manager to use an alternative to the embedded database.
This module is certified on Cloudera 5.
Setup
What this module affects
- Installs the Cloudera software repository for CM.
- Installs Oracle Java Development Kit (JDK) 7.
- Optionally installs the Oracle Java Cryptography Extensions.
- Installs the CM agent.
- Configures the CM agent to talk to a CM server.
- Starts the CM agent.
- Sets the kernel vm.swappiness to 0.
- Disables the kernel transparent hugepage compaction.
- Separately installs the CM server and database connectivity (by default to the embedded database server).
- Separately starts the CM server.
- Optionally installs the Cloudera software repository for CDH.
- Optionally installs most components of CDH 5 including HBase, Impala, Search, and Spark.
- Optionally installs GPL Extras (LZO).
Requirements
Please read through the Cloudera Manager Requirements document in order to discover all of the entities (ie operating systems, databases, and browsers) supported by Cloudera Manager. Pay close attention to the Resource Requirements and Networking and Security Requirements sections. There are a number of requirements that this module cannot easily configure for your environment (ie No blocking by Security-Enhanced Linux (SELinux)) and which you must ensure are correct on your platform.
Beginning with this module
Most nodes that will be a part of a Hadoop cluster will use this declaration.
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
}
The node that will be the CM server (ie smhost.localdomain) will use this declaration. This should only be included on one node of your environment. By default it will install the embedded PostgreSQL database on the same node. With the correct parameters, it can instead connect to local or remote MySQL, PostgreSQL, or Oracle RDBMS databases.
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
install_cmserver => true,
}
Upgrading
Deprecation Warning
- The default for
use_parcels
will switch totrue
before the 1.0.0 release.
This:
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
}
would become this:
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
use_parcels => false,
}
-
The puppetlabs/mysql dependency will update to version 2 before the 1.0.0 release. Make sure to review its changelog in the case of an upgrade.
-
The class
::cloudera::repo
will be renamed to::cloudera::cdh::repo
and the Impala repository will be split out into::cloudera::impala::repo
before the 1.0.0 release.
This:
class { '::cloudera::repo':
cdh_version => '4.1',
cm_version => '4.1',
}
would become this:
class { '::cloudera::cdh::repo':
version => '4.1',
}
class { '::cloudera::impala::repo':
version => '4.1',
}
- The class parameters and variables
yumserver
andyumpath
have been renamed toreposerver
andrepopath
respectively for the 2.0.0 release. This makes the name more generic as it applies to APT and Zypprepo as well as YUM package repositories.
This:
class { 'cloudera':
cm_yumserver => 'http://packageserver.localdomain',
cm_yumpath => '/gplextras/',
}
would become this:
class { 'cloudera':
cm_reposerver => 'http://packageserver.localdomain',
cm_repopath => '/gplextras/',
}
- The
use_gplextras
parameter has been renamed toinstall_lzo
for the 2.0.0 release.
This:
class { 'cloudera':
cm_server_host => 'smhost.example.com',
use_gplextras => true,
}
would become this:
class { 'cloudera':
cm_server_host => 'smhost.example.com',
install_lzo => true,
}
-
The puppetlabs/postgresql dependency will update to version 3 or newer for the 3.0.0 release. Make sure to review its changelog in the case of an upgrade.
-
The herculesteam/augeasproviders modules will replace domcleal/augeasproviders for the 3.0.0 release.
Usage
All interaction with the cloudera module can be done through the main cloudera class. This means you can simply toggle the options in ::cloudera
to have full functionality of the module.
TLS Security
Level 1: Configuring TLS Encryption only for Cloudera Manager
Level 2: Configuring TLS Authentication of Server to Agents
Level 3: Configuring TLS Authentication of Agents to Server
This module's deployment of TLS provides both level 1 and level 2 configuration (encryption and authentication of the server to the agents). Level 3 is not presently implemented. You will need to provide a TLS certificate and the signing certificate authority for the CM server. See the File resources in the below example for where the files need to be deployed.
There are some settings inside CM that can only be configured manually. See the Level 1 instructions for the details of what to change in the WebUI and use the below values:
Setting Value
Use TLS Encryption for Agents (check)
Path to TLS Keystore File /etc/cloudera-scm-server/keystore
Keystore Password The value of server_keypw in Class['::cloudera::cm5::server'].
Use TLS Encryption for (check)
Admin Console
The node that will be the CM agent may use this declaration:
class { '::cloudera':
server_host => 'smhost.localdomain',
use_tls => true,
install_jce => true,
}
file { '/etc/pki/tls/certs/cloudera_manager.crt': }
The node that will be the CM agent+server may use this declaration:
class { '::cloudera':
server_host => 'smhost.localdomain',
install_cmserver => true,
use_tls => true,
install_jce => true,
server_keypw => 'myPassWord',
}
file { '/etc/pki/tls/certs/cloudera_manager.crt': }
file { '/etc/pki/tls/certs/cloudera_manager-ca.crt': }
file { "/etc/pki/tls/certs/${::fqdn}-cloudera_manager.crt": }
file { "/etc/pki/tls/private/${::fqdn}-cloudera_manager.key": }
External Database
If you decide not to use the embedded database, the Cloudera Manager server database configuration can be completed by configuring this module to call the scm_prepare_database.sh
script. The external database must be configured and ready for connection with the supplied credentials via some method outside of this module.
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
install_cmserver => true,
db_type => 'postgresql',
db_host => 'dbhost.localdomain',
db_port => '5432',
db_user => 'root',
db_pass => 'SeCrEt',
}
Parcels
Parcel is an alternative binary distribution format supported by Cloudera Manager 4.5+ that simplifies distribution of CDH and other Cloudera products. By default, this module assumes software deployment of CDH via parcel. To allow Cloudera Manager to install CDH via RPMs (or DEBs) instead of parcels, just set use_parcels => false
.
Nodes that will be cluster members will use this declaration:
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
use_parcels => false,
}
For more advanced use cases, nodes that will be gateways may use this declaration to install extra parts of CDH:
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
use_parcels => false,
}
class { '::cloudera::cdh5::mahout': }
class { '::cloudera::cdh5::kite': }
# Install Oozie WebUI support (optional):
class { '::cloudera::cdh5::oozie::ext': }
# Install MySQL support (optional):
class { '::cloudera::cdh5::hue::mysql': }
class { '::cloudera::cdh5::oozie::mysql': }
For more advanced use cases, the node that will be just the CM server may use this declaration: (This will skip installation of the CDH software as it is not required.)
class { '::cloudera::cm5::repo': } ->
class { '::cloudera::java5': } ->
class { '::cloudera::java5::jce': } ->
class { '::cloudera::cm5': } ->
class { '::cloudera::cm5::server': }
LZO Compression
Hadoop-specific LZO compression libraries are available in the Cloudera GPL Extras repository. To deploy the Hadoop-specific and also the native libraries on a non-parcel system just add install_lzo => true
to the class declaration. Additional configuration in Cloudera Manager will be required to activate the functionality (ignore the mention of parcels in the link to the documentation).
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
use_parcels => false,
install_lzo => true,
}
To deploy the native LZO compression libraries on a parcel system just add install_lzo => true
to the class declaration. Additional configuration in Cloudera Manager will be required to activate the functionality.
class { '::cloudera':
cm_server_host => 'smhost.localdomain',
use_parcels => true,
install_lzo => true,
}
Reference
Classes
Public Classes
cloudera
: Installs and configures Cloudera Manager. Includes most other classes.
Private Classes
cloudera::java5
: Installs the Oracle Java Development Kit (JDK) from the Cloudera Manager repository.cloudera::java5::jce
: Installs the Oracle Java Cryptography Extension (JCE) unlimited strength jurisdiction policy files.cloudera::cm5
cloudera::cm5::repo
cloudera::cm5::server
cloudera::cdh5
cloudera::cdh5::repo
cloudera::gplextras5
cloudera::gplextras5::repo
cloudera::java
: Installs the Oracle Java Development Kit (JDK) from the Cloudera Manager repository.cloudera::java::jce
: Installs the Oracle Java Cryptography Extension (JCE) unlimited strength jurisdiction policy files.cloudera::cm
cloudera::cm::repo
cloudera::cm::server
cloudera::cdh
cloudera::cdh::repo
cloudera::gplextras
cloudera::gplextras::repo
cloudera::impala
cloudera::impala::repo
cloudera::search
cloudera::search::repo
cloudera::lzo
Class: cloudera
Parameters
ensure
Ensure if present or absent. Default: present
autoupgrade
Upgrade package automatically, if there is a newer version. Default: false
service_ensure
Ensure if service is running or stopped. Default: running
service_enable
Start service at boot. Default: true
cdh_reposerver
URI of the YUM server. Default: http://archive.cloudera.com
cdh_repopath
The path to add to the $cdh_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
cdh_version
The version of Cloudera's Distribution, including Apache Hadoop to install. Default: 5
cm_reposerver
URI of the YUM server. Default: http://archive.cloudera.com
cm_repopath
The path to add to the $cm_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
cm_version
The version of Cloudera Manager to install. Default: 5
cm5_repopath
The path to add to the $cm_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
ci_reposerver
URI of the YUM server. Default: http://archive.cloudera.com
ci_repopath
The path to add to the $ci_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
ci_version
The version of Cloudera Impala to install. Default: 1
cs_reposerver
URI of the YUM server. Default: http://archive.cloudera.com
cs_repopath
The path to add to the $cs_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
cs_version
The version of Cloudera Search to install. Default: 1
cg_reposerver
URI of the YUM server. Default: http://archive.cloudera.com
cg_repopath
The path to add to the $cg_reposerver URI. Only set this if your platform is not supported or you know what you are doing. Default: auto-set, platform specific
cg_version
The version of Cloudera Search to install. Default: 5
cm_server_host
Hostname of the Cloudera Manager server. Default: localhost
cm_server_port
Port to which the Cloudera Manager server is listening. Default: 7182
use_tls
Whether to enable TLS on the Cloudera Manager server and agent. Default: false
verify_cert_file
The file holding the public key of the Cloudera Manager server as well as the chain of signing certificate authorities. PEM format. Default: /etc/pki/tls/certs/cloudera_manager.crt or /etc/ssl/certs/cloudera_manager.crt
use_parcels
Whether to install CDH software via parcels or packages. Default: true
install_lzo
Whether to install the native LZO compression library packages. If use_parcels is false, then also install the Hadoop-specific LZO compression library packages. You must configure and deploy the GPLextras parcel repository if use_parcels is true. Default: false
install_java
Whether to install the Cloudera supplied Oracle Java Development Kit. If this is set to false, then an Oracle JDK will have to be installed prior to applying this module. Default: true
install_jce
Whether to install the Oracle Java Cryptography Extension unlimited strength jurisdiction policy files. This requires manual download of the zip file. See files/README_JCE.md for download instructions. Default: false
install_cmserver
Whether to install the Cloudera Manager Server. This should only be set to true on one host in your environment. Default: false
database_name
Name of the database to use for Cloudera Manager. Default: scm
username
Name of the user to use to connect to database_name. Default: scm
password
Password to use to connect to database_name. Default: scm
db_host
Host to connect to for database_name. Default: localhost
db_port
Port on db_host to connect to for database_name. Default: 3306
db_user
Administrative database user on db_host. Default: root
db_pass
Administrative database user db_user password. Default:
db_type
Which type of database to use for Cloudera Manager. Valid options are embedded, mysql, oracle, or postgresql. Default: embedded
server_ca_file
The file holding the PEM public key of the Cloudera Manager server certificate authority. Default: /etc/pki/tls/certs/cloudera_manager-ca.crt or /etc/ssl/certs/cloudera_manager-ca.crt
server_cert_file
The file holding the PEM public key of the Cloudera Manager server. Default: /etc/pki/tls/certs/${::fqdn}-cloudera_manager.crt or /etc/ssl/certs/${::fqdn}-cloudera_manager.crt
server_key_file
The file holding the PEM private key of the Cloudera Manager server. Default: /etc/pki/tls/private/${::fqdn}-cloudera_manager.key or /etc/ssl/private/${::fqdn}-cloudera_manager.key
server_chain_file
The file holding the PEM public key(s) of the Cloudera Manager server intermediary certificate authority. Default: none
server_keypw
The password used to protect the keystore. Default: none
proxy
The URL to the proxy server for the YUM repositories. Default: absent
proxy_username
The username for the YUM proxy. Default: absent
proxy_password
The password for the YUM proxy. Default: absent
parcel_dir
The directory where parcels are downloaded and distributed. Default: /opt/cloudera/parcels
Limitations
OS Support:
Cloudera official supported operating systems for CM4 and supported operating systems for CM5.
- RedHat family - tested on CentOS 5.9, CentOS 6.4
- SuSE family - tested on SLES 11SP3
- Debian family - tested on Debian 6.0.7, Debian 7.0, Ubuntu 10.04.4 LTS, and Ubuntu 12.04.2 LTS
Software Support:
- Cloudera Manager - tested with 4.1.2, 4.8.0, and 5.0.0beta2
- CDH - tested with 4.1.2 and 4.5.0, 5.0.0beta2
- Cloudera Impala - tested with 1.0 and 1.2.3
- Cloudera Search - tested with 1.1.0
- Cloudera GPL Extras - tested with 4.3.0 and 5.0.0
Notes:
- Supports Top Scope variables (i.e. via Dashboard) and Parameterized Classes.
- Based on the Cloudera Manager 5.0.0 Beta 2 Installation Guide
- TLS certificates must be in PEM format and are not deployed by this module.
- When using parcels, the CDH software is not deployed by Puppet. Puppet will only install the Cloudera Manager server/agent. You must then configure Cloudera Manager to deploy the parcels.
- When installing packages and not parcels on SLES, SP2 is required as the hadoop-2.0.0+1518-1.cdh4.5.0.p0.24.sles11.x86_64 package requires netcat-openbsd which is not available on SLES 11SP1.
- Osfamily RedHat 5 requires the EPEL YUM repository when installing LZO support.
- This module does not support upgrading from CDH4 to CDH5 packages, including Impala, Search, and GPL Extras.
Issues:
- Need external module support for the Oracle Instant Client JDBC.
- When using an external PostgreSQL server that is on the same host as the CM server, PostgreSQL must be configured to accept connections with md5 password authentication.
- Osfamily RedHat 5 requires Python 2.6 from the EPEL YUM repository when installing the Hue service.
TODO:
See TODO.md for more items.
Development
Please see CONTRIBUTING.md for information on how to contribute.
Copyright (C) 2013 Mike Arnold mike@razorsedge.org
Licensed under the Apache License, Version 2.0.
2017-07-23 Michael Arnold github@razorsedge.org - 3.1.0
Michael Arnold github@razorsedge.org (30):
- Fix misspelled comment in sysctl.conf.
- Get code ready for Puppet 4 via modulesync.
- Fix lint: variable assigned to the empty string.
- Update Geppetto .project.
- Update Puppet 4 gem and support puppet_blacksmith with modulesync.
- Update Geppetto .project.
- Pin puppetlabs/apt fixture to version 1.8.0.
- Pin puppetlabs/concat fixture to version 1.2.1.
- Fix rspec tests to pass on Puppet 4.
- Missed some of the rspec tests to pass on Puppet 4.
- Fix: Puppet 4: expected that the catalogue would contain Class[epel].
- Fix: Puppet 4: Illegal Resource Type expression.
- Unit test against Puppet 4 via modulesync.
- Now supporting Puppet 4.
- Keep Puppet 2.7 support.
- Pin rake below version 11 to keep Ruby 1.8 support.
- The "pe" requirement is no longer supported by the Forge.
- Add .vendor to .gitignore.
- Pin gems to specific Ruby versions with modulesync.
- Fix Markdown rendering of headers.
- Rename DEVELOP.md to CONTRIBUTING.md.
- Update instructions in CONTRIBUTING.md.
- Fix lint: arrow should be on the right operand's line.
- Use Ruby 2.3.1 and remove puppet-lint-variable_contains_upcase with modulesync.
- Constrain metadata-json-lint on Ruby 1.x with modulesync.
- Remove Ruby 2.3.1 testing and add Puppet 5 testing with modulesync.
- No longer accept failures in Puppet 4 testing with modulesync.
- Fix formatting in README.markdown.
- Support STRICT_VARIABLES for Puppet 4.
- Update versions for 3.1.0 release.
2015-03-15 Michael Arnold github@razorsedge.org - 3.0.0
Michael Arnold github@razorsedge.org (12):
- Add link to supported operating systems for CM4.
- Update rspec-puppet ~> 2.0 and metadata-json-lint >= 0.0.4 with modulesync.
- expect { should }.to raise_error(...) replaced with should raise_error(...)
- Fix puppetlint rake task with modulesync.
- Update puppetlabs/postgresql dep to >=3.0.0 <5.0.0
- Switch to herculesteam/augeasproviders.
- Update module dependency version requirements.
- Remove undesirable tags from metadata.json.
- Update README.markdown.
- Add Ubuntu 14.04 to supported operating systems.
- Stick with rspec 2 for unit tests.
- Update versions for 3.0.0 release.
2015-01-19 Michael Arnold github@razorsedge.org - 2.2.1
Michael Arnold github@razorsedge.org (7):
-
Add metadata-json-lint support to Gemfile and Rakefile.
-
Fix license and unbounded ranges in metadata.json.
-
Fix puppet-lint errors.
-
Manage common files with modulesync.
-
Manage .puppet-lint.rc with modulesync.
-
Disable caching of fixtures.
-
Update versions for 2.2.1 release.
Djuri Baars dsbaars@gmail.com (2):
-
Trusty extra step fix
-
Added tests for extra trusty step
2014-12-07 Michael Arnold github@razorsedge.org - 2.2.0
Michael Arnold github@razorsedge.org (7):
-
Disable transparent hugepages on RedHat.
-
Improve Exec['disable_transparent_hugepage_defrag'].
-
Use shell provider for hugepages exec.
-
Disable kernel transparent hugepage compaction everywhere.
-
Comment out gems we do not use to keep Travis fast.
-
Remove jre/java_sdk Java alternatives links.
-
Update versions for 2.2.0 release.
root root@wn4.hadoop.com (7):
-
added parcel_dir param
-
upated comments for class arguments
-
updated spec
-
updated spec
-
adding #
-
fixing typo
-
changing the parameter name
syam syam@wn4.hadoop.com (2):
-
changes for configuring custom parcel directory
-
reduced the font size
2014-10-03 Michael Arnold github@razorsedge.org - 2.1.1
Michael Arnold github@razorsedge.org (5):
- Dynamically generate /usr/java/default symlink.
- Change the order of the tags in metadata.json.
- Lint: Fix => alignment.
- Update to newer Gemfile, Rakefile, and spec_helper.
- Update versions for 2.1.1 release.
2014-09-20 Michael Arnold github@razorsedge.org - 2.1.0
Michael Arnold github@razorsedge.org (9):
- Convert fixtures repositories to use https.
- Expand Puppet versions tested in Travis-CI.
- Allow tracking of metadata.json.
- Switch to using metadata.json vs Modulefile.
- Test against our augeasproviders dependency.
- Expand Puppet versions tested in Travis-CI.
- Fix CDH/gplextras mismatch.
- Fix supported PE versions in metadata.json.
- Update versions for 2.1.0 release.
2014-04-14 Michael Arnold github@razorsedge.org - 2.0.2
Michael Arnold github@razorsedge.org (5):
- Update Java symlink to jdk1.7.0_45-cloudera.
- Add a Requirements section to the README.
- Fix links in README to scroll to correct locations.
- Update /etc/profile.d/java.sh for new JDK.
- Update versions for 2.0.2 release.
2014-04-02 Michael Arnold github@razorsedge.org - 2.0.1
Michael Arnold github@razorsedge.org (3):
- Fix typos and image link in README.markdown.
- Really fix image link in README.markdown.
- Update versions for 2.0.1 release.
2014-04-01 Michael Arnold github@razorsedge.org - 2.0.0
Michael Arnold github@razorsedge.org (58):
- Support Cloudera Manager 5 and Java 7.
- Create new cdh5 and gplextras5 subclasses.
- Do not start CM DB service before package is installed.
- Install CDH5 by default when not using parcels.
- Include impala and search in cdh5 subclass.
- Add support for JCE 7 files.
- Add rspec tests for CM5 and Java 7.
- Add rspec tests for gplextras5.
- Add rspec tests for CDH5.
- Update rspec tests for main class.
- Add Search support to cdh5 subclass.
- Fix errors found during rspec testing.
- Fix package tags and collections.
- Do not install docs (hbase-solr-doc).
- Use new hcatalog package names.
- Add more classes to cover new additions in CDH5.
- Install pig-udf-datafu as part of cdh5::pig.
- Update the list of CDH5 packages to install.
- Update all links in the README to point to C5.
- Update TODO.md.
- Added Class['cloudera::cdh5::spark'].
- Update README.md.
- Added $install_cmserver parameter to Class['cloudera'].
- Update Puppet tests to work with $install_cmserver.
- Fix README.md to use C5 classes.
- Set kernel vm.swappiness=0 during install.
- Update README.md about kernel vm.swappiness.
- Do not install /usr/java/default on Debian osfamily.
- Fix Puppetdoc defaults.
- Add compatibility information to metadata.json.
- Removed deprecated Class['cloudera::repo'].
- Renamed yumserver and yumpath parameters to repo*.
- Update TODO.md.
- Support /etc/ssl in addition to /etc/pki/tls.
- Update README.md.
- Remove Modulefile duplication from metadata.json.
- Renamed metadata.json -> .metadata.json
- Rename parameter use_gplextras to install_lzo.
- Add rspec tests for Class['cloudera::gplextras'].
- Install native LZO libraries to support Hadoop LZO.
- Add deprecation notice for use_gplextras.
- First draft of README.markdown.
- Second pass at README.markdown updates.
- Removed all template notes from README.markdown.
- Added Cloudera Certified logo to README.markdown.
- Third pass at README.markdown updates.
- Renamed yumserver and yumpath parameters to repo*.
- Added deprecation warning for yumserver and yumpath.
- Include additional defaults for TLS parameters.
- Rearrange Usage section of the README.markdown.
- More polishing of README.markdown.
- Rename parameter use_gplextras to install_lzo.
- Add deprecation notice for use_gplextras.
- Added Upgrading to TOC.
- Add local logo_Cloudera_Certified.jpg to README.
- Removed README.md.
- Add metadata.json back to .gitignore.
- Update versions for 2.0.0 release.
2014-03-02 Michael Arnold github@razorsedge.org - 1.0.1
Michael Arnold github@razorsedge.org (4):
- Fix rspec errors from missing lsbdistid fact.
- Add missing quotes around class name.
- Be more stringent with the module dependencies.
- Update versions for 1.0.1 release.
2014-02-19 Michael Arnold github@razorsedge.org - 1.0.0
Michael Arnold github@razorsedge.org (26):
- Initial Suse zyprepo support.
- Support alternatives on Suse.
- Update rpsec tests for SLES support.
- Update README.md and TODO.md for SLES support.
- Remove explicit support for zypper package provider.
- Initial Debian and Ubuntu APT support.
- Fix Java deployment on Debian and Ubuntu.
- Use path to find the service command.
- Add missing aptkey suport on Ubuntu.
- Disable services only on supported OSs.
- Remove the hard-coded Class order.
- Update README.md to indicate Debian and Ubuntu support.
- Revamp Java alternatives.
- Allow for use of external Java module.
- Make sure JDK is install before other stuff.
- Improve JDK installation ordering.
- Drop prefix on yumserver-related class parameters.
- Clean out commented code.
- Collapse class anchors.
- Simplify the $use_parcels conditional.
- Do not start CM agent until all software is present.
- Require Class['epel'] on EL5 for LZO/GPL Extras.
- Update documentation.
- Call apt::source with $architecture where appropriate.
- Require dependency puppetlabs/apt 1.4.1 or newer.
- Update versions for 1.0.0 release.
2014-02-02 Michael Arnold github@razorsedge.org - 0.9.2
Michael Arnold github@razorsedge.org (4):
- Fix puppetlabs-mysql name error in Modulefile.
- Disable Service['solr-server'].
- Update TODO.md.
- Update versions for 0.9.2 release.
2014-02-02 Michael Arnold github@razorsedge.org - 0.9.1
Michael Arnold github@razorsedge.org (2):
- Fix metadata dependency invalid version.
- Update versions for 0.9.1 release.
2014-02-02 Michael Arnold github@razorsedge.org - 0.9.0
Michael Arnold github@razorsedge.org (33):
- Deal with sites that purge /etc/yum.repos.d/.
- Configure correct permissions on the keystore file.
- Fix lint errors in TLS tests.
- Fix version dependencies on SQL modules.
- Update Geppetto .project to version 4.
- Use new rspec-puppet "should compile".
- Change all module name references to $module_name.
- Install $majdistrelease pattern in params.pp.
- Update Travis-CI test matrix.
- Update documentation.
- Set tags on packages for fancy dependency chaining.
- Add some more tests (similar to the README.md).
- Switch to deploying CDH via parcels instead of RPMs.
- Update README to cover the change in parcel support.
- Add more CM server tests.
- Update MySQL/PostgreSQL dependencies.
- Update puppetdoc to reflect new requires in cm::server.
- Revert support for puppetlabs/postgresql 3.x.
- Separate Impala install from CDH.
- Move cloudera::repo to cloudera::cdh::repo.
- Added cloudera::repo backwards compatibility shim.
- Add tests for Impala deployment.
- Update TODO.md.
- Install Cloudera Search.
- Canonicalize all include statements.
- Switch all tests to use cm_server_host => localhost.
- Install Cloudera GPL Extras (LZO).
- Integrate GPL Extras with Class['cloudera'].
- Add $use_gplextras parameter to allow choice.
- Change Class['search'] to deploy the documented packages.
- Add package support for hcatalog, sentry, and sqoop2.
- Update TODO.md.
- Update versions for 0.9.0 release.
2013-09-14 Michael Arnold github@razorsedge.org - 0.8.0
Michael Arnold github@razorsedge.org (13):
- Update ERB variables to be Ruby instance variables.
- Add support for CM agent TLS.
- Add rspec tests for listening_hostname/fqdn in CM agent.
- Add support for TLS server auth to CM agent.
- Add support for CM server TLS and java_ks.
- Fix the value of $server_ca_file to match the docs.
- Update README.md TLS section.
- Functests show that verify_cert_file needs CA chain.
- Add TLS settings to Class['cloudera'].
- Add support for installing parcels.
- Add a diectory filter for Geppetto.
- Add support for YUM proxy, username, and password.
- Update versions for 0.8.0 release.
2013-08-17 Michael Arnold github@razorsedge.org - 0.7.0
Michael Arnold github@razorsedge.org (21):
- Update the Modulefile summary.
- Remove execute bits from rspec test files.
- Add support for JCE unlimited strength policy files.
- Remove support for the beta version of Impala.
- Update the scm-config.ini template.
- Expand Puppet versions tested in Travis-CI.
- Rake validate to also check ERB for syntax errors.
- Remove git-log-to-changelog from Modulefile.
- Add before_script: back to Travis-CI config.
- Coorect test in Travis-CI before_script.
- Really correct the test in Travis-CI before_script.
- No idea how to correct the test in Travis-CI before_script.
- Stick with puppetlabs-mysql 0.9.0.
- I hate you Travis-CI before_script.
- Nope. Stick with puppetlabs-mysql 0.8.1.
- Deal with changes to puppetlabs/mysql mysql::config.
- Use Cloudera's copy of ext-2.2.zip.
- Add contribution instructions to README.md.
- Revert to using puppetlabs-mysql HEAD.
- Drop testing support for Puppet 2.6.
- Update versions for 0.7.0 release.
2013-04-10 Michael Arnold github@razorsedge.org - 0.6.3
Michael Arnold github@razorsedge.org (2):
- Add puppet-lint to Gemfile to fix Travis.
- Update versions for 0.6.3 release.
2013-04-10 Michael Arnold github@razorsedge.org - 0.6.2
Michael Arnold github@razorsedge.org (2):
- Add puppet-lint support.
- Update versions for 0.6.2 release.
2013-02-23 Michael Arnold github@razorsedge.org - 0.6.1
Michael Arnold github@razorsedge.org (5):
- Add ripienaar/concat to fix postgresql rspec error.
- Add rspec require to Exec['scm_prepare_database'].
- Drop Travis support for testing old releases.
- Remove Note in README that was fixed in 0.6.0.
- Update versions for 0.6.1 release.
2013-02-20 Michael Arnold github@razorsedge.org - 0.6.0
Michael Arnold github@razorsedge.org (5):
- Re-enable PostgreSQL support.
- Fixed rspec tests for defined types.
- Finalize puppetlabs/postgresql dependency version.
- Add CHANGELOG generation to the Modulefile.
- Update versions for 0.6.0 release.
2013-01-30 Michael Arnold github@razorsedge.org - 0.5.0
Michael Arnold github@razorsedge.org (5):
- Remove trailing comma in class parameters.
- Add Travis-CI support for create_resources.
- Make puppet-lint happy.
- Remove PostgreSQL support.
- Update versions for 0.5.0 release.
2013-01-30 Michael Arnold github@razorsedge.org - 0.3.0
Michael Arnold github@razorsedge.org (5):
- Fix configs.
- First round of rspec tests.
- Rspec tests for cloudera::cm::server.
- Fix some spacing issues.
- Added the rest of the rspec tests.
2013-01-25 Michael Arnold github@razorsedge.org - 0.1.0
Michael Arnold github@razorsedge.org (37):
- Added standard puppet module boilerplate.
- Add Class['cloudera::repo'].
- Refacter SCM server and agent manifests.
- Rename module from scm to cloudera.
- Massive parameterized class effort.
- Stupid vim tried to be helpful.
- Manage Package['cloudera-manager-daemons'].
- Lots of fixes.
- Add puppet parser validate rake task.
- Fix missing curly brace. (Yay validation).
- Drop puppetlabs/stdlib dependency to 2.3.0.
- Disable service hadoop-httpfs.
- Do not install package cloudera-manager-daemons.
- Drop Flume support.
- Rename scm_agent and scm_server classes.
- Install flume-ng as part of cloudera::cdh.
- Stupid vim tried to be helpful.
- Refacter cloudera::cm::server.
- Add functionality to the database specific section.
- Fix $module variable and add module dependencies.
- Add support for Java installation.
- Add java alternatives to set up symlinks.
- Add headers to files managed by puppet.
- Extra Oozie support.
- Linting and Puppetdoc.
- More linting.
- Improve Oozie EXT support.
- Allow CM to control the Flume service.
- Keep it simple. Just include mysql::java.
- Add repositories to fixtures.yml.
- Add some Hive classes.
- Use safe_autoupgrade.
- Prepend cm_ to variable's documentation.
- Deal with package problems for hue-plugins.
- Add support fot Hadoop HDFS FUSE.
- Update README.md.
- Fix up README.md to look better.
2011-11-17 Patrick Taylor Ramsey ptr@cloudera.com - 0.0.1
Dependencies
- nanliu/staging (1.x)
- puppetlabs/mysql (>=2.0.0 <4.0.0)
- herculesteam/augeasproviders_sysctl (2.x)
- puppetlabs/postgresql (>=3.0.0 <5.0.0)
- darin/zypprepo (1.x)
- puppetlabs/java_ks (1.x)
- stahnma/epel (1.x)
- puppetlabs/stdlib (>=2.3.0 <5.0.0)
- puppetlabs/apt (>=1.4.2 <2.0.0)
Copyright (C) 2013 Mike Arnold <mike@razorsedge.org> Copyright (c) 2011 Cloudera Inc. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.