This is the documentation for Cloudera Manager 5.0.0.
Documentation for other versions is available at Cloudera Documentation.

Reverting a Failed Cloudera Manager Upgrade

If you have a CDH 3 cluster running under Cloudera Manager 4.x, you cannot upgrade to Cloudera Manager 5 because it does not support CDH 3. Likewise, an upgrade from Cloudera Manager 3.x to Cloudera Manager 5 is not supported. In either case, the Cloudera Manager 5 server will not start, and you must now downgrade your Cloudera Manager server, back to the version you were using prior to attempting the upgrade.

  Important: The following instructions assume that your Cloudera Manager upgrade failed as noted above, and that the upgraded server never started, so that the remaining steps of the upgrade process were not performed. The steps below are not sufficient to revert from a running Cloudera Manager 5 deployment.

Reinstall the Cloudera Manager Server Software

In this step, you "upgrade" the Cloudera Manager Server packages to the version you were running previously. You should reinstall the same version of Cloudera Manager as you were using previously, so that the version of your Cloudera Manager agents match the server.

The steps below assume that the Cloudera Manager server is already stopped (as it failed to start after the attempted upgrade).

  1. If you are using the embedded PostgreSQL database for Cloudera Manager, stop the database on the Cloudera Manager Server host:
    $ sudo service cloudera-scm-server-db fast_stop
    If you are not using the embedded database, you should skip this step.
  2. Install the old (Cloudera Manager 4) version of the Cloudera Manager Server.
      Warning: You must reinstall the same Cloudera Manager version that you were previously running, so that the Agents match the Server.

    To find the old version, you can upgrade from Cloudera's repository at http://archive.cloudera.com/cm4/.

    Alternately, you can create your own repository, as described in Understanding Custom Installation Solutions. Creating your own repository is necessary if you are upgrading a cluster that does not have access to the Internet.

    1. Find the Cloudera repo file for your distribution by starting at http://archive.cloudera.com/cm4/ and navigating to the directory that matches your operating system.

      For example, for Red Hat or CentOS 6, you would navigate to http://archive.cloudera.com/cm4/redhat/6/x86_64/cm/. Within that directory, find the repo file that contains information including the repository's base URL and GPG key.

      On CentOS 6, the contents of the cloudera-manager.repo file might appear as follows:
      [cloudera-manager]
      # Packages for Cloudera Manager, Version 4, on RedHat or CentOS 6 x86_64
      name=Cloudera Manager
      baseurl=http://archive.cloudera.com/cm4/redhat/6/x86_64/cm/4/
      gpgkey = http://archive.cloudera.com/cm4/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera 
      gpgcheck = 1
      For Ubuntu or Debian systems, the repo file can be found by navigating to the appropriate directory, for example, http://archive.cloudera.com/cm4/debian/squeeze/amd64/cm. The repo file, in this case, cloudera.list, may appear as follows:
      # Packages for Cloudera's Distribution for Hadoop, Version 4, on Debian 6.0 x86_64
      deb http://archive.cloudera.com/cm4/debian/squeeze/amd64/cm squeeze-cm4 contrib
      deb-src http://archive.cloudera.com/cm4/debian/squeeze/amd64/cm squeeze-cm4 contrib

      You must update the file if it exists. You must edit it and modify the URL to reflect the exact version of Cloudera Manager you are using (unless you want the downgrade to also upgrade to the latest version of Cloudera Manager 4). The possible versions are shown in the directory on archive.

      Setting the right URL (an example):
      OS Command
      RHEL Replace baseurl=http://archive.cloudera.com/cm4/redhat/5/x86_64/cm/4/ with baseurl=http://archive.cloudera.com/cm4/redhat/5/x86_64/cm/4.7.3/
      Ubuntu or Debian Replace deb http://archive.cloudera.com/cm4/debian/squeeze/amd64/cm squeeze-cm4 contrib with deb http://archive.cloudera.com/cm4/debian/squeeze/amd64/cm squeeze-cm4.7.3 contrib
    2. Copy the repo file to the configuration location for the package management software for your system:
      Operating System Commands
      RHEL Copy cloudera-manager.repo to /etc/yum.repos.d/.
      SLES Copy cloudera-manager.repo to /etc/zypp/repos.d/.
      Ubuntu or Debian Copy cloudera.list to /etc/apt/sources.list.d/.
    3. Run the following commands:
      Operating System Commands
      RHEL $ sudo yum downgrade 'cloudera-*'
      SLES
      $ sudo zypper clean --all
      $ sudo zypper dup -r http://archive.cloudera.com/cm4/sles/11/x86_64/cm/4/
      To download from your own repository:
      $ sudo zypper clean --all
      $ sudo zypper dup -r http://myhost.example.com/path_to_cm_repo
      Ubuntu or Debian There's no action that will downgrade to the version currently in the repository. Read DowngradeHowto, download the script described therein, run it, and then run apt-get install for the name=version pairs that it provides for Cloudera Manager.

At the end of this process you should have the following packages, corresponding to the version of Cloudera Manager you installed, on the host that will become the Cloudera Manager Server host. For example, for CentOS,

$ rpm -qa 'cloudera-manager-*'
cloudera-manager-daemons-4.7.3-1.cm473.p0.163.el6.x86_64
cloudera-manager-server-4.7.3-1.cm473.p0.163.el6.x86_64
cloudera-manager-agent-4.7.3-1.cm473.p0.163.el6.x86_64

For Ubuntu or Debian, you should have packages similar to those shown below.

~# dpkg-query -l 'cloudera-manager-*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                   Version                Description
+++-======================-======================-============================================================
ii  cloudera-manager-agent 4.7.3-1.cm473.p0.163~sq The Cloudera Manager Agent
ii  cloudera-manager-daemo 4.7.3-1.cm473.p0.163~sq Provides daemons for monitoring Hadoop and related tools.
ii  cloudera-manager-serve 4.7.3-1.cm473.p0.163~sq The Cloudera Manager Server

You may also see an entry for the cloudera-manager-server-db if you are using the embedded database, and additional packages for plug-ins, depending on what was previously installed on the Server host. If the commands to update the server complete without errors, you can assume the upgrade has completed as desired. For additional assurance, you will have the option to check that the server versions have been updated after you start the server.

Start the Server

On the Cloudera Manager Server host (the system on which you installed the cloudera-manager-server package) do the following:

If you are using the embedded PostgreSQL database for Cloudera Manager:

$ sudo service cloudera-scm-server-db start
  Note: The sudo service cloudera-scm-server-db start command is not necessary if you are not using the embedded PostgreSQL database.
$ sudo service cloudera-scm-server start

You should see the following:

Starting cloudera-scm-server:                              [  OK  ]
  Note: If you have problems starting the server, such as database permissions problems, you can use the server's log /var/log/cloudera-scm-server/cloudera-scm-server.log to troubleshoot the problem.