Creating and Using a Remote Parcel Repository for Cloudera Manager

This topic describes how to create a repository and direct hosts in your Cloudera Manager deployment to use that repository. There are two options for publishing the repository: Once you have created a repository, go to Configuring the Cloudera Manager Server to Use the Parcel URL.

After completing these steps, you have established the environment required to install a previous version of Cloudera Manager or install Cloudera Manager to hosts that are not connected to the Internet. Proceed with the installation process, being sure to target the newly created repository.

Creating a Permanent Remote Repository

Installing a Web Server

The repository is typically hosted using HTTP on a host inside your network. If you already have a web server in your organization, you can move the repository directory, which will include both the RPMs and the repodata/ subdirectory, to a location hosted by the web server. An easy web server to install is the Apache HTTPD. If you are able to use an existing web server, then note the URL and skip to Downloading the Parcel and Publishing Files.

Installing Apache HTTPD

You may need to respond to some prompts to confirm you want to complete the installation.
OS Command
RHEL
[root@localhost yum.repos.d]$ yum install httpd
SLES
[root@localhost zypp]$ zypper install httpd
Ubuntu or Debian
[root@localhost apt]$ apt-get install httpd

Starting Apache HTTPD

OS Command
RHEL
[root@localhost tmp]$  service httpd start
Starting httpd:                                            [  OK  ]
SLES
[root@localhost tmp]$ service apache2 start
Starting httpd:                                            [  OK  ]
Ubuntu or Debian
[root@localhost tmp]$ service apache2 start
Starting httpd:                                            [  OK  ]

Downloading the Parcel and Publishing Files

  1. Download the parcel and manifest.json files for your OS distribution from
    • CDH 5 - Impala, Spark, and Search are included in the CDH parcel.
      • CDH - https://archive.cloudera.com/cdh5/parcels/
      • GPL Extras - https://archive.cloudera.com/gplextras5/parcels/
    • Key Trustee Server
      • Go to the Key Trustee Server download page. Select Parcels from the Package or Parcel drop-down menu, and click DOWNLOAD NOW. This downloads the Key Trustee Server parcels and manifest.json files in a .tar.gz file. Extract the files with the tar xvfz filename.tar.gz command.
    • Key Trustee KMS
      • Go to the Key Trustee KMS download page. Select Parcels from the Package or Parcel drop-down menu, and click DOWNLOAD NOW. This downloads the Key Trustee KMS parcels and manifest.json files in a .tar.gz file. Extract the files with the tar xvfz filename.tar.gz command.
    • Other services
      • Accumulo - https://archive.cloudera.com/accumulo/parcels/
      • Sqoop connectors - https://archive.cloudera.com/sqoop-connectors/parcels/
  2. Move the .parcel and manifest.json files to the web server directory, and modify file permissions. For example, you might use the following commands:
    [root@localhost tmp]$ mkdir /var/www/html/cdh4.6
    [root@localhost tmp]$ mv CDH-4.6.0-1.cdh4.6.0.p0.26-lucid.parcel /var/www/html/cdh4.6
    [root@localhost tmp]$ mv manifest.json /var/www/html/cdh4.6
    [root@localhost tmp]$ chmod -R ugo+rX /var/www/html/cdh4.6
    After moving the files and changing permissions, visit http://hostname:80/cdh4.6/ to verify that you can access the parcel. Apache may have been configured to not show indexes, which is also acceptable.

Creating a Temporary Remote Repository

You can quickly create a temporary local repository to deploy a parcel once. It is convenient to perform this on the same host that runs Cloudera Manager, or a gateway role. In this example,python SimpleHTTPServer is used from a directory of your choosing.

  1. Download the patched .parcel and manifest.json files as provided in a secure link from Cloudera Support.
  2. Copy the .parcel and manifest.json files to a location of your choosing on your server. This is the directory from which the python SimpleHTTPServer will serve the files. For example:
    $ mkdir /tmp/parcel
    $ cp /home/user/Downloads/patchparcel/CDH-4.6.0.p234.parcel /tmp/parcel/
    $ cp /home/user/Downloads/patchparcel/manifest.json /tmp/parcel/
  3. Determine a port that your system is not listening on (for example, port 8900).
  4. Change to the directory containing the .parcel and manifest.json files.
    $ cd /tmp/parcel
  5. Start a python SimpleHTTPServer to host these two files:
    $ python -m SimpleHTTPServer 8900
    Serving HTTP on 0.0.0.0 port 8900 ...
  6. Confirm you can get to this hosted parcel directory by going to http://server:8900 in your browser. You should see links for the hosted files.

Configuring the Cloudera Manager Server to Use the Parcel URL

  1. Use one of the following methods to open the parcel settings page:
    • Navigation bar
      1. Click in the top navigation bar or click Hosts and click the Parcels tab.
      2. Click the Configuration button.
    • Menu
      1. Select Administration > Settings.
      2. Select Category > Parcels .
  2. In the Remote Parcel Repository URLs list, click to open an additional row.
  3. Enter the path to the parcel. For example, http://hostname:port/cdh4.6/.
  4. Click Save Changes to commit the changes.